HACKER Q&A
📣 lopkeny12ko

Intel 12/13th gen vs. AMD Zen 4 in Linux


Hi HN, the last time I built a system was more than a decade ago, and as you might guess I'm not caught up with present-day consumer desktop hardware. I'm planning to put together a new system in the next few months and trying to decide between Intel and AMD.

Unfortunately, existing reviews don't seem to cover my use case. I don't play games, and I don't use Windows. I do a lot of software development that benefits from parallel execution (think: C++, Rust, and various projects built with Bazel). I care about compilation speed, multithreaded scalability, and interoperability with my existing tools and workflows.

The 13th gen Intel chips (13900k) offer better performance than AMD's current top-of-the-line chips, and also at a lower MSRP. However, the new architecture of E-cores and P-cores worries me, especially in Linux.

* Are recent (5.15+) versions of the kernel able to effectively take advantage of the different types of cores? The Linux scheduler AFAIK was never really designed with the assumption that each physical CPU would have different performance characteristics, and I'm not convinced that an adaptation shoehorned in after the fact would be particularly effective.

* Given the unequal cores, how does this affect performance determinism? I'm concerned about the scenario where, for example, I benchmark a program that spins up $(nproc) worker threads, and some of those workers report much less max throughput than the rest (the ones allocated to E-cores by the kernel). If the kernel juggles the workload among all cores, then I'd have to rewrite a bunch of my tools to pin threads to specific P-core CPUs to get an accurate signal for maximum single-thread performance.

* "Turbo boost" clocks are a new concept to me--if the hardware changes clock frequencies arbitrarily, it sounds like this would be another source of performance non-determinism that I'd have to account for in userspace.


  👤 smoldesu Accepted Answer ✓
Alder Lake has nearly full-support on all kernels after 5.19. Clock speeds changing is honestly nothing to worry about, and it's a pretty well-developed science at this point. It won't really have any adverse effects. Heterogenous core architectures are a little more wonky, but should be stable on recent kernels. In my experience, I have gotten no Alder Lake-specific crashes (even running picky software like anti-cheat-ridden games).

The AMD options are also quite solid though, especially if you're looking for a no-nonsense, straightforward option. Neither one is a bad pick.


👤 zRedShift
Do you want to use AVX-512? Zen 4 is your only real option out of the three. They disabled AVX-512 on Golden Cove due to Gracemont not having it, and not having implemented any sort of AVX-512 workload CPU pinning like idk, SIGILL trapping? That's still the situation with Raptor Lake as well, from what I gather.

I personally am waiting for the 3D V-Cache variants which will hopefully be announced at CES.


👤 chatterhead
Recently discovered on HN: https://www.phoronix.com

Might be helpful in answering some questions.

Original thread: https://www.phoronix.com/review/intel-core-i9-13900k


👤 wmf
The easy solution is to just get the 7950X and not worry about it. You'll also be saving yourself a lot of electricity and fan noise.

You can turn off turbo and set CPU frequency manually using cpufreq-set -f.