4 ms·
Gaming workloads are strict superset of almost any other workload (because they are extremely taxing on almost any metric a platform can have). Game benchmarks
by zamalek 6y ago
Gaming workloads are strict superset of almost any other workload (because they are extremely taxing on almost any metric a platform can have). Game benchmarks are abundant and reproducible. They are a good indicator of how a platform will deal with almost any other software.
AMD did have a CAD benchmark thrown in.
> Threadripper
Not a bad choice at all (wait for that 5000 TR announcement), however, a *950X comes close to TR for much less. My 3950X has made a striking difference for Rust compilation times and I'm strongly considering a 5950X.
- pdimitar 6y agoDid it improve the final step though? That seems to be single core and I still can't pinpoint how to accelerate it (written a down-thread comment here: https://news.ycombinator.com/item?id=24739796 https://news.ycombinator.com/item?id=24739796)
- dvdplm 6y agoIndeed. And for rust compilation, good single threaded performance can have a significant impact on that last annoyingly slow linking step (at least when building executables).
- pdimitar 6y agoHave you noticed an actual improvement? I couldn't pinpoint what was the bottleneck in the last Rust program compilation step at all. I have two machines with extremely fast NVMe SSDs and an incremental compilation improvement from i7-8565U (laptop, 24s) to Xeon W-2150B (iMac Pro, 12s) was extremely disappointing. I'm pondering a Threadripper workstation but I'm very worried if I'll gain any actual incremental compilation speed at all. Do you have any observations?
- steffan 6y agoI've noticed the same thing on EC2 instances, compiling, e.g. Alacritty, there wasn't a lot of difference between 8 vs 16 vCPUs since the last step took a significant portion of time and was single-threaded. It's fun watching 16 (or 32) CPUs maxed out though.
- celrod 6y agoGaming doesn't really have SIMD or FP at all though, does it?
- zamalek 6y agoCouldn't be further from the truth. Rasterization is all linear algebra. That being said, you don't really see games with the likes of AVX-512.
- moonchild 6y agoThat all happens on the GPU. There's a tiny (trivial) amount of linalg on the CPU and the rest is punted to shaders.
- zamalek 6y agoIt's not always trivial, especially if any computational geometry is being done (read: any game with a landscape).
- floatboth 6y agoPhysics are still often CPU, though I guess sometimes on compute shaders by now? Then there's bad engines, e.g. Fallout 4 seems like it might be calculating some part of the shadows on the CPU…
- sharpneli 6y agoPlenty of it. Going trough the transform hierarchy (tons of 4x4 matrix multiplications which definitely are vectorized) and then the physics simulations, and that’s just part of it.
- anfilt 6y agoFloating point yes, but SIMD depends.
- PaulDavisThe1st 6y agoCan gaming workloads simulate the 100% of all cores that a parallel large scale native C++ compilation will generate?
- m12k 6y agoModern game engines can, yes
- zamalek 6y agoGames are typically written in C++, so that's a yes. As for the threading, older (2yr or so back) games tend to assume 4 cores and don't scale past that (thanks, Intel!). More recent games tend to aim at arbitrary horizontal scaling. You do still get major titles that are completely single-threaded.
- fomine3 6y agowritten in C++ not means it's compatible workload. Gaming performance is just gaming. For gaming, realtimeness is important and normally single thread perf is important even though some process is multithreaded.
- moonchild 6y ago? no The parent was talking about c++ compilation. A c++ compiler is very different from a game engine written in c++.
- anfilt 6y agouh what??? No most games do no scale like compilation does. For instances when compiling a large program GNU make lets me the following: make -j 16 That will create 16 instances of the compiler each compiling different compilation units. I could even do the following: make -j 128 and that will spawn a 128 processes, and still scale. I can keep scaling this assuming I have enough compilation units (aka files)
- zamalek 6y agoGames use threads.
- pimeys 6y agoI'm also having a 3950x for Rust work and it has been the fastest CPU I've ever used. It just flies every day and makes rust compilation times not an issue anymore. That means, I really don't know do I want to have the trouble of finding the 5950x and the work of replacing the CPU. I really don't feel like I need more CPU power at this point. But replacing my 2080ti with a new fast Radeon, that would be something...
- pdimitar 6y agoDid it help with the final compilation step which seems to be single-core-bound?