Jump to content
Sign in to follow this  
vhenom

Will Arma 3 be better optimized

Recommended Posts

Yeah, the biggest one around here. But opposed to you he has tried ramdisk his my 24gb rig. It doesn't load more files into ram. It creates a new virtual drive using the amount of ram you have set it to use. You actually need to have files there (mirrored indeed) to have those work. It changes the behaviour of what the buffer mem does naturally.

Regarding my comment towards you post:

This is exactly what RAM is designed to do. Act as a buffer for files in used by an application between hdd and cpu. You have those files available to be access from the fastest available (volatile) storage on you computer - the HDD.

What you are suggesting requires a 64bit binary anyways, or you'd hit the 3/4GB LAA cap.

This is not how ram works i am affraid

If you have cut/pasted) files on ramdisk, those WON't be available next time you turn your PC on, since ram is NOT a HDD. That is why ramdisks are actually mirroring data (as in copy pasting of your HDD on boot up).

again, this is exactly what ram does. In all ram-hungry apps i own, first boot up is slower, the next one is 10x faster. Same goes for operations you do more often than not (disk cache).

Most of what you explained I had already said, but

Of course files aren't stored in RAM after you shut down, it is volatile. I don't think I said anywhere that it would be stored. I was saying that it probably keeps a key of which programs to keep in RAM, in the hard drive itself. Using that key which was stored in secondary memory, it can immediately load the programs back into the RAM right when you start up.

The base functionality of RAM isn't what I was talking about, I was saying that RAMdisk seems to allocate a block of RAM right from the startup of the computer itself. I said it would be nicer if it only allocated that block when it needed it, instead of doing it from the very beginning.

Share this post


Link to post
Share on other sites
RAMdisk seems to allocate a block of RAM right from the startup of the computer itself. I said it would be nicer if it only allocated that block when it needed it, instead of doing it from the very beginning.

Depends on the capabilities of the RAM disk software you're using.

Share this post


Link to post
Share on other sites
I said it would be nicer if it only allocated that block when it needed it, instead of doing it from the very beginning.

...by a BIS product A3:

Maybe arma 3 will implement that so you don't need to use ramdisk at all. As in upon startup, load the most used files into ram and keep it there,

How do you think one (in this case BIS) would achieve that?

Share this post


Link to post
Share on other sites

It won't take long for the files to copy into the RAM disk

At least 20 GBs (AA2 CO without mods - with my gamefolder being 40+) of them?

And doing that every time the game is launched?

Where do I get that much RAM and patience?

Share this post


Link to post
Share on other sites
At least 20 GBs (AA2 CO without mods - with my gamefolder being 40+) of them?

And doing that every time the game is launched?

Where do I get that much RAM and patience?

truth be told, you don't need all the pbo files loaded into ramdisk. vegetation, terrain etc are the main picks.

That said, the normal solution due to high I/O and streaming of data is still the SSD (and if you want more speed, get 2 of those and raid'em)

i really don't get how from "optimization" this thread ended up being a ramdiks discussion though

Share this post


Link to post
Share on other sites

As an early user of Ramdisk ... on my Macintosh LC III, I can tell the technology was great.

But, now with a SSD -I am using a dedicated Crucial M4 128Go for BI Games- I am wondering why I will have to use a Ramdisk now.

Don't clearly understand what this has to do with game optimization ...

Share this post


Link to post
Share on other sites
At least 20 GBs (AA2 CO without mods - with my gamefolder being 40+) of them?

And doing that every time the game is launched?

Where do I get that much RAM and patience?

As he wrote:

@metalcraze. There has been tons of tests on ARMA with RAMdisk to see what are the most commonly used files during play, you can even test your gameplay to find out what ones are most commonly used by yourself as well.

I found that a 4GB RAMdisk file was pretty much all I needed to do away with the stutter, although I will once again state that with the current game build and an SSD it makes RAMdisk pointless.

This will load relatively quickly and the performance benefits should outweigh the disadvantage of the wait before game launch.

i really don't get how from "optimization" this thread ended up being a ramdiks discussion though

Someone mentioned having lots of spare RAM for Arma to use, so I suggested using a RAM disk as an alternative to SSD to improve performance.

Share this post


Link to post
Share on other sites
By copying the game files into a RAM disk on boot you save the system from having to load it while you're actually playing the game, meaning less stuttering caused by the system waiting for the hard drive to respond.

You don't save anything. You'll have huge stuttering when mounting huge ramdisk or you'll have little stuttering while loading only stuff required by particular mission.

You can choose which files you want to stream from RAM disk. And if you have enough RAM it won't even matter if you copy over stuff you won't need.

Yes. But disk cache is better in deciding which files to put into memory. With ramdisk you'll just waste your memory by loading Chernarus while you'll play mission on Takistan (+ time when mounting it).

It won't take long for the files to copy into the RAM disk, and if it's streaming from there while the game is running there'll be far less stuttering because there's no need to wait for a hard drive to respond with its slow moving parts.

And that's why operating systems have disk cache.

Truth to be told. If you paid for ramdisk software in hope for better ArmA performance you wasted your money.

EDIT: Oh, if your only goal is to not load stuff while in-game, well, then it's probably good. My bad. Still you don't need ramdisk for that. You can just read required files by some .bat script which will put them in cache.

Edited by batto

Share this post


Link to post
Share on other sites
...by a BIS product A3:

How do you think one (in this case BIS) would achieve that?

If possible, implement a driver to do it, lower level programming of the intel architecture. To be a slight bit more specific without throwing in x86 architecture code (they didn't have 64 bit at the time), I believe you would perhaps move the certain bytes (depending on how big the data is, I have absolutely no clue as to whether they use bytes/words/doublewords etc) into a buffer, and then instead of calling the hex interrupt to get stuff from secondary memory every single time a subroutine is run, you would just do that upon launch of the program and then straight up use the buffers you created and stored the data in. So when you would want to use the data from memory, you would load it up from your buffer in memory into eax/ebx/ecx/edx/esi/edi or whatever temporarily, and then you would push all the registers onto the stack to run the subroutine to do stuff with them.

TBH I think SPARC architecture would be much better at doing this, because it would be even faster than RAM when you have so many registers ready for use. Intel's downfall is creating a more affordable (at the time) architecture which almost purely relies on loading and storing in memory.

I absolutely hate how Intel uses memory so much when you can just be like SPARC and have a ton of registers versus like 4 main ones. And it's like the difference of half/double the length of code. And a lot less movzx eax, byte [ebp + 8] and stuff. And a lot less calculating and keeping track of pointers so you don't get a segmentation fault anywhere. Extensions into different sized registers are the bane of my existance.

And batto, I'm pretty sure the point is you eliminate the stuttering by loading the files into RAM ahead of time before you are playing, versus when you need them actually in game so they're readily available for use.

Edited by ruhtraeel

Share this post


Link to post
Share on other sites
And batto, I'm pretty sure the point is you eliminate the stuttering by loading the files into RAM ahead of time before you are playing, versus when you need them actually in game so they're readily available for use.

Yeah and you don't need ramdisk for this. All you need is just read every file you want to put in memory. You don't even need to pay for it. If you have enough memory for whole ArmA2 you can just install cygwin a run:

find c:/arma2 -type f -exec cat {} >/dev/null \;

Or you can use some .bat, VB, powershell or whatever...

Share this post


Link to post
Share on other sites
All you need is just read every file you want to put in memory.

I think RAMdisk makes this process easier for people. I mean yes you could make a .bat file and put every single CMD instruction to transfer each thing that you need but it's not very efficient. Also I believe one of the benefits is that RAMdisk will specially allocate a chunk for you so it doesn't have any chance of being tampered with by anything else.

Share this post


Link to post
Share on other sites
I think RAMdisk makes this process easier for people. I mean yes you could make a .bat file and put every single CMD instruction to transfer each thing that you need but it's not very efficient. Also I believe one of the benefits is that RAMdisk will specially allocate a chunk for you so it doesn't have any chance of being tampered with by anything else.

You can just run that ONE find command I posted earlier (by clicking on CacheArma.sh) and re-run it everytime you finish your torrents. But if you plan downloading torrents while playing ArmA then I agree, ramdisk is better.

Share this post


Link to post
Share on other sites

Ruhtraeel nailed it. I prefer the RAM disk method because it ensures the files you want are really loaded from RAM and not flushed from the cache in the middle of the game because of some other background HDD activity. Plus there is free RAM disk software out there.

Share this post


Link to post
Share on other sites
Ruhtraeel nailed it. I prefer the RAM disk method because it ensures the files you want are really loaded from RAM and not flushed from the cache in the middle of the game because of some other background HDD activity. Plus there is free RAM disk software out there.

I'm really happy you told me about this method, because I was always hesitant to get an ssd just cause I didn't find too much use for it other than helping to load textures faster. I would much rather pay 40 bucks for another 8gb of ram and then just load the apps I am currently using versus 100+ for a faster os boot.

Share this post


Link to post
Share on other sites
truth be told, you don't need all the pbo files loaded into ramdisk. vegetation, terrain etc are the main picks.

Ah but you see - there are mods. BIS terrains are never the most played maps when it comes to clan/community servers which always have like 10-15 islands (and this is good).

So the difference will be next-to-meaningless apart from the fact that it will be really annoying to spend a lot of time loading the game.

We are talking here not about user-created RAMdisk but people suggesting the game will guess what to load. And how will it?

It will be annoying that it will be loading dozens of gigabytes of stuff every time I launch it in such case. Yes it will have to unload all that stuff each time it's shut down so when you launch it again - hello 5 minutes of loading stuff.

In-game ramdisk suggestion is meaningless since it will only hurt loading times, not improve them.

That said, the normal solution due to high I/O and streaming of data is still the SSD (and if you want more speed, get 2 of those and raid'em)

Yep.

I also don't get where that guy got the idea that MP3 uses 16 GBs of RAM. It's a game made for 7 years old hardware with 256 MBs of RAM

Edited by metalcraze

Share this post


Link to post
Share on other sites
Ah but you see - there are mods. BIS terrains are never the most played maps when it comes to clan/community servers which always have like 10-15 islands (and this is good).

So the difference will be next-to-meaningless apart from the fact that it will be really annoying to spend a lot of time loading the game.

We are talking here not about user-created RAMdisk but people suggesting the game will guess what to load. And how will it?

It will be annoying that it will be loading dozens of gigabytes of stuff every time I launch it in such case. Yes it will have to unload all that stuff each time it's shut down so when you launch it again - hello 5 minutes of loading stuff.

In-game ramdisk suggestion is meaningless since it will only hurt loading times, not improve them.

Yep.

I also don't get where that guy got the idea that MP3 uses 16 GBs of RAM. It's a game made for 7 years old hardware with 256 MBs of RAM

I think the idea is that the increased loading time is on initial launch, after that you get faster loading times for the game session. As well as improved streaming performance etc.

Share this post


Link to post
Share on other sites
I think the idea is that the increased loading time is on initial launch, after that you get faster loading times for the game session.

i would say something i never did before: metalcraze has a point here.

For what is proposed: increased loading time on game open by coping game file into a sort of ramdisk, and clear it up on exit.

1. we all know that all addons mods etc needs a game reset.

2. from a editing pov, that would take ages instead of minutes to have a preview (be it mission or addon).

3. even if the said virtual disk would be optional, the gain over a normal SSD should be minimum (i will test the diff between ramdisk solution and SSD - non-raid) as soon as will get the chance..

Share this post


Link to post
Share on other sites
i would say something i never did before: metalcraze has a point here.

For what is proposed: increased loading time on game open by coping game file into a sort of ramdisk, and clear it up on exit.

1. we all know that all addons mods etc needs a game reset.

2. from a editing pov, that would take ages instead of minutes to have a preview (be it mission or addon).

3. even if the said virtual disk would be optional, the gain over a normal SSD should be minimum (i will test the diff between ramdisk solution and SSD - non-raid) as soon as will get the chance..

Agreed, but for general ArmA use for someone without an SSD perhaps it's a viable proposition.

Share this post


Link to post
Share on other sites
Agreed, but for general ArmA use for someone without an SSD perhaps it's a viable proposition.

could be indeed, i never said it is a bad option. I just don't see it happening from BIS. I actually never seen any other software developer doing it either.

On the other hand, most having 16-32 gb of ram actually need it for some other thing than gaming. Most do afford a SSD anyways.

Share this post


Link to post
Share on other sites

Guys, the reason why people started using RAMdisk was because the .exe could only utilize 2GB RAM and had to load the rest from the mechanical HDD which at times caused stutter. For A3 this won't be a limitation (given a 64-bit application) and with the faster SSD disks out there it might not be necessary eiither.

That being said, putting your entire game into RAM is pretty much exactly opposite of optimization.

Share this post


Link to post
Share on other sites
For A3 this won't be a limitation (given a 64-bit application) and with the faster SSD disks out there it might not be necessary eiither.

A3 will NOT have a 64-bit binary. It has already been confirmed it will still be 32-bit LAA

Share this post


Link to post
Share on other sites

Wow, why did this become about RAMdisk? Lol.

All I want is for ArmA 3 to run about as good as ArmA 2 with better graphics. That means there should be some optimization, and more utilization of my hardware. When I am getting like 50% CPU usage and 30% GPU usage, and like 15-20 FPS, there is a problem.

Also, for what it's worth, I've done quite a bit of testing with RAMdisk vs. SSD, and SSD actually gave me a smoother experience overall.

Share this post


Link to post
Share on other sites

Just a question, I'm hearing 50 50 down the line, are we looking at the same low FPS as with arma 2. O and maverick quick question, would upgrading my 560 ti to 680 boost my frames or is it a waste since arma is demanding on cpu? I'm running the I5 2500 k oc 4.5, just wanting your opinion.

Share this post


Link to post
Share on other sites
Just a question, I'm hearing 50 50 down the line, are we looking at the same low FPS as with arma 2. O and maverick quick question, would upgrading my 560 ti to 680 boost my frames or is it a waste since arma is demanding on cpu? I'm running the I5 2500 k oc 4.5, just wanting your opinion.

I wouldn't say it's a waste. The 680 is quite a bit faster than a 560 Ti. I went from 570 SLI to a 680 and the performance is about the same, but when I went from 280 SLI to 570 SLI there was a pretty significant performance boost in ArmA 2.

Also, I'm not sure if you have the 1 GB or 2 GB version of the 560 Ti, but if you have the 1 GB then it would be an upgrade to get the 2 GB of the 680 as well.

Share this post


Link to post
Share on other sites
Just a question, I'm hearing 50 50 down the line, are we looking at the same low FPS as with arma 2. O and maverick quick question, would upgrading my 560 ti to 680 boost my frames or is it a waste since arma is demanding on cpu? I'm running the I5 2500 k oc 4.5, just wanting your opinion.

really, you should actually be waiting for the alpha/demo before making a buy.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×