sobek Posted April 2, 2015 Posted April 2, 2015 I wouldn't be surprised if the old DX paradigm had a lot to do with it. Good, fast, cheap. Choose any two. Come let's eat grandpa! Use punctuation, save lives!
SkateZilla Posted April 2, 2015 Posted April 2, 2015 Most of the games industry uses/licenses their engines from a pool of developers, common ones are Unreal, Frostbite, etc. ED writes their own. Its not easy, the sync protocols are super important. Windows 10 Pro, Ryzen 2700X @ 4.6Ghz, 32GB DDR4-3200 GSkill (F4-3200C16D-16GTZR x2), ASRock X470 Taichi Ultimate, XFX RX6800XT Merc 310 (RX-68XTALFD9) 3x ASUS VS248HP + Oculus HMD, Thrustmaster Warthog HOTAS + MFDs
Sgt_Baker Posted April 3, 2015 Posted April 3, 2015 Because is very difficult to do properly. Bye Phant I couldn't disagree more. It does appear "difficult" to persons coming from a single-threaded background, yet once the shift in mindset is achieved the benefits outweigh the development overhead. I wouldn't be surprised if the old DX paradigm had a lot to do with it. Agreed. DX has, traditionally, FORCED a single-threaded relationship between code and gfx driver. Using the Multithreaded flag would result in the driver stalling while expecting instructions from multiple threads in a single-threaded fashion. Most of the games industry uses/licenses their engines from a pool of developers, common ones are Unreal, Frostbite, etc. ED writes their own. Its not easy, the sync protocols are super important. This, I suppose, is what I'm getting at. If one considers any given problem from a parallel perspective, the cross-thread protocols are already "built in". It's much, MUCH more difficult to convert a system which was originally conceived as single-threaded. UltraMFCD 3.0 in the works. https://ultramfcd.com
sobek Posted April 3, 2015 Posted April 3, 2015 I couldn't disagree more. It does appear "difficult" to persons coming from a single-threaded background, yet once the shift in mindset is achieved the benefits outweigh the development overhead. Does that really scale all the way? I mean it's probably easy enough for a few thousand lines of code, but can you really fully map a complex "process" of the scale of DCS with a multi threaded paradigm? Good, fast, cheap. Choose any two. Come let's eat grandpa! Use punctuation, save lives!
SkateZilla Posted April 3, 2015 Posted April 3, 2015 (edited) To divide the DCS process for MT would likely require significant rewrite of nearly everything. I'd go on a limb and assume a rewrite of the entire DCS code to support multiple threads for AI, physics, weather, systems, etc would prolly be a bigger task than building EDGE. And what will you get? likely a marginally small increase, if any. DX11 -> DX12 would likely net a bigger performance increase than re-coding for even more core parallelism. DX9->DX11 was a big step for DirectX, but DX11->DX12 is a leap, and a huge one. If they can make DX11 to DX12 as easy as they advertise, then ALOT of developers with high object count engines will likely invest in moving to DX12. Object draw calls are what impacts FPS and GPU usage the most. I can drop my A-10 on the north end of the Map just south of the northern most Airbase. Unpause and fly level at 8000Feet enable auto pilot, as I clear the airbase and head north where there is NO static objects, the FPS and GPU usage slowly rise, once the Airfield and surrounding objects are completely out of view my GPU usage pegs at 99% and FPS go from 45-60 over the Airfield to well over 150 Fps even with 1or 2 wingmen. Turn off autopilot and turn around and FPS will start to drop as more objects, GPU usage also drops as objects are rendered, while CPU usage spikes. I had made an AI only 16 on 16 F-86 and MiG-15 Mission abd placed them over the old Crimea Area, and FPS never dipped below 80. Edited April 3, 2015 by SkateZilla Windows 10 Pro, Ryzen 2700X @ 4.6Ghz, 32GB DDR4-3200 GSkill (F4-3200C16D-16GTZR x2), ASRock X470 Taichi Ultimate, XFX RX6800XT Merc 310 (RX-68XTALFD9) 3x ASUS VS248HP + Oculus HMD, Thrustmaster Warthog HOTAS + MFDs
Sgt_Baker Posted April 3, 2015 Posted April 3, 2015 Does that really scale all the way? It really depends on the problem. In my experience, most problems can be made to run in parallel in some way. That is not to say that I deny that certain problems MUST run completely synchronously - thus rendering any multithreading moot. To divide the DCS process for MT would likely require significant rewrite of nearly everything. Yup. Not advocating ED suddenly re-write their engine. UltraMFCD 3.0 in the works. https://ultramfcd.com
phant Posted April 3, 2015 Author Posted April 3, 2015 I couldn't disagree more. It does appear "difficult" to persons coming from a single-threaded background, yet once the shift in mindset is achieved the benefits outweigh the development overhead. Indeed i mean that we are in a transitionary time (for developers) and this is the reason that, at the moment, parallel-coding is not (yet) a mainstream. Bye Phant
BitMaster Posted April 4, 2015 Posted April 4, 2015 Sigh, they haven't even given us DX11 yet and yet we already deny it LoL GIVE US WIN10+DX12+DCS on a bootable USB stick !! agreed ??? haha I always wanted a bootable Game-Only OS environment. Bit Gigabyte Aorus X570S Master - Ryzen 5900X - Gskill 64GB 3200/CL14@3600/CL14 - Sapphire Nitro+ 7800XT - 4x Samsung 980Pro 1TB - 1x Samsung 870 Evo 1TB - 1x SanDisc 120GB SSD - Heatkiller IV - MoRa3-360LT@9x120mm Noctua F12 - Corsair AXi-1200 - TiR5-Pro - Warthog Hotas - Saitek Combat Pedals - Asus XG27ACG QHD 180Hz - Corsair K70 RGB Pro - Win11 Pro/Linux - Phanteks Evolv-X
SkateZilla Posted April 5, 2015 Posted April 5, 2015 Windows 10 Pro, Ryzen 2700X @ 4.6Ghz, 32GB DDR4-3200 GSkill (F4-3200C16D-16GTZR x2), ASRock X470 Taichi Ultimate, XFX RX6800XT Merc 310 (RX-68XTALFD9) 3x ASUS VS248HP + Oculus HMD, Thrustmaster Warthog HOTAS + MFDs
blackbelter Posted May 6, 2015 Posted May 6, 2015 Very interesting discussion... Keep'em coming! Fun stuff to learn!
Recommended Posts