Re: Passing sequences to functions & procedures / Memory limits in openEuphoria?
- Posted by jimcbrown (admin) Oct 07, 2013
- 1891 views
The size of the private virtual address space is 2 GB, independent of RAM size.
This varies by OS. It's 3GB in Linux/GNU for example: http://users.nccs.gov/fwang2/linux/lk_addressing.txt
It's possible to get a 4GB/4GB split and use up almost all of 4GB of ram in a single userspace program: http://lwn.net/Articles/39283/ http://stackoverflow.com/questions/6947261/4gb-4gb-kernel-vm-split (of course an Euphoria sequence couldn't use the full 4GB anyways as some space is taken up by libc et al).
In a 32 bit OS the practical limit to how large a sequence you can use is imposed by the size of virtual address space that can be allocated. The largest block that can be allocated will be substantially less than that, possible much less. The usage patterns of the sequence and RAM size will determine performance.
To exceed these limits you would need to use a 64 bit OS and 64 bit version of Euphoria.
In practice these limits are unlikely to be a problem.
Agreed in full.