As the executable is compiled as 32-bit, the game cannot use more than 2GB of memory. The engine is hard-coded to not go over the limit to keep the game from running out of address space and crashing, but that means patching the executable to be Large Address Aware doesn't have any effect. The executable should be LAA by default, and the engine should be allowed to use more memory.
Description
Details
- Legacy ID
- 3998843526
- Severity
- None
- Resolution
- No Bug
- Reproducibility
- Always
- Category
- Performance
It's very easy to hit the 2GB limit if one is playing on Altis with a 12km view distance. Within a very short time while travelling through the island, the game will start brute-forcing some free memory by unloading terrain and object textures that are not directly visible to the player (eg. behind you), which will cause a high hard drive activity when these textures are to be loaded again.
Event Timeline
Yeah +1 on this, Arma3.exe 2gb is at the moment on Altis have to turn down the Draw distance due to the loading from the HDD slowing the frame rate from when turning on the spot.
I think an SSD purchase might be in order soon as well.
I'm not sure if this would have any positive impact, but if it will, I fully support it.
Graphics memory is definitely faster, but it's also very limited compared to system ram. Fetching stuff from RAM is still multiple orders of magnitude than fetching data from the hard drive, which the game does all the time on Altis since it can only fit so much in 2GB.
If I remember well LAA is a max of 3 GB, so yes I'm for that. What's the limit of GDDR?
Would it make a noticeable difference from a mid-range SSD (Samsung 830 series for instance) versus system RAM?
I've been wondering if this is the issue I've been having with A3 unloading textures from vmem; the game is hitting its LAA limit.
I had GPUs that had 896MB of vmem, so playing on normal or low textures was a must, but the game still kept unloading textures before filling up my available GPU memory.
http://i.imgur.com/1DCUPMS.png
Now, with 3072MB of vmem, the game STILL unloads textures, but it seems to happen when using about 2500MB of vmem, so I am thinking the game is using up its full 3GB of address space.
http://i.imgur.com/kzhbQOy.png
Does this sound correct? I would assume that the way this engine handles textures it cannot take full advantage of the available GPU memory.
When unloading textures, the game almost completely freezes up for 1-2 seconds regardless of if its running off a mechanical HDD, SSD or a ramdisk.
@Dave Zember - SSD will help all around system performance. Arma will load much faster unless you are running some sort of striped raid array with mechanical HDDs. There will be slightly less texture pop when loading an area for the first time. Search for frag85 on the BISforums, I have made a few posts about HDD/SSD performance for A1, 2 and 3.
I have 8GB of RAM + SSD + GTX 770 and i don't see this kind of limit but i feel it can be optimised.
Up voted to support you :)
This is in Arma since OA:
http://www.bistudio.com/english/company/developers-blog/85-breaking-the-32-bit-barrier