Jump to content
Sign in to follow this  
Dwarden

Custom Memory Allocator for engine since b85869

Recommended Posts

I guess I just missed the fact that it was a link. :D

So I wonder which of these memory allocators was #3 - the "winner" of the malloc poll.

i think the answer is quite clear (see quote of SUMA's post and the default memalloc) :D:cool:

tho often these answers have short living temporary frame :)

Share this post


Link to post
Share on other sites

tested it again , with command -malloc=tbb4malloc_bi and without.

brings me on same spot in multiplayer about 15-20 fps more.

really like that option.

and just expermient more, i love to check new things. keep carry on like this.

the better 1.60 is, the better will be arma3 ;)

thx for making it better and better !

Share this post


Link to post
Share on other sites
tested it again , with command -malloc=tbb4malloc_bi and without.

brings me on same spot in multiplayer about 15-20 fps more.

really like that option.

and just expermient more, i love to check new things. keep carry on like this.

the better 1.60 is, the better will be arma3 ;)

thx for making it better and better !

Confirmed, performance is maximised with command '-malloc=tbb4malloc_bi' :bounce3:

Share this post


Link to post
Share on other sites

Tried to test it today. It seems the command "-malloc=..." doesn't work. Excerpt from my RPT:

 

=====================================================================
== C:\Games\ArmA2\Expansion\beta\arma2oa.exe
== "C:\Games\ArmA2\Expansion\beta\arma2oa.exe" -mod=Expansion\beta;Expansion\beta\Expansion;@CBA;@CBA_dependent;@Islands;@Units;@Weapons;@Tweaks -exThreads=7 -nosplash [b][color=blue]-malloc=tbb4malloc_bi[/color][/b]
=====================================================================
Exe timestamp: 2011/10/30 09:03:46
Current time:  2011/10/30 14:26:17
Version 1.59.85876
[color=blue][b]Allocator: C:\Games\ArmA2\Expansion\beta\dll\tbb3malloc_bi.dll[/b][/color]
Item str_disp_server_control listed twice
[149,22.569,0.047,"XEH: PostInit Started"]
[149,22.634,0.047,"CBA_VERSIONING: cba=0.8.2.169, "]
[149,22.666,0.047,"XEH: PostInit Finished. State: _isClient=true, _isJip=false, _isDedClient=false, _isServer=true, _isDedServer=false, _playerCheckDone=true, _sp=true, _startInitDone=true, _postInitDone=true, _mpRespawn=false, _machineType=1, _sessionId=1"]
Global "scripts" folder no longer supported, 'initJIPcompatible.sqf' ignored

Am I doing something wrong here?

"tbb4malloc_bi.dll" get's loaded though if you delete or rename "tbb3malloc_bi.dll".

Share this post


Link to post
Share on other sites
Confirmed, performance is maximised with command '-malloc=tbb4malloc_bi' :bounce3:

Absolutely!

Wow!

Can confirm.... much smoother.... :D

So "tbb3malloc" will be deleted from my DLL Folder...

Share this post


Link to post
Share on other sites

Am I doing something wrong here?

"tbb4malloc_bi.dll" get's loaded though if you delete or rename "tbb3malloc_bi.dll".

You right the commandline param don't work (tested myself)

so i erased the .dll i don't need to keep just the TBB v4 one

Share this post


Link to post
Share on other sites

WHOA!

Using -malloc=tbb4malloc_bi for beta 85876, after renaming the tbb3 dll, I'm getting FPS in Chernarus like I do in Takistan (using Freedom Fighters scenario within CO). Never seen such performance in Chernarus. I'm getting high 40s and low 50s whereas I usually get low-mid 20's with my vid settings (see signature).

Should we do serious testing with tbb4 to check for stability?

Share this post


Link to post
Share on other sites

Thank you for the info, and for the VERY COOL and promising mem allocator implementation!

I'm also getting large performance increase in OA, trying One Shot One Kill scenario.

In general, do you recommend vsync on or off for CO and ToH? Besides tearing, which I haven't seen yet with vsync off, what are the disadvantages of having vsync off? Does having vsync off when your normal FPS is under your screen refresh rate make any difference in performance?

Share this post


Link to post
Share on other sites

well i myself use vsync on with render frame ahead set to 1, in arma2oa.cfg: GPU_MaxFramesAhead=1;

Share this post


Link to post
Share on other sites
well i myself use vsync on with render frame ahead set to 1, in arma2oa.cfg: GPU_MaxFramesAhead=1;
This is for ATI gpu? And yes always Vsync on,a tearing screen terrible.

---------- Post added at 11:19 AM ---------- Previous post was at 11:07 AM ----------

... Does having vsync off when your normal FPS is under your screen refresh rate make any difference in performance?
well you will always get better FPS with Vsync off. Most games (DX) use a "dbl buffer", and Vsync will cut your FPS in half if you dont reach your RefreshRate (60-refresh, FPS is 59, then you will get 30FPS~) You can fix this with a triple buffer(60 refresh,FPS is 59, then you will get 58FPS~) and A2OA already has a custom tribuffer built in. More Buffers can and do make lag input. So using maxframes and mouse smoothing to fix that. This is off topic, but the mem_DLLs are using the Buffers~.

Share this post


Link to post
Share on other sites

So far my testing showed the following with Chernarus built-in Benchmark 01.

Mods used: Whole ACE-Package + CBA

My command-line: "F:\Games\ArmA2\Expansion\beta\arma2oa.exe" -nosplash -nofilepatching -skipintro -window -malloc=tbb4malloc_bi "-mod=expansion\beta;expansion\beta\expansion;@CBA;@ACE;@ACEX;@ACEX_USNavy;@ACEX_SM;@ACEX_RU"

-------------------------------------------------------------------------------

Allocator (according to RPT) = Windows* == 32 Average FPS | 72 max. FPS (FRAPS measured)

Allocator (according to RPT) = tbb3malloc_bi == 31 Average FPS | 59 max. FPS (FRAPS measured)

Allocator (according to RPT) = tbb4malloc_bi == 34 Average FPS | 66 max. FPS (FRAPS measured)

*Windows 7 x64

Every Test was ran 3 times in a row to avoid fluctuations in measuring.

I was running the latest FRAPS Version as well while Benchmarking, to measure max FPS.

Strange is there, that with the Windows Allocator you get the highest possible "Max FPS", but its worse on average than TBB4.

Also during my recent mission-making, TBB4 feels more fluid on Chernarus... :cool:

Share this post


Link to post
Share on other sites
You right the commandline param don't work (tested myself)

so i erased the .dll i don't need to keep just the TBB v4 one

Thanks for confirmation, Dwarden, that's what I did after I found out.

WHOA!

Using -malloc=tbb4malloc_bi for beta 85876, after renaming the tbb3 dll, I'm getting FPS in Chernarus like I do in Takistan (using Freedom Fighters scenario within CO). Never seen such performance in Chernarus. I'm getting high 40s and low 50s whereas I usually get low-mid 20's with my vid settings (see signature).

Should we do serious testing with tbb4 to check for stability?

Yeah, performance on Chernarus gains the most. TBB4 seems as stable

as TBB3.

Share this post


Link to post
Share on other sites
This is for ATI gpu? And yes always Vsync on,a tearing screen terrible.

---------- Post added at 11:19 AM ---------- Previous post was at 11:07 AM ----------

well you will always get better FPS with Vsync off. Most games (DX) use a "dbl buffer", and Vsync will cut your FPS in half if you dont reach your RefreshRate (60-refresh, FPS is 59, then you will get 30FPS~) You can fix this with a triple buffer(60 refresh,FPS is 59, then you will get 58FPS~) and A2OA already has a custom tribuffer built in. More Buffers can and do make lag input. So using maxframes and mouse smoothing to fix that. This is off topic, but the mem_DLLs are using the Buffers~.

Thank you! Sorry for the off-topic stuff, but I'd been using vsync on forever, plus the triple buffering from the NVIDIA control panel. I didn't know that A2 has its own TB. Someone in these forums suggested turning off vsync. I will now go back to vsync on, but w/o the NVIDIA TB. I assume ToH (modded OA engine) also has its own version of TB?

Share this post


Link to post
Share on other sites

Benchmark Results from my Side, tested with E08 + Beta 85876, no Mods

Allocator -- 1st Run -- 2nd Run -- Comments (for Run 1 of 2)

tbb4 -------- 36 ------- 36 ------ smooth

tbb3 -------- 36 ------- 35 ------ slight Object Plopping

Windows ---- 35 ------- 35 ------ more Object Plopping

Beta 85680 -- 44 ------ 43 ------ smooth

Benchmark E08 Testrun No.2 (Shadows off)

tbb4 -------- 41 -------41 ------ see above

tbb3 -------- 41 ------ 41 ------ see above

Windows ---- 41 ------ 41 ------ see above

Beta 85680 - 41 ------ 41 ------ see above

Testing Environment :

Sys :

OS : Win7-64 Home Premium

CPU : C2Q Q9650 @ 4Ghz (FSB 445)

GPU : ASUS HD 5870 @ Stock Clocks

RAM : 4 GB Mushkin 996599 @ 890 Mhz ( FSB - RAM 1:1) @ 5-5-5-15

MB : DFI LP DK P45-T2RS

HDD : 2 x Seagate Barracuda 500GB @ RAID 0

PSU : Silverstone Strider Plus 750W

Drivers : all the latest (GPU, Chipset etc.)

Ingame Settings :

VD : 2000

Res : 1920 x 1080

others : all very high except VRAM (Default), AA (Normal), PP (low). Vsync on

Config : AToC = 0, GPU Rendered & Detected Frames = 1

Personal Conclusion :

With Beta 85876, tbb4 offers the best overall Performance. TBB3 is slightly worse, and Win Default the worsest.

But compared to Beta 85680, which gives me the same visual Performance as tbb4, FPS impact is remarkable on my Sys.

EDIT : Test Results with 85889 are equivalent to Results with 85876.

Edited by Humvee28
Post updated

Share this post


Link to post
Share on other sites
Added my results for latest 1.60 beta (85876) and the different memory allocators:

http://www.editgrid.com/user/kju/PvPscene_Benchmark_Suite (Line 93ff)

Conclusions:

FPS wise the XP32b one is far worse. The TBB3 is still somewhat better for my OS and configuration (vs TBB4).

MAN! That benchmark suite is awesome! Totally slick. Nice work. I've gotta figure out that EditGrid!

Share this post


Link to post
Share on other sites
......

Beta 85680 -- 44 ------ 43 ------ smooth

Will test that Beta ASAP.

Does anyone know what has changed/introduced after that beta "85680"?

EDIT: "85680" has so far the worst performance given. i Had only 26FPS on Average after 3 Test-runs with Benchmark01. No Settings nor nothing was changed since yesterdays testing...

Edited by mr.g-c

Share this post


Link to post
Share on other sites

Should there be any dedicated server performance improvements with TBB3 or 4? Specifically, the AI processing.

Share this post


Link to post
Share on other sites
Should there be any dedicated server performance improvements with TBB3 or 4? Specifically, the AI processing.

AI processing shall have no real change with the allocator unless memory is involved :)

---------- Post added at 20:24 ---------- Previous post was at 20:09 ----------

Humwee can You please try compare 85680 vs 85889 w/o shadows enabled?

[85823] Fixed: Shadows were not cast on on-surface objects, like helipads.

Share this post


Link to post
Share on other sites
AI processing shall have no real change with the allocator unless memory is involved :)

Sorry, my english seems to be too bad....so no positive effect on dedicated server performance? What do you mean with "unless memory is involved" ?

Thank you !

Share this post


Link to post
Share on other sites

@ Dwarden :

I have tested in the same Way mentioned above, Shadows off included.

All Results are 41 FPS. I don´t know why i´ve got more FPS with 85680 in the first Tests.

Share this post


Link to post
Share on other sites

wait, now are the results same stable also with shadows? or just w/o shadows

if it's w/o shadows it would indicate the cast fix has performance impact

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  

×