Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Why not more cores in today's CPUs?

  1. Nov 21, 2009 #1

    Vanadium 50

    User Avatar
    Staff Emeritus
    Science Advisor
    Education Advisor
    2017 Award

    Perhaps someone can explain this to me.

    An i7 has a transistor count of 731M. A Pentium has a transistor count of 3M. So in principle, Intel could build a 200 core processor today. Each core would be no "smarter" than a Pentium, but that's pretty much all you need.

    Now, I recognize that this is extreme, and such a processor would be bottlenecked by memory bandwidth, but the basic idea seems sound - gain throughput by putting more, less capable, cores on the chip: 20 or 25 Pentium 4's seems not to be outside the realm of possibility.

    Why don't we see this on the market?
  2. jcsd
  3. Nov 21, 2009 #2


    User Avatar
    Gold Member

    I thought we did? I know our lab had a 35 processor "supercomputer" that were all parallel mac G4's back in the day.
    I think the construction of such a thing, while useful, is not useful on a consumer level. And as such, while they DO exist (thats what supercomputers are)

    so they do it, but its expensive to build and cool. 32 processors is still a LOT of heat.
  4. Nov 21, 2009 #3

    Vanadium 50

    User Avatar
    Staff Emeritus
    Science Advisor
    Education Advisor
    2017 Award

    There are many parallel clusters. I'm talking about a single chip - allocating the feature count differently.

    You do bring up a good point about heat, though.
  5. Nov 21, 2009 #4
    Too many bottlenecks on consumer level motherboards and devices, and the heat problem. There are already ridiculously sized cooling devies on existing motherboards. As an aside, click here to see Mark Russinovich running Windows 7 on a 256-processor computer (not a processor with 256 cores).
  6. Nov 21, 2009 #5


    User Avatar

    Staff: Mentor

    256-processors... I don't think my room is large enough for Windows 7 machine, I will stick to my XP.
  7. Nov 21, 2009 #6
    LoL. Seriously, Windows 7 is more efficient than XP at memory management and core management, so if you get a chance, try it out. Unlike Vista, it does not assume you have a PC with a fast graphics processor, and loses or replaces most of the background services that make Windows Vista respond like molasses to simple commands. If you're running it on a laptop, Windows 7 also has better power management (it is designed to run efficiently on netbooks, as opposed to XP which has no optimizations for such low resource devices).
    I'm running 7 on a 8-year old desktop PC and a 5-year old laptop and multitask much faster than the snail that was Vista, and I have the additional user interface features and hardware management that is not present in XP.
  8. Nov 21, 2009 #7
    intel built an 80 core CPU, but it comes with a new set of problem:


  9. Nov 21, 2009 #8
    But GPU graphics cards can surpass that in computation:

  10. Nov 21, 2009 #9


    User Avatar
    Science Advisor
    Gold Member

    Graphics cards jumped on the "massively parallel" bandwagon several years ago now. Take for example ATI's new top of the line card, the Radeon 5870-

    The card has 1,600 parallel processing units, albeit simple in form when compared to a primary CPU. When used on software optimized for full parallel operation, 2-order of magnitude increases in speed are possible. ATI's definition of a "processing unit" differs somewhat from nVidia, but suffice to say with a mere 512 processors the nVidia card will be pretty ridiculous.

    Keep in mind the FLOPS quoted for graphics cards are usually single-precision calculations, while CPU's may be preforming double-precision. This difference can make comparisons difficult.
  11. Nov 23, 2009 #10
    I'm no expert, but if you built a cpu out of 200 pentium cores its total clock would not be faster than the individual pentium chip itself. In regards to this, I think it is more important to have a chip with higher clock speeds rather than parallel cores. Since todays cpus seem to have hit a limit at around 3.2 ghz, the introduction of more cores was there to advance the system past the clock limitations.

    Hardware wise it is better to have a 3.1 ghz duel core cpu than a 2.4 ghz quad core considering many programs still don't benefit from a duel core cpu or quad core let alone any N-core cpu.
  12. Nov 23, 2009 #11
    When will we see a CPU for a personal computer with TFLOP performance? I don't understand why graphics cards have so many more FLOPS than a CPU has.
  13. Nov 23, 2009 #12


    User Avatar
    Science Advisor
    Homework Helper

    Because they are highly parrallelized, they can o a lot of FLOPS if you want the same FLOP applied to 6 or 256 memory locations at the same time. If you want a different FLOP applied in each case they are slow.

    It's like the difference between a printer, that is slow but you can have each new character printed differently, and a printing press that can print an entire page in the time it takes to pritn one character - but you have to have all the characters preset.

    The difficulty of putting more cores onto a single chip is the I/O (apart form how to program the thing) - if they all share the same memory bus then each core's access to RAM is 200x slower while it waits for it's turn - making memory about as fast as disk access. to get round this you have to put a lot of cache onto the chip so that each core's data is already on board, this is what uses most of the i&s Transistor count - it has a huge amount of L1 cache.
    The other alternative is to put separate buses, but that means a chip a lot more pins - which is tricky given that an i7 socket already has 1360.
    Last edited: Nov 23, 2009
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook