this post was submitted on 02 Jan 2024
385 points (98.5% liked)
Technology
59300 readers
4481 users here now
This is a most excellent place for technology news and articles.
Our Rules
- Follow the lemmy.world rules.
- Only tech related content.
- Be excellent to each another!
- Mod approved content bots can post up to 10 articles per day.
- Threads asking for personal tech support may be deleted.
- Politics threads may be removed.
- No memes allowed as posts, OK to post as comments.
- Only approved bots from the list below, to ask if your bot can be added please contact us.
- Check for duplicates before posting, duplicates may be removed
Approved Bots
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
There is only so much that can be multi-threaded, beyond that the overhead just slows things down (and can cause bugs)
More simulation type games (city skylines etc) can multithread more (generally) while your standard shooter has much less that it can do (unless you have AI bots etc)
Plus it only takes one unthreadable task to bottleneck the whole thing anyway.
My point here is the developer managed to split the load evenly between 8 threads. How come they cannot do it for 16?
The keyword, evenly, means all 8 threads are at 100% while other 8 threads are at 1-2%.
You'd need to look at the actual implementation, it's hard to speculate from a tiny amount of data. What game are you referencing?
And as someone who has done multi threaded programming I can tell you that for games it is unlikely that they can just add more cores. You need work that truly can be split up, meaning that each core doesn't needs work to do that doesn't rely on the results from another core
Graphics rendering is easy for this and it's why gpus have a crazy number of cores. But you aren't going to do graphics compute on the cpu
That was long time ago. I believe the game was BF1.
I know it’s hard to speculate but 100% cpu usage for solid 5~7 seconds only for 8 cores cannot be separate workload (single threaded). A spike is understandable tho.
The game play wasn’t impacted to be honest.
For that number to be 8 though suggests that there's just a "number of workers" variable hard-coded somewhere.
Potentially suggests, but does not prove And I'm quite skeptical they they truly have an example of a game that is running 100% on all 8 cores, high maybe but 100%?