11 ms·
Generally speaking gaming is single thread intensive on the CPU side, and all parallel task are offloaded to the GPU. This is really more of a workstation or s
by lev99 8y ago
Generally speaking gaming is single thread intensive on the CPU side, and all parallel task are offloaded to the GPU.
This is really more of a workstation or server cpu than a gaming cpu.
Edit: Tons of comments are pointing out exceptions. I was hoping to cover that with "generally speaking".
- p1necone 8y agoThis is changing (very slowly), more and more games are scaling to higher thread counts (and having more capabilities as a result). Ashes of the Singularity is a good example of a recent game that actually benefits from higher end high core count CPUs. I imagine many genres will never be heavy CPU users though, like low player count competitive FPS and MOBA.
- pjmlp 8y agoGame studios are already taking advantage of all the cores they can get. This guys go all the way up to 6 hardware ones, depending on availability. https://youtu.be/ptakmFGcIRU https://youtu.be/ptakmFGcIRU
- loeg 8y agoAAA studios, within the last couple years, yeah. But it was certainly the general trend until quite recently, and lower budget games may still be very single threaded on the CPU. Also, many games that do utilize multiple CPU cores do not scale well beyond about 4-6 cores (which makes a lot of sense given the CPUs most gamers have and the priorities of the studios).
- tormeh 8y agoEven most indie titles use 2-4 cores now. Buying a threadripper is overkill, but a hexcore won't be wasted on games. Some rare AAA games will occasionally even use 8 cores. An easy way to see this is to underclock your CPU as far as it will go, and see how many percent CPU your favorite game will use.
- majewsky 8y agoFun fact: A friend has a first-gen Ryzen with 8 cores (16 hyperthreads), and wondered why Civilization V was always crashing on his system. Turns out that Civ V runs into weird race conditions with that many threads. When he pinned the game to 8 or less hyperthreads, it started working properly.
- ethbro 8y agoWriting code on top of legacy single threaded frameworks / content interfaces, under an insane holiday release deadline, while trying to enable multithreading... is pretty much my definition of hell. I feel bad for the poor programmers who got that job.
- paulmd 8y agoDoubtful. Nobody's reporting issues with 5960Xs, and if it were really a race condition then you would occasionally get crashes even in 4- and 6-core processors. Civ5 is one of the games that can trigger Ryzen segfaults, guessing he has a faulty chip. He should run kill-ryzen and see if his chip is stable. Note that contrary to popular belief, the segfault bug does not "only" affect Linux or compiling workloads (it's a litho fault - these workloads just happen to trigger it) and there is no "safe" date range of first-gen Ryzen chips. Newer chips are more likely to work properly, but a smaller number are still faulty - even some RMA chips, since AMD stopped testing them after a few months. I went through the AMD support thread and pulled out some examples: https://news.ycombinator.com/item?id=17074355 https://news.ycombinator.com/item?id=17074355 Looking through the latest posts in the AMD community thread, at least one user is reporting this even on a second-hand processor, although that's not really enough to make a definitive statement.
- Merad 8y ago"Gaming = single threaded" really hasn't been true for a while now, at least in the arena of AAA games. My gaming desktop has a Core i7-4790k (4 core/8 thread), and I can remember several games offhand that were loading all 8 HT cores at 75+%.
- rf15 8y agoNo, most games are single threaded, even AAA ones. You might get this impression from a vocal minority though, "vocal" in the sense that they're the ones landing on your radar, while the technical details of other games do not. (you could argue for ps3 of course, But there it's not a choice)
- foepys 8y agoI don't know enough about games but if that's true, the PlayStation 4 and the Xbox One have 6 to 7 cores just idling most of the time? Why did Sony and Microsoft put 8 core CPUs in their consoles instead fewer cores with higher clockspeed if that's the case?
- rf15 8y agothey use extra cores for live video recording and fun like that, also console games are usually run in a vm on the console these days so it's giving the OS some spare space too (contact lists/chat, achievements, etc.). Also it gives games the possibility to run on more cores if you're AAA and want to leverage them.
- rf15 8y agoif you are disagreeing with my broad-ish statements about two very different platforms please explain how I am wrong instead of just downvoting.
- daemin 8y agoYou are wrong because games released in the past few years are heavily multithreaded. The only game recently that I've seen not be multithreaded is Battletech. The latest Total War series are heavily multithreaded. As far as the cores go on consoles, game developers try to use all of them all the time, and in general there's only one core that is half dedicated to doing OS / interaction / video recording tasks.
- rf15 8y agoAs a game dev, I agree with you. Also: all the casual observers that say "just multithread/core it! would make it so much faster!" and don't understand one bit about parallelisation problems, as if it's just a bit you flip.
- garmaine 8y agoTo be fair of the criticism, game engines are way behind the stage of the art in concurrency and parallelism. It’s not as easy a flipping a switch, but it shouldn’t be as dire as it is either.
- cogman10 8y agoI think the big problem is that games are hyper optimized for single threaded performance. ECS systems are basically big arrays of mutable data manipulated by multiple systems. To do threading well, you'd pretty much have to dump that. Not to say they aren't behind. I once saw a game talk about how awesome they are because they reinvented a thread pool. But their state of the art is in direct conflict with good threading practices.
- auto 8y agoUnfortunately, we haven't seen the paradigm shift in game engine development that would be necessary to really get away from hyper optimized single threaded performance. Until someone figures out a way to efficiently utilize (highly) parallel execution in a deterministic game engine that has to run at at least 60fps, there isn't an incentive to move beyond the tried and true ways of doing things. At least, I don't think we have, I'm not in AAA and only keep a tangential pulse on that level of gamedev. That said, I'd be really interested to see how some of these Battle Royale engines tick (no pun intended). It seems like there's a ton of potential for "clustering" execution, essentially treating separate sections of maps as separate games, but considering it could come down to 100 people all being within the same 100 square meters, you can't necessarily rely on that model.
- 8y ago