So I am going to upgrade my CPU, and there's a problem. I use my PC for 1) gaming, 2) Lightroom and Photoshop 3) Matlab and other enviroments using Numerical methods to calculate different things.
When it comes to i5 the 3570k is my pick and I belive it is superior to 2500k.
When it comes to i7 I have no clue which would be better 2600k or 3770k. I've read different opinions on the web.
According to some benchmarks the 3770k is the best choice but it is also quite more expensive than 3570k...
Here's the deal - all of them are "k" version 'cuz I plan to do A LITTLE BIT of overclockig. not much, but a bit for sure.
From what I understand the i7's has twice as much threads thanks to HT technology which probably means that they can calculate twice as much at the same time. But there is a question - will this really make a difference in gaming or only in my Matlab calculations? Is it worth to invest and buy i7 in this case?
Also, I would like my PC to last as long as possible - 3+ years. So even if now, we don't have any games using 8 threads I am not sure if those additional 4 will not come in handy next year or year after that.
What do you guys think? Because it is really a question whether get those 4 more threads or no.
Let's just give you a brief explanation of what Hyperthreading is and how it works, and that should help you make a better decision.
In essence, hyperthreading is a way to let two processes/threads run on a single core. The way this is achieved is by letting a secondary thread use any parts of the core that is not in use by the first/primary thread. This effectively lets the entire core be used, not just whatever parts are needed by the current thread.
So just as a highly simplistic example, on an second or third gen Core i5/7 CPU you will have SSE, SSE2, SSE3, and SSE4 instructions. Let's say that you have one thread running on a core that is using SSE and SSE3 instructions. A second thread could run and use SSE2 and SSE4 instructions, but not SSE or SSE3.
That means you have to rely a bit on the logic in the CPU to correctly match threads with cores where they can make use of unused parts of the core. It also helps if the programmer of the game/app takes hyperthreading into account during development, but sadly this is pretty rare.
Based on that, hopefully you can make a better decision about whether or not hypethreading is something that is going to be of the added value for you.