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.
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?
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...
You do still get major titles that are completely single-threaded.
The parent was talking about c++ compilation.
A c++ compiler is very different from a game engine written in c++.
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)
My impression is that few games (if any) can ever approach this level of potential parallelism. There are not many tasks in computing with this level of "embarrassing parallelism".
[1] somebody actually did this with Ardour once, on a system with 1024 cores. The current normal-system compile time record for the software is a little under 5min (Ryzen Threadripper 2950X + 64GB of RAM). The k-core system completed the build in less than 10 seconds :)
Any data on the precise machine specs that did the record? I'm talking about the TR 2950x one, not the custom-built many-core machine.
I'd be interested mostly in motherboard and RAM speed.
Which is embedded in my first comment on game multithreading: "older" games assume 4 cores, some are single-threaded.
Neither can compilation.
Games do not scale like compilation, it does not matter what engine or how new that engine is.
https://en.wikipedia.org/wiki/Embarrassingly_parallel https://en.wikipedia.org/wiki/Parallel_slowdown
Modern game engines do not segregate work according to threads, they use thread pools. If one green thread is busy with I/O, work can be scheduled on its OS thread.
Then there's bad engines, e.g. Fallout 4 seems like it might be calculating some part of the shadows on the CPU…
Gaming is a single-thread use case that resonates with a lot of people and is generally easy to understand / relate to.
AMD could have used some other single-core use case like high frequency trading, but that would not have been grasped by so many people like the gaming use case.
Now add the huge success of youtube channels like LinusTechTips and similar and you get the point: the gaming use case helps deliver the message to a wider audience.
Many professionals, including developers, don't need such CPUs too.
When I need a lot of CPU power, I just ask my company to provide me servers.
Lol, sorry, but our C++ projects have an average build time of 40 minutes on an 8-core/16threaded Xeon CPU in my workstation. Even using Fastbuild/SN-DBS it still takes 5-10 minutes. We'll take any number of cores we can get, thank you.
I'm a Python developer and I can work from laptop. I do a lot of data processing and my laptop can handle development and testing. On production, some of the scripts are running on 64 core machines and use vector operations via numpy and scipy.
I currently use a 6-core mobile H-class CPU for my work that is a mix of Java and JS development, with a bunch of browser tabs and docker containers running, large IntelliJ project, etc. While my system often has a lot of processes/threads running, the main cost of those is in memory utilization rather than constant CPU performance.
I'm not saying that can't use more CPU horsepower, but it's certainly enough for my needs (for now). The main benefit of having more cores for me right now is just to maintain system responsiveness while running a bunch of background tasks, rather than raw throughput of large compile jobs.
In a company where I work, almost every front-end developer uses a laptop with an external display because it's a portable solution.
Btw docker is only standard for CI systems. Never would I advise anyone to actually use docker for local development let alone 10 docker instances at once. It's just pure insanity.
There are many alternatives to docker which don't cripple your computer. Nix is the best one.
Whether it's having to run a lot of Docker containers, a large C++ project, or a large Webpack project.
Nitpicking and criticizing someone's dev environment is irrelevant.
If you don't like their example, I'm working on a JS project where I run a lot of local VMs to locally test the web client in different configurations. It would continue to be a bizarre response if you thought it was time to tell me to "just use browserstack.com" or something. Software isn't as easy as we think.
I also compile large, multi-compilation-unit C++ programs, and it's much, much better to have a 24 or 32 threads clocked at 2 GHZ than 8 threads clocked at 5 GHz.
The parent comment was talking about fast individual core designs, which are genuinely useful for gaming, and can't be approximated by adding more cores.
What generation and what frequency?
Those things can be quite dissapointing for what they cost compared to consumer CPUs.
I would expect the 5950X to be around 3-6 times faster than an 8 core Xeon.
It's fast, sure, but for that price tag I expected more. Currently evaluating buying a TR 2950x workstation. That seems to be amazingly fast though my research on the net is still ongoing.
The biggest companies in the world writing the largest software don't have build times that slow.
One might end up in a situation where for developers the older generation cpu being cheaper and more available might make more sense.
I wish somebody really did some suitable benchmark suite for developers.
If I ever get to do local-machine development again, the choice of laptop vs. desktop really depends on how build times compare, and which platform has Intel CPUs with the required ISA extensions.
Single core compilation is actually a fairly good metric for general purpose performance. Of course it scales almost linearly with core count too.
What matters to me is the ISA extensions that are needed by the software I'm building, typically DL or HPC code. Life is easier when I can build and test the software on my local machine, without having to involve some fancy new server.
also, c++ compilation doesn't scale perfectly with more cores. linking is still single threaded, AFAIK.
While I agree that many people don't need mass multi-threading, I don't count developers among those.
Compilation and transpiration are computationally intensive, and usually take advantage of multi-threading. Developers often also run multiple virtual machines and containers, for example to run a database, message bus or blob store.
As a developer, I'll take all the compute capacity I can get, thank you very much!
True, though I think there's a distinction between "need" and "can make use of". If I'm going to spend 8+ hours a day working on a computer, I'd probably be willing to spend a extra 20% or whatever on total system cost to eek out a bit extra performance even if that cost doesn't make sense from a strict cost/benefit calculation.
That said, there isn't really a good way for developers to calibrate the hardware to their workload.
depends on the game. plenty of popular esports titles will bottleneck on the CPU with even a low end graphics card.
And yeah, the GPU is never begged while playing, but multiple CPU cores definitely are.
Also, emulation is another big place where CPU bottlenecking is a thing. Look at Dolphin (Gamecube/Wii), Citra (Wii U), and yuzu (Switch), they're all CPU bound. Folks in the various subreddits will ask why their new GPU isn't netting them a higher framerate, and it's because the GPU is almost not even used (though in some cases with better graphical effects, shaders, etc. they can be beneficial)
it is hard to find benchmarks to show this however. the reputable sites mainly focus on 1080p because this is where the difference between cpus is most visible. doesn't mean there isn't a meaningful difference at higher resolutions, it just isn't as good a way to show what they are trying to show in a cpu review.
> There is zero reason to be upgrading between generations unless you're just burning money.
agreed, the speedup is almost never worth such a short upgrade cycle, especially for consumers. but this is moving the goalposts given the thread's context.
It's definitely confusing, since there's a mention of 4K elsewhere...
You are correct that most games don't use that much CPU. Most titles will run comfortably with an Intel I3 from the past three generations or so, provided there are no bottlenecks in the GPU. The CPU will be the bottleneck, but if you are getting sufficient framerates, so what?
Modern CPUs are insanely powerful. Even then, I moved to Ryzen - for the above mentioned titles.
I guess you mean 1440p - which you could maybe label as 2.6k. But I don't think there is any such designation. Calling it WQHD is probably the right thing.
(playing games on a 1070 and a 6 year old Xeon and feeling the lack of single-threaded performance)
Additionally, the games listed as problematic ran great on a Dell laptop equipped with an 8th-gen i7 and a GTX 1050 mobile. At least, they ran great for like a minute or two until the thermal throttling kicked in. So given that my HTPC build does have issues, and it has a slightly better GPU and much worse processor, I'm inclined to think the processor is the problem.
Unfortunately, I don't think there's much point trying to get a better processor than that for the old LGA 1150 board, when I could spend only slightly more cash on some DDR4 RAM, a B450 motherboard, and maybe an older Ryzen to be upgraded to one of these Zen 3 ones in a few years when prices have dropped.
And it keeps running smoothly! I don't know what the market share of developers is vs gamers :x
I have yet to take the dive into buying or building a Linux workstation for development. Probably very worth it, but I have found the endless fiddling you can do with Linux to really distract me from doing the actual work I turned on the computer to do.
Was running a Docker stack of about 8 containers, plus PyCharm. It worked okay-ish, but everything was maxed out all the time and the fans were always spinning. Battery was being drained even when on the charger. Pycharm would lag for a second or two here and there.
Now switched jobs and was issued a 2018 MBP with only 16GB RAM and the 2.2GHz i7. I have gone to the trouble to run everything locally (A single 200MB Python repo + Spark). I don't see the same power drain but Pycharm lags VERY hard on its indexing and code insight... sometimes 5-10 seconds.
https://www.jetbrains.com/help/pycharm/increasing-memory-hea...
Using pycharm (although with a couple of the smaller projects and the number of containers) just fine on i5-8265U (1.6 GHz base) and 16 GB of RAM. There are always tons of tabs opened in Firefox at the same time and 3440x1440 monitor. No discrete GPU.
It was painful to use Pycharm with default values.
Makes it seem like it's not a memory limitation, which I didn't really expect it to be.
That said, you should always wait for third party benchmarks from a source you trust, with benchmarks that relate to your production workloads. I like Anandtech, Phoronix, and Gamers Nexus for such reviews. The last, despite the name, includes a decent swath of non-gaming benchmarks, and they are incredibly transparent about benchmarking methodology, which I appreciate.
With the necessary caveat out of the way, some observations:
If the IPC gains are there, and we're seeing similar or higher clocks (which seems to be the case), then you should expect a pretty good uplift to non-gaming performance.
The cache architecture optimization should also be a boon to many workloads outside of gaming.
Gaming is very sensitive with network latency. Bandwidth is less important, but helps for downloading and installing games.
My observation was on how vocal gamers tend to be in their excitement about hardware. I see gaming media go nuts over CPU and GPU releases. There's excitement and detailed analysis of motherboards. I've seen in depth content on storage, and there's been a lot of hype over the PS5's new storage architecture. RAM gets attention. Obviously displays get lots of attention, both from a visual quality and refresh frequency perspective. There are endless buying guides for peripherals such as mice, keyboards, and headsets.
I don't tend to see much content on networking, nor anything approaching the excitement I've seen for any of the categories above.
These observations do not diminish the importance of the network in online gaming. I merely noted that networking hardware tends to generate less vocal excitement among gamers. Beyond networking equipment, I believe gamers lead in hardware excitement.
Outside of that, I agree.
They could focus on compilation benchmarks, content creation benchmarks, etc. But the people who care about those benchmarks are already going to be buying whatever the latest AMD CPU is in their segment. The only people who are going to sit down and say, "hmm, should I buy an AMD or Intel CPU?" are gamers. So that's where they're focusing their marketing budget.
Having to sit down in the same chair at the same desk for an entire work session is a self-inflicted dealbreaker for me. It made more sense when laptops were so underpowered with such bad battery life. But now, gaming and exotic workloads are the only thing that really justify being tethered to a machine.
If I could go back in time, I'd save that $1000 towards a maxed out Macbook Pro and dual-boot Windows.
When you see marketing reaching for "non-gaming" metrics, it's often for highly parallelizable workloads, which benefits non-gaming disproportionately, but e.g. for compiling/linking there are still tasks that have to be done serially, which is where that single-threaded performance boost is critical.
I'm definitely excited at this point to see what a Zen 3 threadripper can bring to the table.
Like Cinebench?
And on top of that, I’m slowly realizing that regular people don’t appreciate snappy computers. They don’t want to wait, but don’t want quick moves either. So things happening instantly demo might not work anyway IMO.
I don't think this is true. my 70yo father who couldn't care less about tech is always asking me why webpages don't load instantly even when he pays for the highest tier of internet service.
I think most people just don't have the knowledge to make hardware/software choices that reflect their desire for "snappiness". a lot of people don't understand that a laptop is inherently less powerful than a desktop, let alone how to allocate money towards cpu/ram/storage to get the best bang for their buck.
It's funny how an average PC will feel snappier on a 144hz monitor compared to a top of the line PC on a 60hz monitor.
But, as I mentioned above, perhaps I'm just looking at the wrong product, and maybe I should be looking at Threadripper instead.
Buying a 3900X was one of the best purchases I ever made, but from the video, as a non-gamer, it's not entirely clear to me why I should consider upgrading to the 5900X. A non-gaming benchmark would have been helpful.
Perhaps I just misunderstood the target demographic of the Ryzen 9, and maybe what I'm thinking of (and should be looking at) is Threadripper after all.