If your application just keeps allocating more and more memory, you can just run out of it. If I'm not mistaken, independently of the memory available on the device, the OS grants you a maximum memory allocation of 32Mb, so managing the memory usage carefully is quite important.
Have you searched for memory leaks? Endless loops that keep allocating memory? Duplicate memory usage?
Hope that this may be of any help.