add arrow-down arrow-left arrow-right arrow-up authorcheckmark clipboard combo comment delete discord dots drag-handle dropdown-arrow errorfacebook history inbox instagram issuelink lock markup-bbcode markup-html markup-pcpp markup-cyclingbuilder markup-plain-text markup-reddit menu pin radio-button save search settings share star-empty star-full star-half switch successtag twitch twitter user warningwattage weight youtube

Question Between Two CPUs

davis.justin

3 months ago

I plan on upgrading my build soon and I am getting stuck on my choice of CPU. I have no preference of manufacturer so I've been juggling a Ryzen 5 1600 and a i5-8400. My question is and might open up a mess with this question is, why would I want to spend ~$35 more on the i5-8400? I picked these two because they seem to be the most picked in the featured builds but I don't see why. Comparing them in gpu.user the Ryzen surpasses the i5 in everything. Of course, I recognize I know very little of CPUs so I'm hoping someone could tell me if I am missing something?

Comments

  • 3 months ago
  • 9 points

PCPartPicker part list / Price breakdown by merchant

Type Item Price
CPU Intel - Core i5-8400 2.8 GHz 6-Core Processor $184.89 @ OutletPC
Prices include shipping, taxes, rebates, and discounts
Total $184.89
Generated by PCPartPicker 2019-02-10 12:16 EST-0500

PCPartPicker part list / Price breakdown by merchant

Type Item Price
CPU AMD - Ryzen 5 2600X 3.6 GHz 6-Core Processor $179.99 @ Walmart
Prices include shipping, taxes, rebates, and discounts
Total $179.99
Generated by PCPartPicker 2019-02-10 12:16 EST-0500

For all intents and purposes, the i5-8400 and Ryzen 5 2600X are trending about the same price lately. (they hover ~$180-220). I think this comparison makes more sense as they are more equally priced, but some may opt for the lower cost 2600, with the lower cost being a selling point. In actual implementation, there are factors that could make one or the other more expensive to implement, but lets assume we're going to spend ~$20 on a heat-sink for the 8400 to allow it to stretch its legs on clock speeds without thermal issues, and lets assume we're going to spend ~$20 extra on faster RAM for the 2600X to help optimize the infinity fabric communication bus bandwidth and latency (the 2600X comes with a nice heat-sink anyway). In each case, we're solving the biggest out-of-box weakness for each of these CPU's with a small adjustment to the purchase, while maintaining roughly equal implementation price.

These are both 6 core CPU's.

The i5-8400 comes with hyper-threading disabled, so can perform operations on up to 6 threads in the same cycle. The 8400 is arranged with all 6 cores having roughly equal communication paths from core to core and to a single L3 cache. This configuration has some latency and hit-rate advantages for real-time workloads like gaming. The 8400 is based on Intel "Lake" architecture, which has a very mature and well optimized execution pipeline that Intel has been tweaking for the last 10 years or so. Lake architecture is well optimized to maximize execution throughput to a single thread per core, with a "just-right" balance of instruction level parallelism and pipeline length, again, making it well suited to real-time workloads like gaming. With an inexpensive liquid heatpipe cooler, The 8400 operates at ~3.7-3.9GHZ in most workloads.

The 2600X comes with SMT enabled, so can perform operations on up to 12 threads in the same cycle. The 2600X is arranged as 2 separate 3 core complexes. Each core complex has good communication path between cores within the complex, and a separate L3 cache. Communication between cores across complexes, or data retrievals from L3 cache not residing in a cores complex, come with some latency penalties, which can hurt performance in some real-time workloads, especially if the application and/or scheduler is not well optimized to overcome these complications. The 2600X is based on AMD's "zen+" architecture, which is still a very young architecture that has not been as thoroughly optimized as Intel Lake architecture. With that said, Zen architecture actually packs more instruction level parallelism than Intel Lake architecture. Taking advantage of that instruction level parallelism is more difficult though, requiring software compiling optimizations and good multi-thread scaling to take advantage of. With the stock cooler, the 2600X operates at 3.7-4.1GHZ in most workloads.


If you have had an opportunity to look at some benchmarks and reviews, then you probably already have a good feeling for what all this translates to...

If not:

https://www.tomshardware.com/reviews/amd-ryzen-5-2600x,5579.html

https://www.tweaktown.com/reviews/8602/amd-ryzen-7-2700x-5-2600x-review/index9.html

https://www.gamersnexus.net/hwreviews/3288-amd-r5-2600-2600x-review-stream-benchmarks-gaming-blender?showall=1

https://www.techpowerup.com/reviews/AMD/Ryzen_5_2600X/

https://www.anandtech.com/show/12625/amd-second-generation-ryzen-7-2700x-2700-ryzen-5-2600x-2600

A broad brush conclusion from all this:

The i5-8400 offers about 10-25% better performance in compute bound conditions in gaming, 3D modeling (viewport performance), and other lightly threaded and/or real-time tasks.

The 2600X offers about 30-70% better total compute throughput in highly parallel workloads like rendering, file compression/decompression, video editing, batch processing, streaming-while gaming with software encoder, and general multi-tasking scenarios and/or virtualized environments.

Meanwhile, many common day-to-day workloads that aren't very poorly threaded nor highly optimized for many-threads, or that have mixes of both, wind up trading blows between these CPU's in ranges that are too close to really matter. Someone using for example, lightroom or photoshop, is unlikely to notice a difference between these CPU's unless they were really paying attention, as these programs each contain elements of both poorly and well threaded workloads, that will trade blows between these CPU's.

The "conditions" required to reveal the performance differences in gaming, often require operating a high end GPU at lower than typical visual quality or resolution to "reveal" the difference, but the underlying difference is there and can be relevant for gamers who focus on FPS over visual quality when adjusting settings for competitive advantages.

The "conditions" required to reveal the performance difference in computing/workstation tasks, requires workloads and workflows that can scale to many threads effectively. This can be relevant for users who perform batch work, run virtual machines, perform large data management or do content creation.


The i5-8400 also includes an integrated iGPU that can be used to assist in certain intel specific video encoding and decoding capabilities that some programs leverage. This could be a value-add for some specific users doing some specific tasks. It's pretty rare to implement a CPU of this calibre with the intent to use onboard GPU as the primary video device, however, for some users the integrated graphics may be a prefered solution for various reasons, that do give the 8400 some additional functionality that the 2600X lacks.


The 2600 would simply stack up into this comparison as having a greater performance deficiency in lightly threaded and real-time workloads like gaming, and less performance advantage in heavily threaded workloads, compared to the 8400, while coming in at a lower price point. The 2600 operates at quite a bit lower clock speeds on average, but does offer very healthy compute efficiency. When the price difference between the 2600 and 2600X is small, the 2600X is a much better value as it comes with a better heatsink and operates at meaningfully superior clock speeds.


So which is better?

Depends on what workloads you want to optimize for.

  • 3 months ago
  • 1 point

11/10 comment here, mind if I use some of this as copypasta for future threads?

  • 3 months ago
  • 1 point

Help yourself ;)

  • 3 months ago
  • 1 point

to be fair, you have to have a very high iq to understand amd & intel

  • 3 months ago
  • 2 points

I mean I built an 8 bit CPU in Minecraft but don’t have that level of knowledge to understand a full 64 bit x86 CPU.

  • 3 months ago
  • 1 point

Wow. Thank you for that extremely detailed answer. Lots of new information in there for me and it was very interesting. Since this won't be anything close to a 'workstation' I believe the 8400 is the choice for me. Thanks again!

  • 3 months ago
  • 1 point

Exhaustive, thorough, and says everything. Awesome comment!

  • 3 months ago
  • 2 points

What are you using the computer for?. If you are a multi-tasker, go with the Ryzen. They have more cores and threads so they are better for productivity. If you are going to use it just for gaming and office work then go with intel. They have better performance per core.

  • 3 months ago
  • 1 point

Gaming mostly. Couple tabs open of whatever I'm reading up on, watching streams. It definitely seems like the 8400 is what I'm going to go with.

Sort

add arrow-down arrow-left arrow-right arrow-up authorcheckmark clipboard combo comment delete discord dots drag-handle dropdown-arrow errorfacebook history inbox instagram issuelink lock markup-bbcode markup-html markup-pcpp markup-cyclingbuilder markup-plain-text markup-reddit menu pin radio-button save search settings share star-empty star-full star-half switch successtag twitch twitter user warningwattage weight youtube