Jump to content

Are there any plans to allow DCS to use multiple cores?


MobiSev

Recommended Posts

Can't change the title, but I meant to say "more than 2", not multiple.

 

Edit: Are there any plans to allow DCS to use more than 2 cores?


Edited by MobiSev

Modules owned:

 

FC3, M-2000C, Mig-21bis, F-5E, AJS-37 Viggen, F/A-18C, KA-50, Mi-8, F-14A&B, JF-17

Link to comment
Share on other sites

they already use 3 or 4, but there is nothing preventing them from using more.

 

Only two cores.

1-core for audio

1-core for everything else

 

 

the trick is finding tasks that can be offloaded without adding latency and locking.

 

it’s not easy and most sims don’t do it, either.

 

It is possible. But not to do as simultaneously for same task because the "Dining philosophers problem".

 

What they could do, is to move specific elements from the game to specific cores, so they are not swapped.

 

Player aircraft flight modeling and functions to core #1

AI aircrafts flight modeling and damage modeling to core #2

BLUFOR ground forces AI to core #3

REDFOR ground forces AI to core #4

 

If there is more cores available, split them up to them. Like example the all the missiles trajectories, flight modeling to one core. All the shells from ground units to one core.

 

Every core is dedicated for specific task, no swapping, no waiting.

 

If there is no missiles in air, that core responsible for that will just sleep.

If there is no AI flying, that core is sleep.

 

Like what does it matter to my aircraft when I am flying, how does the ground units AI think? If that AI starts to hang out or consume more processing time, I don't want it anywhere near my aircraft performance!

 

Now if you are flying in multiplayer etc, then you can start to split own aircraft functions to multiple cores. Flight modeling for one core. Electricity, all fluids etc to one core.

 

The most demanding is the player own aircraft simulation and then graphics. Split those. Don't share and swap processing.

i7-8700k, 32GB 2666Mhz DDR4, 2x 2080S SLI 8GB, Oculus Rift S.

i7-8700k, 16GB 2666Mhz DDR4, 1080Ti 11GB, 27" 4K, 65" HDR 4K.

Link to comment
Share on other sites

Are there any plans to allow DCS to use multiple cores?

 

Only two cores.

1-core for audio

1-core for everything else

 

 

ok. they may they have consolidated some of the work recently.

 

the last time i checked the thread execution times (a few patches ago), there was more than 2 threads doing all the work.

Link to comment
Share on other sites

dcs never used more than two threads. and one of those two threads are computationally inexpensive so its like one thread in the end anyway.

 

 

 

regarding paralelization, collisions, flight models and AI can all be decoupled across many many threads. especially in multiplayer, simulating all the units across a huge map on one thread is silly. single-core performance of processors will be improving only a little, its all growing with core counts and software needs to reflect that.

 

 

i hope ed will consider that in near future.

CPU: AMD Ryzen 5 1600X

GPU: AMD RX 580

Link to comment
Share on other sites

Well... 8 core is now mainstream nowadays anyway for new CPUs. My little 6 core was never cutting edge, but now it is looking rather blunt in contrast to 5 GHz all 8 core Intel CPU and 3800X and potential 3950X AMD CPUs.

 

It makes sense for software developers to invest programming resources into this. Even if some of their user base will be using older 4 core legacy computer systems.

[sIGPIC][/sIGPIC]

Link to comment
Share on other sites

ok. they may they have consolidated some of the work recently.

 

the last time i checked the thread execution times (a few patches ago), there was more than 2 threads doing all the work.

 

That's a visual phenomenon/illusion, it's due to combination of thread bouncing and slow response rate of the presentation (task manager) of what the CPU is doing. Those two threads are bouncing around multiple CPU cores (usually 2, sometimes third) at a very high rate giving the impression of "both cores doing some good work accelerating that game" but it's all a, when one core is working the other one is doing precisely nothing

 

It's tricky anyway because if the graphs were in real-time it would be so fast, too fast for human eyes to discern anyway.

 

Try using some other utility or at least set the task manager refresh rate/update speed to High

 

This is however NOT DCS fault, this thread bouncing thing is how things for all computers/software unless the OS/FW/HW can be instructed to specifically not bounce through "thread affinity" but I'm not sure how that sticks yet. So I found that this thread bouncing is called "load balancing" in various PR and hardware enthusiast reviews, I didn't go to the bottom of this yet what exactly is the benefit myself but from all the various sources we can be certain it is not performance, if it is it's some benchmark that doesn't matter in practice, it is more likely about VRM/Power stuff, or simply spreading the load off that one particular CPU core isn't as wearied down, just like SSDs spread the load evenly across cells, but if that's an issue in CPUs at all is another question.

 

And DCS is a quite a physics/math simulator, simulation cannot be easily multi-threaded, some parts of DCS that arent tied with simulation that are currently on the main thread could still be offloaded to yet another dedicated thread just like audio is, but you will probably always have one thread that takes the most beef and will bottleneck the whole simulator.


Edited by Worrazen

Modules: A-10C I/II, F/A-18C, Mig-21Bis, M-2000C, AJS-37, Spitfire LF Mk. IX, P-47, FC3, SC, CA, WW2AP, CE2. Terrains: NTTR, Normandy, Persian Gulf, Syria

 

Link to comment
Share on other sites

Are there any plans to allow DCS to use multiple cores?

 

thanks for the post.

 

maybe i misunderstood the win docs, but they indicate that thread execution time was the length of time the thread ran, regardless of which cpu core it was on.

 

if true, then threads with significant execution times, would be an indicator of how much processing that thread is contributing to the simulation (no matter the core).


Edited by etherbattx
Link to comment
Share on other sites

My 8 core machine appears to be lightly but evenly loaded. And the video card is probably doing most if not all of the simulation math. I am sure it's very complicated and not as simple as one would assume.


Edited by Zeagle

 

 

Link to comment
Share on other sites

they already use 3 or 4, but there is nothing preventing them from using more.

 

the trick is finding tasks that can be offloaded without adding latency and locking.

 

it’s not easy and most sims don’t do it, either.

 

There are major ones that could be separated. Mission management (triggers, ATC, F10 view and icons) and AI, can't think of more right now but I'm sure there's some misc stuff.

 

That would take some 20% off the main thread, IMO.

 

I doubt AI is deeply integraded into physics simulation, even if it is, for some reason, it can be spunned off, those two things shouldn't need to rely on each-other.


Edited by Worrazen

Modules: A-10C I/II, F/A-18C, Mig-21Bis, M-2000C, AJS-37, Spitfire LF Mk. IX, P-47, FC3, SC, CA, WW2AP, CE2. Terrains: NTTR, Normandy, Persian Gulf, Syria

 

Link to comment
Share on other sites

Yes, potentially DCS engine based Vulkan API that is being worked out in background (https://forums.eagle.ru/showpost.php?p=3592186&postcount=11) might add multi-core capability.
But when, it can be next month or next year.

 

Odesláno z mého Mi A1 pomocí Tapatalk


Edited by Bobik2002

Ryzen 9 5900x | 32GB DDR4 | RTX 3090 | 32GB RAM 

 

Link to comment
Share on other sites

There are major ones that could be separated. Mission management (triggers, ATC, F10 view and icons) and AI, can't think of more right now but I'm sure there's some misc stuff.

 

i get what you’re saying,but that doesn’t explain why consumer multi core cpus have been around for 10+ years and almost no (none?) sims break down the workloads like you and others have suggested.

 

there must be more to it than that

Link to comment
Share on other sites

i get what you’re saying,but that doesn’t explain why consumer multi core cpus have been around for 10+ years and almost no (none?) sims break down the workloads like you and others have suggested.

 

there must be more to it than that

 

To design and implement a good multithreaded sim engine is more expensive than a single threaded one. And most sim engines started when multi core was not a big thing, so it was not economically sound to do multithreading from the start. Sadly it's not easy to multithread the old engine - if it was ED would have done it long ago.

Windows 10 64bit, Intel i9-9900@5Ghz, 32 Gig RAM, MSI RTX 3080 TI, 2 TB SSD, 43" 2160p@1440p monitor.

Link to comment
Share on other sites

Are there any plans to allow DCS to use multiple cores?

 

it's not easy to multithread the old engine - if it was ED would have done it long ago.

 

oh, i totally agree.

 

but it’s also difficult for sims on new engines to leverage multi-cores.

 

do any of the new sims created in the last 10 years take advantage of and use multiple cores well?

Link to comment
Share on other sites

oh, i totally agree.

 

but it’s also difficult for sims on new engines to leverage multi-cores.

 

do any of the new sims created in the last 10 years take advantage of and use multiple cores well?

 

Yes, i fly with prepar3d v4 and my ryzen uses all the cores.

[sIGPIC][/sIGPIC]

 

 

Vista, Suerte y al TORO !!

_____________________________________________

Link to comment
Share on other sites

Only two cores.

1-core for audio

1-core for everything else

 

 

 

 

It is possible. But not to do as simultaneously for same task because the "Dining philosophers problem".

 

What they could do, is to move specific elements from the game to specific cores, so they are not swapped.

 

Player aircraft flight modeling and functions to core #1

AI aircrafts flight modeling and damage modeling to core #2

BLUFOR ground forces AI to core #3

REDFOR ground forces AI to core #4

 

If there is more cores available, split them up to them. Like example the all the missiles trajectories, flight modeling to one core. All the shells from ground units to one core.

 

Every core is dedicated for specific task, no swapping, no waiting.

 

If there is no missiles in air, that core responsible for that will just sleep.

If there is no AI flying, that core is sleep.

 

Like what does it matter to my aircraft when I am flying, how does the ground units AI think? If that AI starts to hang out or consume more processing time, I don't want it anywhere near my aircraft performance!

 

Now if you are flying in multiplayer etc, then you can start to split own aircraft functions to multiple cores. Flight modeling for one core. Electricity, all fluids etc to one core.

 

The most demanding is the player own aircraft simulation and then graphics. Split those. Don't share and swap processing.

 

Actually .. I went back to my old threads now https://forums.eagle.ru/showthread.php?t=201530&page=9 and I think I remember now there was one thing which could have put a question mark on the whole thing, because one thing, I did mostly barebone scans/tests where nothing was happening in the game, I don't know why I didn't figure out at the time to actually test multi-threading you need to put the whole thing under stress so all parts of the engine are working something for those minor threads to even show up on the scans.

 

It's time for another go, and I want to compare 2.5.4 vs 2.5.5 anyway so I'm redoing the whole WPA stuff right now while I'm still on 2.5.4, I already got the latest Win10 ADK version installed (which includes WPT (which includes WPR/WPA ..etc)), this time I'm getting more educated about WPA, which is the analyzer you see with all the graphs and that's where the meat of it is, actually knowing how to first use it correctly to display the correct data in a correct way that for this type of case and then to interpret that correctly, to make sure whatever I post is going to be more accurate. Not saying that stuff didn't hold true, but I think there could have been DCS improvements since then.


Edited by Worrazen

Modules: A-10C I/II, F/A-18C, Mig-21Bis, M-2000C, AJS-37, Spitfire LF Mk. IX, P-47, FC3, SC, CA, WW2AP, CE2. Terrains: NTTR, Normandy, Persian Gulf, Syria

 

Link to comment
Share on other sites

oh, i totally agree.

 

but it’s also difficult for sims on new engines to leverage multi-cores.

 

do any of the new sims created in the last 10 years take advantage of and use multiple cores well?

 

Yeah I think this falls under the sounds easy "in theory" but is an absloute bitch to implement "in practice". Comparing to civ flight sims is mostly a joke, they dont have to model weapons, and their AI is a joke relatively speaking. And if things desync its not the end of the world.

New hotness: I7 9700k 4.8ghz, 32gb ddr4, 2080ti, :joystick: TM Warthog. TrackIR, HP Reverb (formermly CV1)

Old-N-busted: i7 4720HQ ~3.5GHZ, +32GB DDR3 + Nvidia GTX980m (4GB VRAM) :joystick: TM Warthog. TrackIR, Rift CV1 (yes really).

Link to comment
Share on other sites

Vulkan is the asnwer

 

I think you guys will be disappointed with Vulkan NOT tripling FPS and heralding the 2nd coming. Kinda like the Arma folks were when Arma moved to 64-bit and it didn't really change that much.

 

There is no magic cure-all ;)

Де вороги, знайдуться козаки їх перемогти.

5800x3d * 3090 * 64gb * Reverb G2

Link to comment
Share on other sites

I think you guys will be disappointed with Vulkan NOT tripling FPS and heralding the 2nd coming. Kinda like the Arma folks were when Arma moved to 64-bit and it didn't really change that much.

 

There is no magic cure-all ;)

 

Yup... Exactly this... I think it will help but won't be earth shattering, and honestly If I were a betting man it will be DCS3.0 and it will likely have the dynamic campaign stuff implemented along with some of the other requested features (clouds/weather/ew whatever)which will eat up most of the gains anyway.

New hotness: I7 9700k 4.8ghz, 32gb ddr4, 2080ti, :joystick: TM Warthog. TrackIR, HP Reverb (formermly CV1)

Old-N-busted: i7 4720HQ ~3.5GHZ, +32GB DDR3 + Nvidia GTX980m (4GB VRAM) :joystick: TM Warthog. TrackIR, Rift CV1 (yes really).

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...