CntoDev / cnto-assets

Custom textures, models, images, etc. for ingame use
1 stars 2 forks source link

Make an analyses of resource consumption by different used mods #9

Open milivojm opened 3 years ago

milivojm commented 3 years ago

We're using many mods and usually just look at them just by looking at the size on the disk. We should take a look also on runtime footprint of the mod (RAM, background scripts, impact on other mods, Cfg) etc.

freghar commented 3 years ago

As I wrote to @milivojm already, this should be probably automated via .bat or PowerShell as repeated launch of arma3.exe with -autotest. See -autotest on https://community.bistudio.com/wiki/Arma_3:_Startup_Parameters.

This means creating a set of consistent testing missions, some of which rigorously focus on graphical performance (where AI have disableAI "FSM" and are manually scripted with setDestination or doMove/doStop/fire/etc. for maximum run-to-run consistency. Explosions happen as createVehicle of a mine at an exact position (CAN_COLLIDE) and setDamage 1 on it.

Another mission would then be more relaxed and let AI do their thing (to test LAMBS, etc.), another mission would give random loadout (like Arsenal has a RANDOM button) to all AI in the first/second mission to see if there are performance issues using some weapons/gear. Or maybe not random, but specifically only weapons/gear from each mod (configSourceModList) if that mod includes full gear (at least primaryWeapon, uniform, vest).

And so on ...

Then we could run -autotest overnight, collect numbers for 100+ arma.exe runs from RPT (possibly via a script with regexes, not human) and do math with the numbers.

milivojm commented 3 years ago

Moving to ideas repo.

milivojm commented 3 years ago

I agree with @freghar here, this needs to be automated and benchmarked so we can run it for every new mod we want to put into modset. Freghar mentioned YAAB mission (https://steamcommunity.com/sharedfiles/filedetails/?id=375092418) as a good starting point.

milivojm commented 3 years ago

This needs it's own repository.

WIP mission 1 - https://gist.github.com/milivojm/b01137c9d23f4b644d3792ad0ef1d242 WIP powershell script - https://gist.github.com/milivojm/f14101eaf6360cf13fd38c0f8c29d406