A process, which attempts to allocate large amounts of memory either as an array or by using malloc, fails when launched by the shell. This problem has been seen while allocating 240,000,000 elements as either an array of doubles or using malloc to allocate the 1,920,000,000 bytes of space.
This can have one of two causes. Resolve it accordingly.
1. Lack of swap space
Try running the program as root on the console; if it runs, this is not the problem.
2. Stack size and data segment size are in conflict
If the stack size is set too large, this can conflict with the data segment, and the process cannot be started. Setting the stack size to the default value of 8192 resolves this problem and allows the programs to start.