First, users must have enough memory on the system (both physical memory plus swap space) to create arrays with the requested sizes.
Second, the default Linux* kernel on IA-32 loads shared libraries at 1 GB, which limits the contiguous address space available to the application. If the application (code) + static data exceed 2 GB the application will suffer a load time segmentation error.
Alternative solutions are:
For more complete information about compiler optimizations, see our Optimization Notice.