Only now that I have been in the market for a new machine have I realised what a confusing mess this Intel iSeries of cores is. Can't get a single straight answer on the net! You would think that i3 is the worst, i5 is the middle ground and i7 is the best. But apparently that all depends, and an i5 can be better in one machine, or one type of machine, than an i7! I'm very confused, can someone explain it to me?
Doesn't help that I just bought a laptop today, was told by the sales assistant that it featured a four core i5, and a search of the device manager seemed to confirm that (four listings of a core) but a later online search of my cores code (Intel Core i5-2430M) says its only dual core, and I only have two i5 core widgets on the side of my desktop. So I'm literally clueless. Why would my manager be showing four?
And why oh why would Intel complicate things so? Surely this is going to play havok on system requirements a few years down the line??
Replies
It's four virtual cores, but with the performance of two physical ones. The upside is that when you have more than two threads you won't suffer the small penalty you would when running multiple threads on just two cores, and windows will see it as four cores.
If you were actually told that it had four cores then you have been lied to, or the sales assistant was dumb enough to believe 4 virtual cores means 4 cores.
I usually go with tom's hardware charts when looking at how fast different cpu's are, it's usually pretty accurate:
http://www.tomshardware.com/charts/desktop-cpu-charts-2010/benchmarks,112.html
I believe all i5's are dual core, but have 2 threads per-core, i7's are quad cores with 2 threads per core as well.
I got an i7 not really understanding fully the differences between that and the i5. I was a bit underwhelmed but now I've turned off hyperthreading and it's awesome. Boots twice as fast as with HT on, opens programs way faster (hard drive is the bottleneck now), runs those programs faster, games are smoother, etc.
If I even need the 8 virtual cores I can just open up the BIOS, change one setting and bam! Back to multi-core goodness.
Generally speaking, laptop i5s and i7s are either 2 or 4 cores (i7 has hyper threading meaning a 'phantom' 4/8 cores respectively)) and desktop i5 and i7 are 4 or 6 cores (i7 has hyper threading so 8 or 12 cores).
Afaik there wasn't any 2 core desktop i5s or i7s, the only difference being the hyper threading.
I was misinformed about the laptop chips too earlier this year when I bought a MacBook Pro with an i5 thinking it was a quad but actually a dual. I took it straight back and now I have the quad i7 version, and there is a noticeable difference.
For the desktop chips though, the difference is barely noticeable. I built three PC's over the last year or so, two for me and one for my Brother. They had an i7 2.4ghz (pre Sandy Bridge), an i5 2.4ghz (pre SB) and most recently a 3.0ghz i7 (SB). All had the same amount of RAM and the same GPU (well, 275s in the earlier machines and a 475 in the recent one) and the difference in performance was honestly so minor you could hardly notice it. Especially for work, the only real improvement was like a couple of fps in some graphically intensive games.
Now I only have the i7 MacBook (12GB ram, 1gb 6750 GPU) since I wanted to consolidate my work to a single machine and I never really game on the PC, it handles everything just fine and I love working this way.
Long story short, if you're going for a laptop, get the most cores possible, if you're going for a desktop, save money and go i5. I tend to associate the terms hyper threading and 6 core to the terms e-peen and quaddro fx.
Why? Hyperthreading works, I get a 30-40% increase in rendering speed with HT enabled on my ancient i7 920. It's no substitute for physical cores but it can be incredibly beneficial for rendering/baking.
EDIT: Of course, it won't do shit for general modeling or gaming. Then again, games barely take advantage of quads.
The larger the cache, the quicker the CPU can get through computations.
Not quite. That's true afaik for the older generations, but the current sandy-bridge line of cpus goes the other way. ie they removed hyper threading from the lower models but added more physical cores. So the i5 2500 has 4 actual cores, but no virtual ones, and i7 2600 has 4 actual cores as well as an additional 4 virtual ones.
Most likely because it lightened the load of pushing way too many threads on that cpu when rendering, hyperthreading would make it easier to even that load and maximize the performance.
a true core cpu would be faster even without hyperthreading, but as you noted, running a ton of threads on lots of virtual cores evens out the load more than trying to run those same amount of threads on a fewer but real cores.
Hyperthreading is good in that way as it would use cpu resources that would otherwise end up idle in scenarios where you have tons of threads, but wont net much performance in games since most games are 1-4 threads at most.
Yeah fair point, I did see a noticeable gain in offline rendering with hyper threading.
http://cpubenchmark.net/cpu_list.php
If I'm choosing between two different CPUs (all other things being equal), I just check that one out and look at its rank, and the other numbers and see if I can figure out which one performs better.
OS itself should switch between GPUs on the fly, depending on graphic tasks complexity, though.