Dr.cremaster 10 Posted January 23, 2014 (edited) I´ve made a small test mission to check out the abilities of new server binaries. mechanism: The server creates a group of 50 soldiers every 20 seconds; between the creation of every unit is a delay of 0.5 sec. mission runs on dedicated server with following specs: core i7-4770, 32 GB RAM, 2 x 250GB SSD, OS: Win 8.1, no mods result: http://youtu.be/NYc7GkDLXro key for server monitor: - OC0 --> all entities - MEM Amount of allocated physical memory - FPS (on a server this means simulation cycles per second) - FPSmin (the minimum FPS of the last 16 cycles, hist. graph only) - CPS Condition-evaluation per Second (rel. to AI response delay, VM load) - PL# Number of alive player units - AIL Number of alive server local AI units - AIR Number of alive AI units on connected machines (remote) code: if(isServer) then { _ai_classname = "I_soldier_F"; diag_log "stress test starts"; while {true} do { if(count allUnits > 300) exitWith {} _grp = createGroup resistance; for "_i" from 1 to 50 do { _pos = (getMarkerPos "mrk_center") findEmptyPosition [0,1000]; _ai_classname createUnit [_pos,_grp]; sleep 0.5; }; diag_log format["%1: created 50 units.",time]; sleep 20; }; }; So in conclusion there is no multithreading. Edited January 23, 2014 by Dr.cremaster Share this post Link to post Share on other sites
NeuroFunker 11 Posted January 23, 2014 thats a bad news then. Share this post Link to post Share on other sites
NeuroFunker 11 Posted January 24, 2014 i think this should go to AI discussion, or global descussion, devs should see this. Share this post Link to post Share on other sites
CHB68 10 Posted January 24, 2014 Oh I'm pretty sure they are aware of this since 2006. Share this post Link to post Share on other sites
papanowel 120 Posted January 24, 2014 Have you try this with a few players? Share this post Link to post Share on other sites
Tyl3r99 41 Posted January 24, 2014 i think this should go to AI discussion, or global descussion, devs should see this. copy/paste the thread link into the AI discussion on dev build category?? Share this post Link to post Share on other sites
artisanal 22 Posted January 24, 2014 Oh boy... I need a drink to forget this ache :beeeers: Share this post Link to post Share on other sites
nuxil 2 Posted January 24, 2014 oh man.. come on bis.. this is 2014 not 1999. get your act together and fix your engine. Share this post Link to post Share on other sites
Greenfist 1863 Posted January 24, 2014 Does that mean you can easily have 200 AI? Isn't that quite plenty for an average mission? And the rest of the 3 cores will be used for other processing? Or is the core usage the same in every scenario? Only one core is always used? I find it hard to believe. Share this post Link to post Share on other sites
papy.rabbit.08 0 Posted January 24, 2014 I think this should be nbr 1 priority after realising the 3rd campaign episode...! Share this post Link to post Share on other sites
nuxil 2 Posted January 24, 2014 I think this should be nbr 1 priority after realising the 3rd campaign episode...! this is way more important to fix that the getting the 3rd campain episode out the door Share this post Link to post Share on other sites
nikiforos 450 Posted January 24, 2014 If people get the campaign and the performance is bad they will not enjoy the campaign. Now if they fix performance first and then release the 3rd campaign more people will be happy and give higher rates . :868: Share this post Link to post Share on other sites
Furret 0 Posted January 24, 2014 Interesting, once core 0 reaches 100% the server starts to fall over. Makes sense. Share this post Link to post Share on other sites
Tyl3r99 41 Posted January 24, 2014 If people get the campaign and the performance is bad they will not enjoy the campaign. Now if they fix performance first and then release the 3rd campaign more people will be happy and give higher rates .:868: exactly!! that's why I made a poll about either getting performance now that sacrifices other bug fixes and content or the other way around and 80 odd % have voted performance Share this post Link to post Share on other sites
NeuroFunker 11 Posted January 24, 2014 (edited) i'm fine to wait few more months for next episode, therefor getting more optimizations. I wonder if it's possible for example first 50 or 100 AI addressed to first cpu core, next 50-100 AI addressed to second cpu core, next 50-100 ai to third cpu core, and 50-100 for the last core. And so every next core, the more cores cpu has, the more AI it can handle. So on a 4 core machine, we could be fine at least with 200-400 AI, which is not bad at all. (yeah i know, playing engine expert, is not hard) :P Edited January 24, 2014 by NeuroFunker Share this post Link to post Share on other sites
mamasan8 11 Posted January 24, 2014 Does that mean you can easily have 200 AI? Isn't that quite plenty for an average mission? And the rest of the 3 cores will be used for other processing?Or is the core usage the same in every scenario? Only one core is always used? I find it hard to believe. It doesn't seem like the other 3 cores are used for anything much, maybe network traffic. At 233 AIs the server just buckles under. So what is the server calculating? Collision detection and physics (shooting AI) AI pathing Network traffic (if any in this case) Probably other stuff too No matter the load, all the computations are done on 1 core. He has a quadcore with, I assume, hyperthreading enabled so he has 8 logical cores. Server running single core only...when was that in anyway recommended last? 70s? Share this post Link to post Share on other sites
Greenfist 1863 Posted January 24, 2014 No matter the load, all the computations are done on 1 core. Yeah, I was just wondering if this is always the case or only in this test mission? Just spawning generic AI units around the map isn't exactly a typical multiplayer scenario. I'm sorry if single core usage is a known and proven fact on servers, I really don't know much about them. Share this post Link to post Share on other sites
papy.rabbit.08 0 Posted January 24, 2014 Just one thing, is this only in MP? Because I don't know if it's worthy, but with a benchmark SP scenario, when I look on the Windows Task Manager, all my cores are used at the same level. Share this post Link to post Share on other sites
Dr.cremaster 10 Posted January 24, 2014 Have you try this with a few players? No I didn´t. In this mission there is only one player slot to avoid unpredictable ai calculations. Does that mean you can easily have 200 AI? Isn't that quite plenty for an average mission? And the rest of the 3 cores will be used for other processing?Or is the core usage the same in every scenario? Only one core is always used? I find it hard to believe. Negative. It means, that you can have 200 ai soldiers doing nothing else than standing still and admiring the wonderful countryside. It doesn't seem like the other 3 cores are used for anything much, maybe network traffic.At 233 AIs the server just buckles under. So what is the server calculating? Collision detection and physics (shooting AI) AI pathing Network traffic (if any in this case) Probably other stuff too There is no shooting and no movement. The ai soldiers are just standing still. Just one thing, is this only in MP? Because I don't know if it's worthy, but with a benchmark SP scenario, when I look on the Windows Task Manager, all my cores are used at the same level. The mission was running on the arma3server.exe (MP), which seems to have no multithreading ability. Right now I am testing this with headless client, which is a special kind of client (arma.exe). With this setup also the other cores are slightly utilised but the main load stays on first core. Share this post Link to post Share on other sites
nuxil 2 Posted January 24, 2014 The mission was running on the arma3server.exe (MP), which seems to have no multithreading ability. i belive this statement is inaccurate. arma both server & client has multithreading. but this doesnt help us much. you can have 10's / 100's / 1000's of threads running on one core. arma needs to get proper multicore support. it really needs to offload/spread ai calulation and other stuff across cores. not threads. the devs found this hard to do. and yes its is hard to do. its no easy task at all. but this is whats needs to be done if this engine is to survive. it's already lying on its deathbed if you ask me. cpu's nowadays are not really getting much more hertz. "high hertz is the only solution if you run most calulation on one core". cpu hertz has stagnated quit a lot the last few year, but they are increasing in number of cores. Share this post Link to post Share on other sites
Furret 0 Posted January 24, 2014 Dr.cremaster, message Dwarden and ask for the performance server binary, give that a test and compare/contrast results. Share this post Link to post Share on other sites
Matt International 10 Posted January 25, 2014 On the face of it, this does not look good. My question is, what startup parameters did you use? I cannot see any reference to this so for all we know, you could have forced single core operation. Share this post Link to post Share on other sites
CHB68 10 Posted January 25, 2014 I cannot see any reference to this so for all we know, you could have forced single core operation. Well, maybe, but why? This would make no sense. The real weak spots of the ARMA series right from the beginning in 2006 was an already outdated engine w/o multicore support. BI spend a lot of time, manpower and probably a lot of money to work around this problem, but they always fighted the symptoms and never the real cause. And we all now; a fish rots from the head down. ;) Share this post Link to post Share on other sites
Opticalsnare 12 Posted January 25, 2014 (edited) Not really surprised at all with this, its been like this for years. Nothing has changed since like a1, just they pile more eye candy onto the screen to hide the issues and hopefully distract the user from them. But in todays standards i think its starting to disintegrate and people are becoming less forgiving to a major issue now which has just been blatantly ignored. If BIS made cars, we would have a 06 car with a 5.7ltr V8 that pumped out 100hp and guzzled down about 1mpg 7 years later we would have another car by BIS although looks different style was changed, and it comes with satnav, aircon, heated seats, sunroof, electric windows, all the shit. Yet quess what under the hood have they done ANYTHING to that inefficient engine simple answer is No. Edited January 25, 2014 by Opticalsnare Share this post Link to post Share on other sites