Advantages of i7 versus i5 ?

Discussion in 'iMac' started by garycurtis, Mar 18, 2012.

  1. garycurtis macrumors 6502

    Joined:
    Sep 15, 2010
    Location:
    Los Angeles & Northern California
    #1
    There''s a new iMac coming soon. Will the i7 carry me into a longer future than the i5?

    What are the differences in the CPU and the model overall?

    Thanks
     
  2. mulo macrumors 68020

    mulo

    Joined:
    Aug 22, 2010
    Location:
    Behind you
    #2
    faster memory access afaik - and perhaps hyper threading?
     
  3. AcesHigh87 macrumors 6502a

    AcesHigh87

    Joined:
    Jan 11, 2009
    Location:
    New Brunswick, Canada
    #3
    Wirelessly posted (Mozilla/5.0 (Linux; U; Android 2.3.3; en-ca; HTC-Vivo Build/GRI40) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1)

    For the average user, there is no real difference; nothing noticeable at least. If heavy work is being done though the i7 will respond faster and has more "virtual cores" through hyper threading than the i5.
     
  4. harcosparky macrumors 68020

    Joined:
    Jan 14, 2008
    #4
    Yeah, there is always a new one coming down the road.


    What kind of work do you intend to do? Your choice should be based on that. Intel has some good resources online ( A Google search will lead you there ) to tell you the real differences and also to help you choose which one is best suited for your needs.

    FWIW: I do video and image editing, so the i7 was needed.

    ----------

    In case Google does not work where you are .....

    http://www.intel.com/consumer/products/processors/comparison.htm
     
  5. Bear macrumors G3

    Joined:
    Jul 23, 2002
    Location:
    Sol III - Terra
    #5
    Unfortunately your question can't be answered in full just yet as one would need to know which i5 and which i7 are being offered in the new iMacs.
     
  6. srf4real macrumors 68030

    srf4real

    Joined:
    Jul 25, 2006
    Location:
    paradise beach FL
    #6
    I went with i7 last summer, figuring not only will performance be better as future apps demand more resources.. but also it was the latest Apple (Intel) chip so logically will remain Mac OS compatible for the greatest amount of time from the date of purchase. If you are waiting on the new iMac, and get one with i5, you run the risk of your machine losing Apple support ten months to two years before a machine manufactured at same time running i7's.. and of course the other advantages mentioned here by others are not to be minimized. Huge difference in end user experience.;)
     
  7. leman macrumors 604

    Joined:
    Oct 14, 2008
    #7
    This is a blatant misinformation and I can't just leave it uncommented.

    Macs loose support when Apple sets a new "minimal" bar on hardware features, such as 64-bit support, support of particular operations etc. The i7 and i5 CPU are both the same generation and offer the same features. So if the curent i5 gen becomes obsolete, the i7 will be obsolete as well.

    As to the original question, the i7 CPU (i7-2600) used in the iMac is faster than the i5 CPU (i5-2400), not only because of hyper-threading (which has only situational use), but mainly because of higher clock speeds.

    If you are a "normal" user, both CPUs will do a great job and you won't be able to tell the difference between i5 and i7 when browsing or doing office work. The i7 will be substantially quicker in processor-intensive tasks like video encoding, image filter application, etc.

    As far as the future applications go, yes, the i7 will probably do a better job accommodating performance hungry software. However, if i5 struggles with particular software, the i7 will struggle with it as well. So bying the i7 for future-proofing is really the last thing you should do. You should get the i7 if it will save you more time now (for instance, by doing quicker video processing). Five years from now, even a tablet will probably be faster than the current i7 CPU ;)
     
  8. garycurtis thread starter macrumors 6502

    Joined:
    Sep 15, 2010
    Location:
    Los Angeles & Northern California
    #8
    Thank you Harcosparky and Leman. I'm retired, but thinking of going back to work. If so, I would be doing page layout for Aviation technical writing. Big books (1100 pages) but no color. So that means InDesign.

    On the home front I will lightly indulge in digital photography. As a hobby only. And I'll get a flatbed scanner to digitize perhaps 150 old rolls of B&W negatives and then print.

    The term you used, hyperthreading, is unfamiliar. Yet it is scary enough for me to assume that in 5 years I would kick myself for not having it. Especially if it is a mere $200-300 bump in price over the i5 model.
     
  9. leman macrumors 604

    Joined:
    Oct 14, 2008
    #9
    Hyperthreading is Intel's technology which virtualizes each of the CPU cores, allowing them to act as two cores to the OS. This way, your 4-core CPU is seen by the OS as a 8-core CPU. Obviously, the performance is not as high as using real 8 cores, but higher than just using 4 cores. Of course, this only applies to software which can actually effectively utilize 8 cores. You can read up on it here: http://en.wikipedia.org/wiki/Hyper-threading


    I am sure that for InDesign, the i5 CPU will do a great job and I don't think that InDesign will benefit that much from having hyperthreading. In the best case, the i7 will perform the tasks a split second faster than the i5 - you have to decide whether its worth extra 200$ for you. As to future proofing, don't even bother. In five to six years time you should really be getting a new computer, as even the cheapest model will be faster than the most expensive computer now.

    Now, myself, I always get the maxed out iMac. But there are reasons for it: I usually sell the computer at the end of the year and get a new one (and the i7 usually has a better resale price) + I do lots of heavy statistical simulations, where the extra punch + virtual cores of the i7 saves me lots of time.
     
  10. garycurtis thread starter macrumors 6502

    Joined:
    Sep 15, 2010
    Location:
    Los Angeles & Northern California
    #10
    What about RAM? The i5 comes with 4gb, I believe.

    And will having Windows OS on board entail need for features?
     
  11. Hellhammer Moderator

    Hellhammer

    Staff Member

    Joined:
    Dec 10, 2008
    Location:
    Finland
    #11
    Both come with 4GB (2x2GB).

    Depends on what you will do in Windows but Windows alone won't benefit from Hyper-Threading.
     
  12. bawbac macrumors 65816

    bawbac

    Joined:
    Mar 2, 2012
    Location:
    Seattle, WA
    #12
  13. garycurtis thread starter macrumors 6502

    Joined:
    Sep 15, 2010
    Location:
    Los Angeles & Northern California
    #13
    Thanks. I'm getting a better feel for the parameters of matching equipment to tasks through reading all this. My feeling about the i7 as a possible barrier to obsolescence stems from turning 70 and hoping (perhaps unrealistically) that this will be my last computer.

    Ending an arc that began with an IBM XT running DOS. But as someone wrote, in 5 years I can look for a slightly used more current Mac. Now why didn't I think of that?
     
  14. leman macrumors 604

    Joined:
    Oct 14, 2008
    #14
    You still will be owning lots of computers, 70 is not so bad ;)
     
  15. derbothaus macrumors 601

    derbothaus

    Joined:
    Jul 17, 2010
    #15
    There is only 1 i7 option for iMac. It is faster ALL the time, under any circumstance. Higher clock+Higher Turbo+twice the thread execution. Single thread or multi-threaded, video game or photoshop. All faster with i7. There are some benchmarks with i5-2500 keeping pace and/or beating by 1 frame. The i7 would do that as well if you turn off the hyper-threading. And Apple sells i7-2400 only. 300MHz lower clock. The i5-2500 closely matches the i7's clock at 3.30GHz.
     
  16. soldierblue macrumors 6502

    Joined:
    Mar 23, 2009
    #16
    Essentially the i7 has hyper-threading and an additional 2mb of L3 cache over the i5. Real-world it's negligible unless you're encoding or running something that's heavily threaded.

    Note that a hyper-threading 'core' is roughly 30% of the performance of a real core.
     
  17. Melbourne Park, Mar 18, 2012
    Last edited: Mar 18, 2012

    Melbourne Park macrumors regular

    Joined:
    Mar 5, 2012
    #17
    It all depends ...

    i spoke to Apple on the phone, and the fellow claimed that the card was the engine for video encoding. Actually with the i5/i7 generation, the CPU handles such encoding better. And even for a PC with twin graphic cards, the i5 will encode video quicker than very powerful graphic cards.

    Interestingly, on some games on a PC, the i5 is faster than an i7. And I am talking about reviewed performance, on the clock alterable i5 k2500 v the i7 k2600. Because - on a PC, the ultimate clock rate is what matters on games, and the bottleneck on game performance is the graphic cards (typically two of them running in parrallel).

    By the way, retail prices for a single CPU purchase, are about, in Australia including 10% sales tax:

    Intel Core i5 2500
    3.3GHz (3.7GHz Turbo), Quad Core, Intel HD2000 Graphics at 850MHz (1100MHz Turbo), 6MB L3 Cache. Please be aware that this processor is only compatible with LGA 1155 motherboards. Retail box including fan, heatsink and thermal paste.
    $205.00

    Intel Core i5 2500K
    3.3GHz (3.7GHz Turbo), Quad Core, unlocked multiplier, Intel HD3000 Graphics at 850MHz (1100MHz Turbo), 6MB L3 Cache. Please be aware that this processor is only compatible with LGA 1155 motherboards. Retail box including fan, heatsink and thermal paste. KitGuru: "In simple CPU...
    $215.00

    Intel Core i7 2600
    3.4GHz (3.8GHz Turbo), Quad Core with HyperThreading, Intel HD2000 Graphics at 850MHz (1350MHz Turbo), 8MB L3 Cache. Please be aware that this processor is only compatible with LGA 1155 motherboards. Retail box including fan, heatsink and thermal paste.
    $295.00

    Intel Core i7 2600K
    3.4GHz (3.8GHz Turbo), Quad Core with HyperThreading, unlocked multiplier, Intel HD3000 Graphics at 850MHz (1350MHz Turbo), 8MB L3 Cache. Please be aware that this processor is only compatible with LGA 1155 motherboards. Retail box including fan, heatsink and thermal paste. ...
    $315.00

    Intel Core i7 2700K
    3.5GHz (3.9GHz Turbo), Quad Core with HyperThreading, unlocked multiplier, Intel HD3000 Graphics at 850MHz (1350MHz Turbo), 8MB L3 Cache. Please be aware that this processor is only compatible with LGA 1155 motherboards. Retail box including fan, heatsink and thermal paste.
    $335.00

    so we should really only have to pay an extra $100 for an i7.

    On the iMac, the fastest i5 is quicker than the fastest i7, at encoding iTunes songs. Because iTunes doesn't multi-thread much (if at all).

    I am interested in video, and for that, the i7 will be faster. From my research, on a current iMac, more than 40% faster. Which is a lot. The i7 on such apps (and there are only a few of them IMO) challenges low end Xeon MacPros of a couple of years ago.

    For me, the downside of the i7 is price; and also whether it will generate more heat. IMO the enemy of the iMac form factor, is getting rid of heat. And I therefor worry about the high end graphic cards - 6790 v 6770, and also, the CPU heat.
     
  18. srf4real macrumors 68030

    srf4real

    Joined:
    Jul 25, 2006
    Location:
    paradise beach FL
    #18
    Um, thanks for tearing me a new one.. but I read your response to agree with mine as far as most goes. And if Apple decides that hyperthreading must be required to run OS 11 in 2014 which chip is outdated first?:cool:
     
  19. leman macrumors 604

    Joined:
    Oct 14, 2008
    #19
    Well not really ;) My point is that the i7 CPU will be too slow for virtually any task the i5 CPU is too slow as well, because the difference between both is not big. So future proofing is a moot point here.

    As to HT being prerequisite to run some OS X... this will never happen. Simply because it does not make any sense.
     
  20. LachlanH macrumors regular

    Joined:
    Oct 5, 2011
    #20
    I tend to agree with the sentiment that if an i5 is obsolete, so is an i7.

    Yes the i7 is better and faster, but not THAT much. Come Haswell it's not expecting too much for the mid range i5 to blow away a high end Sandy Bridge
    i7. Just look back to the P4's, pretty much any current Intel CPU from an i3 onwards would destroy a 2.4ghz P4 pretty much as much as it would destroy a 3.4ghz P4.The real differences comes in the generations, not so much the gap between a mid range and a high end of the same generation.
     
  21. throAU macrumors 601

    throAU

    Joined:
    Feb 13, 2012
    Location:
    Perth, Western Australia
    #21
    Hyperthreading is the big one, along with more cache.

    With dvd encoding using handbrake, i see 100% cpu use of all 8 virtual cores on my i7-2720. I suspect for video encoding, it is quite a bit faster than a quad core i5... 2hr dvd to appletv2 format takes around 20 minutes or so...
     
  22. itsmrjon, Mar 19, 2012
    Last edited: Mar 19, 2012

    itsmrjon macrumors regular

    Joined:
    Jun 11, 2011
    Location:
    Chicago
    #22
    Ah buzzwords. So I'm going to demonstrate the effect of hyperthreading on some simple codes (I mainly did this for my own amusement, but it seems like it would help this thread out).

    Lets say you have code that is heavily switch dependent, such as the Game of Life. There is little numerical computation but many conditional statements,
    Code:
    	subroutine update(this)
    		class(elements) :: this
    		type(elements)  :: that
    		integer         :: i,j
    		integer         :: nb
    		
    		!Allocate the temp grid
    		allocate(that%grid(this%localRow,this%localCol))
    		!Copy them
    		call this%copy(that)
    		!Evaluate the kittehs
    		do i=1,this%localRow
    			do j=1,this%localCol
    				nb = this%buddies(i,j)
    				if(this%grid(i,j) == 1) then
    					if((nb < 2) .or. (nb > 3)) then
    						that%grid(i,j) = 0
    					else 
    						that%grid(i,j) = 1
    					end if
    				else
    					if(nb==3) that%grid(i,j) = 1
    				end if
    			end do
    		end do
    		!Copy back into the one we care about
    		call that%copy(this)
    		!throw away the temp
    		deallocate(that%grid)
    	end subroutine update
    
    Where this%buddies points to a function full of additional conditional statements. You can see that most processes will be idle in this situation.
    Now let's run these routines in both serial and parallel. We'll use OpenMP for shared memory parallelization.
    Code:
    Fortran $ time ./run_serial 
    real	0m45.991s
    user	0m45.954s
    sys	0m0.016s
    Fortran $ 
    
    Now we run the code with OpenMP using 4 threads and dynamic load balancing (with strip partitioning of our domain).
    Code:
    Fortran $ time ./run_parallel 
    
    real	0m13.968s
    user	0m52.922s
    sys	0m0.150s
    Fortran $ 
    
    We see a 3.29x speedup in total execution time. Not bad for some fast crappy programming.
    We continue to now schedule 8 threads with OpenMP
    Code:
    Fortran $ time ./run_parallel 
    
    real	0m11.887s
    user	1m20.975s
    sys	0m0.392s
    Fortran $ 
    
    This yields a 3.87x speedup. Much closer to a linear speedup for 4 cores (which would be 4x). However note that although we used 8 threads, we will not see an 8x speedup, but we did recover quite a fair bit of that idle time on each core.

    This clearly shows that Hyperthreading is not snake oil. However, let me show a caveat to hyperthreading.

    Let's say we write a second code that is computationally intensive. For example we wish to square numbers in a pipeline. (I'm not going to outline the code, but basically it's just every thread squares a number and passes it along to the next thread). The numbers will be double precision and generated at random (prior to execution of the program).

    So now we run this with 4 threads yielding:
    Code:
    $ time ./a.out 
    
    real	0m6.829s
    user	0m1.560s
    sys	0m5.638s
    
    Now lets compare this against the same program run with 8 threads (taking advantage of hyperthreading).
    Code:
    $ time ./a.out 
    
    real	0m17.537s
    user	0m3.571s
    sys	0m16.510s
    
    Ah a rather surprising result! We've actually slowed the program down by 0.38x! Obviously I chose this problem because I knew this would happen, but that is besides the point.

    So, back to the question of is Hyperthreading this super amazing thing that makes it all worth while? Not necessarily. If you have a use for it, it's great and can realize some decent benefits. But, over-scheduling a processor can also have some detrimental effects in terms of speed. (read http://agner.org/optimize/blog/read.php?i=6&v=t)

    Also know that although hyperthreading is typically advertised as being able to handle 2 threads per core, this definitely does not mean that you will ever see an 8x speedup. In computationally intensive applications, such as the ones I write, we tend to avoid it all together because it typically only yields a slow down.

    -------------------
    Now back to the question at hand. Is the i7 faster? yes. Is it worth it? Well, that's up to you. Will it carry you farther into the future? Probably not. Let me elaborate on the farther into the future premise. Back in the day when CPU speed was scaling nicely, getting a faster processor would have been logical. However now, much of the improvements do not deal with processor speed, but rather actual changes to the architecture. For example, the new sandy bridge xeons leave my xeons in the dust! But wait, my xeons have HT and a higher clock speed (and turbo speed) then the new xeons! This is similar to the argument of 'is more horsepower better?' And for those of us that watch top gear, we know that is not always the case. There are so many other aspects that can be improved that quite frankly, the entire line of chips will be outdated at about the same time.

    Onto the mater of direct comparison of i5 and i7, I have an i7 iMac as well as an i5 iMac. I have run LINPACK on both, and I can tell you that the i7 is ~20% faster than the i5. (4 threads vs 4 threads, it is slower when using HT because of the conundrum I posed above).
    I can also tell you that my xeon cluster is over 1000% faster than my i7 iMac. But for all intensive purposes, that would not yield you any benefit because it can't run any of the software you intend on using.

    What it comes down to is purely what do you want out of it.
    Go to the store, play with the computers for an hour as if you were at home. If the i5 suits your needs when you use it, then by all means buy it. If you decide that you wish to have the i7 instead, then go for it! Much of what you read on these forums is irrelevant because we are not you, and cannot tell you what is best for you.

    Typically, in these situations I recommend 'bang for the buck' choices. What will give you the most noticable difference per $. Today, one of the largest bottlenecks in home computers are the hard drives. If you save money on the processor, you could potentially upgrade to an SSD instead. I guarantee you a good SSD will make a much more noticeable difference in day to day computing tasks (such as opening huge documents like you mentioned, or opening closing applications/photos).

    In the world of electronics, you will be outdated within 6 months. The question is, how productive can you be in those 6 months relative to the amount you invested.
     
  23. itsmrjon macrumors regular

    Joined:
    Jun 11, 2011
    Location:
    Chicago
    #23
    Also I didn't like the fact the timings were all messed up in my second example, so I went ahead and wrote another simple computationally intensive example.

    Monte Carlo approximation of an integral (I chose e^{ (x^{2} ) } ) using 40000000 samples

    Serial timing:
    Code:
    real	0m8.943s
    user	0m8.930s
    sys	0m0.012s
    
    12 core timing (dual 6-core xeons)
    Code:
    real	0m1.844s
    user	0m9.325s
    sys	0m0.106s
    
    12 core + HT timing
    Code:
    real	0m2.260s
    user	0m9.682s
    sys	0m0.381s
    
    Once again you see that HT slows the computation down. (I ran this on the cluster because I don't have some of the necessary libraries installed on my mac... that's why it's 12 core timing)
     
  24. garycurtis thread starter macrumors 6502

    Joined:
    Sep 15, 2010
    Location:
    Los Angeles & Northern California
    #24
    Two more questions from the OP. With Mac Expo coming up in April, will prices on existing i5 iMacs drop following new model introductions? I want to time my purchase.

    And does anyone know what the standard MUG group discount is?
     
  25. tuccillo macrumors member

    Joined:
    Feb 8, 2012
    #25
    Interesting stuff. This is consistent with my observations on Westmere-based clusters. For parallel codes (typically MPI based, not OpenMP thread based), using HTs can yield a benefit if the code is bottenecked on the arithmetic functional units and message passing overhead of running 2x the number of MPI processes is small. If memory bandwidth is the issue or the parallel scaling when running 2x the number of MPI processes is bad, then performance will be slower. For the majority of computationally intensive parallel applications, HTs are not an advantage. What you are running matters. On our clusters, we have HTs enabled but you are free to use or not use them. Logically, CPUs 0-11 are the "real" CPUs and CPUs 12-23 are the "Hyperthreads".

     

Share This Page