suma

Arma 2: OA: Beta Build 82282 - Memory allocator test

Which -malloc=N works best for you?   48 members have voted

  1. 1. Which -malloc=N works best for you?

    • -malloc=0
      2
    • -malloc=1
      4
    • -malloc=2
      3
    • -malloc=3
      38
    • -malloc=4
      1

Please sign in or register to vote in this poll.

98 posts in this topic

Build 82282 at http://www.arma2.com/beta-patch.php contains a feature which could help me to decide which of all the memory allocators works best.

You can choose an allocator by provide a command line -malloc=N, where N is from 0 to 4.

Please, choose the one which runs stable for you in the poll (no crashes, no Out of memory errors), and if there are multiple stable, choose the one which has the best performance for you.

---

Edit: There is a new beta in the works now (82346). This beta will change the default from -malloc=0 to -malloc=3 and it will fix crashing with -malloc=4. Other than that, the allocators are untouched, but there are some more fixes included unrelated to them.

Please, continue testing and post your feedback here.

Edited by Suma
New beta.

Share this post


Link to post
Share on other sites

Thank you, Suma. The malloc refers to RAM, not VRAM, right? Should I maintain my "default" video memory setting?

Has the PMC video flickering been fixed?

Share this post


Link to post
Share on other sites

Adding better timestap to .rpt file when crash happens could make stability tests easier. Not all of us have time to play daily so we could for example leave Arma2 run over night with some -malloc value and see in the morning by looking timestamp when crash happened and this way test what -malloc value seems to be the best for our specs.

The way .rpt files log now is not really useful since you do not know if it crashed 10 mins ago or 10 hours ago. Also stuff gets logged in .rpt file until you click OK in possible error message box. That is one useless feature IMO.

Looping function for benchmark(s) would be good too. Preferably with counter for loops and output ascii file with data in case of crashes.

Share this post


Link to post
Share on other sites

Just ran a test with -malloc=0 running a Fraps benchmark recording in the background. It resulted in the same ACCESS_VIOLATION crash as before.

Benchmark results:

Frames

1922

Time (ms)

39406

Min

8

Max

62

Avg

48.774

I presume the min FPS of 8 was due to the crash. Will now try with -malloc=1 through -malloc=4.

Specs:

Windows 7 Ultimate 32bit

Intel Core 2 Duo E8400 @ 3.00GHz

nVIDIA GeForce GTX 280 1GB

2GB DDR2 RAM @ 800MHz

Edited by Zipper5

Share this post


Link to post
Share on other sites

-malloc=2 is the only one that works for me. The others still give me a CTD and the same ACCESS_VIOLATION crash as well.

Here's my system:

i7 2.93Ghz

Win 7 64

4Gb Ram

ATI 5870 1Gb

Share this post


Link to post
Share on other sites

An update to my -malloc=2 use:

I actually just got a CTD with the access_violation error. It occurred when I tried exit a mission briefing and go back to the mission select screen. Before using =2(and when using =0,1,3,4) the CTD would occur when I'd exit a mission then go to the Editor, load up a mission and then hit preview. The crash would occur while the editor mission was loading up just before the receiving screen. I can now do this with out crash using =2 but exiting a mission briefing now causes a crash.

Share this post


Link to post
Share on other sites

Well, so far:

-malloc=0: Crash when trying to run benchmark 1 a second time.

-malloc=1: Average performance in benchmark 1 & 2.

-malloc=2: Lower than average performance in benchmark 1 & 2. Crash after a few tests.

-malloc=3: Better performance in benchmark 2, same in 1.

-malloc=4: Crash when loading game.

Will keep testing before I vote, but so far -malloc=3 is in the lead. Will upload crash dumps soon.

Edited by MadDogX

Share this post


Link to post
Share on other sites
Still getting black flashing artifacts with this beta

Yes, PMC animations still flicker in this beta.

malloc=3 seems best so far - 40/39 fps benchmark 01, 48/50 fps benchmark e08, no crash on exit. More testing to come...

malloc=1 is a very close second, though.

Edited by OMAC

Share this post


Link to post
Share on other sites

After some more testing I also got a crash with -malloc=2. One more test of -malloc=3, but so far it's looking like the winner.

Share this post


Link to post
Share on other sites

I ran with each "malloc" 3 times the "E08: Benchmark", here are the results:

-malloc=0: 50 - 54 - 55

-malloc=1: 50 - 52 - 51

-malloc=2: 48 - 52 - 52

-malloc=3: 57 - 53 - 52

-malloc=4: crash at start

And of course with no beta...

1.59: 50 - 51 - 52

I would say malloc=3 had the best performance, but malloc=0 was also ok. For further and longer testing I'll take malloc=3, if it will give me errors, I'll take malloc=0.

Tested malloc=0, malloc=1 and malloc=3 with "Benchmark 1"...

-malloc=0: 44 - crash...

-malloc=1: 45 - 45 - 47

-malloc=3: 46 - 44 - 46

malloc=1 and malloc=3 with "Benchmark 2"...

-malloc=1: 13 - 13 - 13

-malloc=3: 14 - 14 - 14

Edited by birtuma

Share this post


Link to post
Share on other sites

My test shown malloc 3 is the best follow by 0 or 1, while 2 and 4 are the worst.

0= 32 - 10 - 33

1= 32 - 10 - 34

2= 30 - 8 - 30

3= 33 - 10 -34

4= 32 - 9 - 32 (has flashes of artifact)

good thing is there were no crashes at all.

what does the number represent ?

Share this post


Link to post
Share on other sites

For me the 0, 2, 3 feeled quite the same. 2 was maybe little smoother that 3 (dosent look like that for anybody else :S). All had minor pauses time to time when units were spawned. I didnt get that so heavy in 82128.

So far the previous beta 82128 have had easily the best performance. Whatever malloc it had, thats the best. That beta crashed a lot, but else it was very smooth. Only Feruz Abad gave some stuttering when driving through it. I didnt yet vote in this, because I have yet no clear picture.

Comp: HD6870 (latest driver), Q6600 3,4GHz, 4gt memory, Vista 64bit, X-Fi Audio.

Share this post


Link to post
Share on other sites
For me the 0, 2, 3 feeled quite the same. 2 was maybe little smoother that 3 (dosent look like that for anybody else :S). All had minor pauses time to time when units were spawned. I didnt get that so heavy in 82128.

So far the previous beta 82128 have had easily the best performance. Whatever malloc it had, thats the best. That beta crashed a lot, but else it was very smooth. Only Feruz Abad gave some stuttering when driving through it. I didnt yet vote in this, because I have yet no clear picture.

Comp: HD6870 (latest driver), Q6600 3,4GHz, 4gt memory, Vista 64bit, X-Fi Audio.

I would take the malloc, which is more stable any day :p

Share this post


Link to post
Share on other sites

Benchmark 01

-malloc=0: 44

-malloc=1: 44

-malloc=2: 41

-malloc=3: 44

-malloc=4: crash at start

Benchmark 02

-malloc=0: 14

-malloc=1: 14

-malloc=2: 11

-malloc=3: 15

-malloc=4: crash at start

E08 Benchmark

-malloc=0: 50

-malloc=1: 51

-malloc=2: 43

-malloc=3: 48

-malloc=4: crash at start

I tested many times with different settings but the results above are a good indication.

-malloc=4 crashed every time it was used.

-malloc=2 was universaly bad

-malloc=3 was best but it's marginal.

Edited by PendragonUK

Share this post


Link to post
Share on other sites

-malloc=0 <- No difference, crashes after short period of time

-malloc=1 <- Lasted for longer than 0 but still crashed, didn't notice any difference in performance

-malloc=2 <- Seemed to last longer than 0 and 1 but still crashed, didn't notice performance changes

-malloc=3 <- Seemed equal to 0

-malloc=4 <- Crashes before it even gets to the main menu

All of these were tested using the same mission. However, to repro I think all you would need to do is stick a few AI patrolling Berezino, along with yourself, and just wait.

My specs, again:

Windows 7 Ultimate 32bit

Intel Core 2 Duo E8400 @ 3.00GHz

nVIDIA GeForce GTX 280 1GB

2GB DDR2 RAM @ 800MHz

Freshly defragged with Defraggler, cleaned with CCleaner, newest drivers installed. All crashes report an ACCESS_VIOLATION and point towards my graphics card drivers. I have good crash dumps for -malloc=2 and -malloc=4. These crashes do not occur in 1.59.79600.

Share this post


Link to post
Share on other sites

thanks for everyone who give feedback it really helps with improvement development...

about the memory allocators, to get some answers please read :

http://en.wikipedia.org/wiki/Dynamic_memory_allocation

http://en.wikipedia.org/wiki/Malloc

about the feedback please observe also

1. long case run + just doing random things or nothing

2. long case run + stress to maximum

@Suma:

all we missing now are commandline switches -DirectX/-OpenGL and -xAudio2/-OpenAL :D:cool:

{warning: the above line is joke, highly unlikely this wish become true}

Edited by Dwarden

Share this post


Link to post
Share on other sites

Quicktest

-malloc=3 - feels smoother than 1 and 2

-malloc=4 - instant ctd with Reinforcements message

What about making a set of benchmark missions incl. screen + file report?

Share this post


Link to post
Share on other sites

If I may ask, what algorithm corresponds to the individual numbers ?

Share this post


Link to post
Share on other sites

AI choppers are behaving badly with this beta. AI chopper with "transpoint unload" -waypoint disemparks automatically player, but when ordering team members off the waiting chopper, with 4-1 (disempark), it takes off in a second making all team members that are getting out after that, fall to death.

This happens at least with malloc=3.

Share this post


Link to post
Share on other sites

I still get random crashes occasionally using all the -malloc=n which I posted about earlier. I said 2 cut the CTDs but it didn't.

Another thing. I get it using all numbers when running ACE2.

I opened a ticket at the CIT:

http://dev-heaven.net/issues/21074

I've done a test using bench mark missions 1 and 2 and here's the results.

Ben1(ave) Ben2(ave)

0 26 10

1 26 10

2 25 9

3 26 10

4 CRASH before mainmenu

Does this average for the bench marks seem low? I see other people with much faster and many have slower machines.

Here's my specs:

i7 2.93Ghz

Win 7 64

4Gb Ram

ATI 5870 1Gb(newest driver)

Share this post


Link to post
Share on other sites
If I may ask, what algorithm corresponds to the individual numbers ?

I am intentionally not revealing this, so that we avoid any placebo effects or wishful thinking. Once we have enough feedback gathered, I will post an evaluation summary and it will contain this info as well.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.