Jump to content

When does more efficient CPU use become a must have vs a nice feature for the future


Recommended Posts

Posted

With all of the current stuff on the upcoming list for some of the larger, more complex modules - and adding in more realistic weather effects and carrier ops overhead, when does having more CPU in game become a must have to keep the game playable and the development evolution moving?

 

 

From what I can see, my 9900k is pegging one CPU hard with what is already in the game. I do have a stable experience 'generally', but if a bunch more gets added, it may get to a point where not much really works well, even for a top of the line processor.

 

 

 

Sadly, for my processor, the typical load over the whole CPU is like 15-20% average (and I suspect that is likely with many other multi core cpus), which seems really inefficient. It would be great to use the rest of that CPU power to process other units, help the GPU, add weather, etc.

 

 

 

Are we close to or at that saturation point? Is there a solution to this issue besides Vulcan (which I think is only for GPU offloading, but correct me if I am wrong)? Just curious what others think...

 

 

 

I really hope ED is working on solutions to use more of the CPU.

:pilotfly: Specs: I9-9900k; ROG Strix RTX 2080ti; Valve Index HMD; 32GB DDR4 3200 Ram; Samsung 970 EVO 1TB SSD; TM Warthog with pedals, 3 TM MFDs

Posted

It’s not a simple fix. In a multi-thread scenario the timing and coordination of workloads/dependencies hits a point of diminishing returns or is slower than single-threaded.

 

 

This is an oversimplification, but let’s assume you need to move 20 tons of cargo...

 

1 20-ton truck = 2 load/unload events and 1 round trip

 

20 1-ton trucks = 40 load/unload events and 20 round trips

 

If the cargo needs to be received in a specific order, then trucks 8-12 sit and do nothing while waiting for trucks 1-7 (all while trucks 13-20 wait for 1-12). More trucks (threads) may be a lot slower than just using one big truck for the whole load.

 

I am not saying it can’t be done, but if it was a simple fix odds are we would have it by now.

 

 

 

 

 

Sent from my iPhone using Tapatalk

Posted

I get what you are saying, and I agree. I know the fix isn't going to be easy or short to implement. And from what you are saying, may have some issues that will not prove to be the magic bullet.

 

 

 

All of that said, is there a point or time when core changes for multithreading is no longer an option, but a reality that must be implemented? Or, to your point, is multi threading not really worth it given the type of processing necessary in DCS?

:pilotfly: Specs: I9-9900k; ROG Strix RTX 2080ti; Valve Index HMD; 32GB DDR4 3200 Ram; Samsung 970 EVO 1TB SSD; TM Warthog with pedals, 3 TM MFDs

Posted

It's coming with Vulkan. Announced last year and hopefully arriving this year.

7800x3d, 5080, 64GB, PCIE5 SSD - Oculus Pro - Moza (AB9), Virpil (Alpha, CM3, CM1 and CM2), WW (TOP and CP), TM (MFDs, Pendular Rudder), Tek Creations (F18 panel), Total Controls (Apache MFD), Jetseat 

Posted

You are an optimist on vulkan. That will be dcs 3.0 snd im hoping next year for it.

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).

Posted
All of that said, is there a point or time when core changes for multithreading is no longer an option, but a reality that must be implemented? Or, to your point, is multi threading not really worth it given the type of processing necessary in DCS?

 

 

It depends on how the code works...

 

(Example as I have no details on how the code works)

 

If weapons delivery and tracking is currently directly tied to AI positioning and tracking, then you would have to recode them to put each process on different cores. Then you would have to make new code that links the separate threads together with precise timing for a missile you fire to intercept an AI target in 3D space.

 

If this results in better performance then it makes multi-threading in this use case viable. If on the other hand it requires more processing power (or worse causes lag/timing issues), then it would be a waste of effort with no benefit.

 

I am sure there is a path forward, but it is a tough programming nut to crack.

 

DCS is arguably one of the most complex simulated battle spaces ever created (complex physics and massive geographic areas) for personal computers.

 

 

 

 

Sent from my iPhone using Tapatalk

  • 4 weeks later...
Posted

Hmmm. This has never really made much sense to me. I thought one of the main features of modern OSs today was to provide an abstraction layer between the app and hardware that made that sort of direct coding unnecessary? The requests from the application go one place, and the code of the OS decides how to best optimize it over the processor.

 

I for one have done very little coding, but I have never seen, nor had the need to assign a processor to a thread before. I'd love to understand better how that process works in code. Is it just a matter of spinning up more processes to use?

:pilotfly: Specs: I9-9900k; ROG Strix RTX 2080ti; Valve Index HMD; 32GB DDR4 3200 Ram; Samsung 970 EVO 1TB SSD; TM Warthog with pedals, 3 TM MFDs

Posted

I really hope ED is working on solutions to use more of the CPU.

 

For me, it's the end-result the important thing .. it doesnt matter to me how much of my CPU is being used, what matters to me is to have a decent frame rate with no suttering ... that is, it's the goal what is important and not how you get there.

 

My experience is that once you have a reasonably modern processor, then DCS gets GPU bound, particularly if you use VR.

 

I confirmed this when I got the recent dedicated Server version of DCS running pretty well on a fairly weak CPU and with only 4 GB of RAM ... seems that the simulation core isnt that demanding after all.

 

For work: iMac mid-2010 of 27" - Core i7 870 - 6 GB DDR3 1333 MHz - ATI HD5670 - SSD 256 GB - HDD 2 TB - macOS High Sierra

For Gaming: 34" Monitor - Ryzen 3600 - 32 GB DDR4 2400 - nVidia RTX2080 - SSD 1.25 TB - HDD 10 TB - Win10 Pro - TM HOTAS Cougar

Mobile: iPad Pro 12.9" of 256 GB

Posted (edited)

@Rudel_chw - I respectfully disagree. Take a look at the thread below. With a test mission with 600 objects my processor (see sig), GPU, and memory are barely chugging according to the screen shots, yet the game is a slideshow. This doesn't seem to me to be a CPU performance issue, but rather a core utilization issue. Only a few threads are being spawned which limits the ability of the game to be spread out further over the processor cores by the OS is my guess.

 

https://forums.eagle.ru/showthread.php?t=242929

 

If this test had yielded much higher CPU utilization with the GPU pegged - say 50% or higher on CPU and GPU @ 80-90%, I would agree with you.

 

And on your second note - I'm starting to run a dedicated server in the cloud. Just did a test with a non complicated mission last night, and a medium sized VM seriously bogged with 10 players connected. DCS finally dumped all of the clients after about 30 mins and had to be reset. That box had 28Gb of memory and SSD drives with 4 VCPU cores at 2.3gz. The VM worked well with 2-4 players in previous tests, but 10 concurrent players killed it. I'm going to upscale the box to see if that allows more clients. The new server has a single core clock speed of 3.6gz and even more memory (though I doubt memory was the issue in my test last night).

 

I'd be curious to see the specs on the box you referenced in your post with only 4GB of memory. How many concurrent clients did you host on that server? How complex was the mission?

Edited by Nagilem

:pilotfly: Specs: I9-9900k; ROG Strix RTX 2080ti; Valve Index HMD; 32GB DDR4 3200 Ram; Samsung 970 EVO 1TB SSD; TM Warthog with pedals, 3 TM MFDs

Posted (edited)

While I do believe Vulkan API will be a big deal, it won't be everything, but it may just be well enough to give time, no need for everything to happen all at once.

 

 

@Nagilem - When we say CPU we kinda mean "The CPU side of DCS", there's confusion because sometimes it's not necessary, these are the kinda communicational shortcuts that I'm guilty of as well as it can get complicated.

 

Don't get too hyped up really, the focus was on the game it self, projects in the middle of development probably have to be carried out they can't just stop and fire people and hire 10 programmers all of a sudden, every season of new players there's people asking it, I was the same, we all know it, let's not dramatize and let it play out smoothly. Besides if the devs already know that, they don't need to be banged over the head repeatedly, not much was stated because they don't know about what/when/howmuch, the statement was "it will change" AFAIK.

 

Your thread point is completely correct, there is a limit how much this can sure but the CPU industry's stagnating single-core performance is also worth noting. Making it multi-threaded and it being worth it requires a rewrite of a lot of code closer to effecively rewriting an engine, that's the industry word, nothing DCS specific.

Edited by Worrazen
typo

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

 

Posted
@Rudel_chw - I respectfully disagree. Take a look at the thread below....

 

OK, I have not done tests as thorough as you have .. my personal experience is more limited so I'm probably wrong on that item, tough my personal experience with DCS has shown me that I get more performance increases after replacing the GPU than after replacing the CPU.

 

And on your second note - I'm starting to run a dedicated server in the cloud...

..

I'd be curious to see the specs on the box you referenced in your post with only 4GB of memory. How many concurrent clients did you host on that server? How complex was the mission?

 

I was writing from memory, just checked and my Server actually has 6 GB of RAM, this is its current specs:

 

0OVIY0l.jpg

 

After updating to 2.5.5 I've found that DCS is now using more RAM than previously, so I'm thinking on upgrading it to 8 GB.

 

I'm using a fairly complex mission by Apache 600 (Krasnodar variable ground attack), but the most simultaneous clients I've had to date is 4 ... hopefully our group will grow larger on the next few months.

 

My server's processor is only a dual core unit, but so far seems to be able to handle the Server version of DCS with no problems:

 

jit0nrt.jpg

 

This small server was more of a proof-of-concept than a full blown Server, so I'm prepared to upgrade the hardware if need be, I'm happy that it will never need an expensive GPU :)

 

Best regards

.

 

For work: iMac mid-2010 of 27" - Core i7 870 - 6 GB DDR3 1333 MHz - ATI HD5670 - SSD 256 GB - HDD 2 TB - macOS High Sierra

For Gaming: 34" Monitor - Ryzen 3600 - 32 GB DDR4 2400 - nVidia RTX2080 - SSD 1.25 TB - HDD 10 TB - Win10 Pro - TM HOTAS Cougar

Mobile: iPad Pro 12.9" of 256 GB

  • Recently Browsing   0 members

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