Slashdot Mirror


The Quest for More Processing Power

Hack Jandy writes "AnandTech has a very thorough, but not overly technical, article detailing CPU scaling over the last decade or so. The author goes into specific details on how CPUs have overcome limitations of die size, instruction size and power to design the next generation of chips. Part I, published today, talks specifically about the limitations of multiple cores and multiple threads on processors."

12 of 104 comments (clear)

  1. There can only be one by 2.7182 · · Score: 4, Funny

    the quantum computer!! Until then we'll have to suck it up with these Si things.

    1. Re:There can only be one by 2.7182 · · Score: 4, Interesting

      You mean like something useful ? How about modelling weather or geophysical phenomenon or solving Maxwell's equations ? There are a zillion things like that could be amazingly better if we could speed them up. People forget too easily about scientific computing!

  2. More power will lead to more bloat.. by klang · · Score: 4, Insightful

    That's what's been happening the last 10-15 years. Where are the indications that "time to market" and "sloppy programming" will suddenly vanish?

    1. Re:More power will lead to more bloat.. by Rinikusu · · Score: 4, Interesting

      Because, overwhelmingly, no one really cares but a handful of people. The days of hand-tweaked, ASM optimized code are pretty much over for consumer code. Yes, there will always be a market, but it is ever diminishing with the size of market expanding. To use analogies, look at furniture. Go to just about any furniture "gallery" positioned for the great American unwashed and you'll find several hundred, almost identical mass-produced fat-ass-cliners, some with machine stitched leather, some with vinyl, some with cloth, etc. Dressers and other cabinetry are stapled, nailed, screwed and glued with machine precision accuracy. The demand for hand-built, crafted furniture has dropped tremendously (and the prices for these craft pieces seems to have gone up.. ). Yes, a "hand-tweaker" coder will probably find work with a small shop somewhere, or create their own consultancy for constituents who demand that kind of programming, and chances are that coder will make quite a bit more than the average, churn and burn programmer (people like me), but for the overwhelming majority, it's overkill.

      (Here's a simple cost analysis: We can pay this guy $100k/year to do hand-optimized tweaks on this code that then becomes a liability for future maintanence if that coder dies, quits, or whatever. Or, we could add another stick of $100 RAM, and buy a new processor next year for a fraction of his cost and get a similar performance bump... The math doesn't add up...)

      --
      If you were me, you'd be good lookin'. - six string samurai
    2. Re:More power will lead to more bloat.. by EvilTwinSkippy · · Score: 4, Insightful
      Hey, I shop at Ikea. The stuff isn't event assembled. It's a flat box full of precision cut boards with bolts and one of those funky allen keys.

      Getting back to your point, there is still a market for hand-coders. With most consumer electronics, I'm talking kid's toys, alarm clocks, talking dolls, you try to shave off every penny you can in manufacturing costs. Plus, once you start a product line, you run it out for years.

      In that case, of high volume and low cost, it is easy to absorb the cost of a $100,000 hand coder. Especially if he can save you $0.10 a unit on lines where volume is measured in the millions of units.

      Besides, most of the "hand coders" I know work more in the $36,000 dollar range.

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
  3. Quick answer by LiquidCoooled · · Score: 5, Interesting

    Run old software.

    Its only new software thats sucking up all the extra processing power.

    Remember back with really sluggish 33mhz 486s etc (and a lot lower) and thinking of the ultimate computer being a whole 50mhz.
    Well now you got a computer thats over 10 times faster with practically infinate capacity.

    Fire up that old operating system and run you original software, you will be in heaven!

    --
    liqbase :: faster than paper
  4. Re:We don’t need more “power” by LiquidCoooled · · Score: 4, Informative

    Didn't the powerpc have something approaching this.
    I remember the old motorola 68000 range having 16 32bit regs for general coding, and one of the prime benefits of the ppc was the vastly greater registry capacity.

    I stopped coding assembler when I moved to x86 - what a horrible cludge of a stack stack biased platform it is.

    --
    liqbase :: faster than paper
  5. Re:We don’t need more registers by cnettel · · Score: 5, Interesting
    Ok, classic x86 is cramped and the CPU does a lot of register renaming to get around it. I don't agree that more registers would actually do that much good.

    What kind of algorithm are you imagining would benefit from 256 fields of non-vectorized data?

    Of course, those registers could be used in larger things for everything that's worthy of a local variable, but as soon as you run into a stack operation you'll either only want to push a subset of the registers to the stack, or face a harder blow of memory access times by making each function call a 2048 byte write to memory.

    Explicit encoding of parallelism, hints to branch prediction, and similar stuff, seems far more appropriate.

    Again, few single functions in an imperative language have 256 separate variables, without involving arrays of data. Unless the register file is addressable by index from another register (basically turning it into a very small addressed memory, which is whta you try to avoid with registers), you have little use for 256 of them. Take for example a trivial string iteration algorithm, most of those registers would be completely useless. The same holds true for common graph algorithms.

  6. Unbloated URL by rylin · · Score: 5, Informative

    http://www.anandtech.com/printarticle.aspx?i=2343.
    Same article without 90% of the ad-bloat.

  7. Eliminate Bottlenecks by Trolling4Columbine · · Score: 5, Interesting

    Chances are that you aren't often pushing your CPU to capacity. What I'd like to see is a better way to identify bottlenecks in my system. There's no sense pumping more power into a system if it's all going to be throttled by something like a slow hard drive.

    --
    Socialism: A feeling of discontent and resentment caused by a desire for the possessions or qualities of another.
  8. Re:We don’t need more “power” by Leroy_Brown242 · · Score: 4, Funny

    Smart power, not more power? How unamerican!

    TERRORIST!

  9. Re:We don’t need more registers by cnettel · · Score: 4, Interesting
    Read my own clarification response above yours, I intended to write that x86 is cramped by its register count (and the further restrictions on what to use when), but that 256 is very, very much.

    The Itanium has a huge file with, IIRC, even more registers in total. They are not inter-changeable, though, but the (almost) only point in that would be to keep the total number of registers down, while being flexible for most types of code. As I think that it's generally actually easier to make them separate for different execution units, that's not very interesting. Also, note that the Itanium currently has a 2-cycle (again, IIRC) register access time! They tried to be visionary, adding a huge register set, in addition to some parallelism encoding and other things I mentioned in the parent, but they traded (what seems to be) far too much to get it.

    A huge (defined as MMIX-like, not AMD64-like)register file might be great, but you need selective register pushing to stack to get away with it, unless you or the compiler are performing very aggressive inlining. What's easier, if you're doing assembler -- calling a function and put a local on the stack or writing a huge fricking implementation of your main algorithm, taking great care to use all different registers in each function inlining?