In .Net framework 2 GiB is the highest memory that you can allocate for an object. This fact is independent from platform (x64 or x86 or …).
I need to have a huge list with more than 2^30 Complex Numbers (each one is 16 bytes).
Note:
As with 32-bit Windows operating systems, there is a 2GB limit on the
size of an object you can create while running a 64-bit managed
application on a 64-bit Windows operating system.
from http://msdn.microsoft.com/en-us/library/ms241064%28VS.80%29.aspx
I’d implement a wrapper class that uses multiple arrays internally.
Similar to the following:
If you use a 64 bit process this works beyond 2GB. I tried it with 5GB and apart from swapping my comp to a halt it worked.