An Impatient Prescott: Scheduler Improvements

Prescott can’t keep any more operations in flight (active in the pipeline) than Northwood, but because of the longer pipeline Prescott must work even harder to make sure that it is filled.

We just finished discussing branch predictors and their importance in determining how deep of a pipeline you can have, but another contributor to the equation is a CPU’s scheduling windows.

Let’s say you’ve got a program that is 3 operations long:

1. D = B + 1
2. A = 3 + D
3. C = A + B

You’ll notice that the 2nd operation can’t execute until the first one is complete, as it depends on the outcome (D) of the first operation. The same is true for the 3rd operation, it can’t execute until it knows what the value of A is. Now let’s say our CPU has 3 ALUs, and in theory could execute three adds simultaneously, if we just had this stream of operations going through the pipeline, we would only be using 1/3 of our total execution power - not the best situation. If we just upgraded from a CPU with 1 ALU, we would be getting the same throughput as our older CPU – and no one wants to hear that.

Luckily, no program is 3 operations long (even print “Hello World” is on the order of 100 operations) so our 3 ALUs should be able to stay busy, right? There is a unit in all modern day CPUs whose job it is to keep execution units, like ALUs, as busy as possible – as much of the time as possible. This is the job of the scheduler.

The scheduler looks at a number of operations being sent to the CPU’s execution cores and attempts to extract the maximum amount of parallelism possible from the operations. It does so by placing pending operations as soon as they make it to the scheduling stage(s) of the pipeline into a buffer or scheduling window. The size of the window determines the amount of parallelism that can be extracted, for example if our CPU’s scheduling window were only 3 operations large then using the above code example we would still only use 1/3 of our ALUs. If we could look at more operations, we could potentially find code that didn’t depend on the values of A, B or D and execute that in parallel while we’re waiting for other operations to complete. Make sense?

Because Intel increased the size of the pipeline on Prescott by such a large amount, the scheduling windows had to be increased a bit. Unfortunately, present microarchitecture design techniques do not allow for very large scheduling windows to be used on high clock speed CPUs – so the improvements here were minimal.

Intel increased the size of the scheduling windows used to buffer operations going to the FP units to coincide with the increase in pipeline.

There is also parallelism that can be extracted out of load and store operations (getting data out of and into memory). Let’s say that you have the following:

A = 1 + 3
Store A at memory location X


Load A from memory location X

The store operation actually happens as two operations (further pipelining by splitting up a store into two operations): a store address operation (where the data is going) and a store data operation (what the data actually is). The problem here is that the scheduler may try to parallelize the store operations and the load operation without realizing that the two are dependent on one another. Once this is discovered, the load will not execute and a performance penalty will be paid because the CPU’s scheduler just wasted time getting a load ready to execute and then having to get rid of it. The load will eventually execute after the store operations have completed, but at a significant performance penalty.

If a situation like the one mentioned above does crop up, long pipeline designs will suffer greatly – meaning that Prescott wants this to happen even less than Northwood. In Prescott, Intel included a small, very accurate, predictor to predict whether a load operation is likely to require data from a soon-to-be-executed store and hold that load until the store has executed. Although the predictor isn’t perfect, it will reduce bubbles of no-execution in the pipeline – a killer to Prescott and all long pipelined architectures.

Don’t look at these enhancements to improve performance, but to help balance the lengthened pipeline. A lot of the improvements we’ll talk about may sound wonderful but you must keep in mind that at this point, Prescott needs these technologies in order to equal the performance of Northwood so don’t get too excited. It’s an uphill battle that must be fought.

Prescott's Crystal Ball (continued) Execution Core Improvements
Comments Locked

104 Comments

View All Comments

  • terrywongintra - Monday, February 2, 2004 - link

    anybody benchmark prescott over northwood in entry-server environment? i'm installing 3 servers later by using intel 875p (s875wp1-e) entry server board n p4 2.8, need to decide prescott or northwood to use.
  • sipc660 - Monday, February 2, 2004 - link

    i don't understand why some people are bashing such a good inovation that was long overdue from intel.

    a pc that doubles as a heater and at only 100-200W power consumption.

    Let me remind you that a conventional fan heater eats up a kilowatt/hour of power.

    Think positive

    * space reduction
    * enormous power savings (pc + fan heater)
    * extremly sophisticated looking fan haeter
    * extremly safe casing. reduces burn injuries
    to pets and children.
    * finely tunable temperature settings (only need
    to overclock by small increments)
    * coupled with an lcd it features the best
    looking temperature adjustment one has ever
    witnessed on a heater
    * child proof as it features thermal shutdown
    * anyone having a laugh thus far
    * will soon feature on american idol
    the worst singers will receive one p4 E based
    unit each. That should make people
    think twice about auditioning thus making
    sure only true talent shows up.
    * gives dell new marketing potential and a crack
    at a long desired consumer heating electronic
    * amd is nowhere near this advancement in thermal
    thechnology leaving intel way ahead


    hope you enjoyed some of my thoughts

    Other than that good article and some good comments.

    on another note i don't understand why people run and fill intels pockets so intel can hide their engineering mistakes with unseen propaganda, while there is an obvious choice.

    choice is Advanced Micro Devices all until intel gets their act together.

    go amd...
  • Stlr22 - Monday, February 2, 2004 - link

    INTC - "Intel roadmap says Prescott will hit 4.2 GHz by Q1 '05. My guess is that it is already running at 4 GHz but just needs to be fine tuned to reduce the heat."


    Maybe they are trying to keep it under the 200watt mark? ;-)
  • INTC - Monday, February 2, 2004 - link

    I think CRAMITPAL must have sat on a hot Prescott and got it stuck where the sun doesn't shine - that would explain all of the yelling and screaming and friggin this and friggin that going on. "Approved mobo, approved PC case cooling system, approved heatsink & fan - and you better not use Artic Silver or else it will void your warranty..." gee - didn't we just hear that when Athlon XPs came out? It brings to mind when TechTV put their dual Athlon MP rig together and it started smoking and catching on fire when they fired it up the first time on live television during their show.

    Intel roadmap says Prescott will hit 4.2 GHz by Q1 '05. My guess is that it is already running at 4 GHz but just needs to be fine tuned to reduce the heat. I bet the experts (or self proclaimed experts such as CRAM) were betting that Northwood could not hit 3 GHz and look where it is at today. Video card GPUs today are hitting 70 degrees C plus at full load but they do fine with cooling in the same PC cases.
  • CRAMITPAL - Monday, February 2, 2004 - link

    Dealing with the FLAME THROWER's heat issues is only one aspect of Prescott's problems. The chip is a DOG and it requires an "approved Mobo" and an "approved PC case cooling system", a premo PSU cause the friggin thing draws 100+ Watts and this crap all costs money you don't need to spend on an A64 system that is faster, runs cooler, and does both 32/64 bit processing faster. How difficult is THIS to comprehend???

    Ain't no way Intel is gonna be able to Spin this one despite the obvious "press material" they supplied to all the reviewers to PIMP that Prescott was designed to reach 5 Gigs. Pigs will fly lightyears before Prescott runs at 5 Gigs.

    Time to GET REAL folks. Prescott sucks and every hardware review site politely stated so in "political speak".
  • Stlr22 - Monday, February 2, 2004 - link

    ((((((((((((CRAMITPAL)))))))))))))))




    It's ok man. It's ok. Everything will be alright.


    ;-)
  • scosta - Monday, February 2, 2004 - link

    #38 - About your "Did anyone catch the error in Pipelining: 101?".

    There is no error. The time it takes to travel the pipelane is just a kind of process delay. What matters is the rate at witch finished/processed results come out of the pipeline. In the case of the 0.5ns/10 stage pipelane you will get one finished result every 0.5ns, twice as many as in the case of the 1ns/5 stage pipeline.

    If the pipelines were building motorcycles, you woud get, respectively, 1 and 2 motorcycles every ns. And that is the point.
  • LordSnailz - Monday, February 2, 2004 - link

    I'm sure the prescotts will get hotter as the speed increases but you can't forget there are companies out there that specializes in this area. There are 3 companies that I know of that are doing research on ways to reduce the heat, for instance, they're planning on placing a piece of silicon with etch lines on top of the CPU and run some type of coolant through it. Much like the radiator concept.

    My point is, Intel doesn't have to worry about the heat too much since there are companies out there fighting that battle. Intel will just concentrate on achieving those higher speeds and the temp control solution will come.
  • scosta - Monday, February 2, 2004 - link

    You can find thermal power information in the also excelent "Aces Hardware" Prescot review here:
    [L=myurl]http://www.aceshardware.com/read.jsp?id=60000317[/l]

    In resume, we have the following Typical Thermal Power :
    P4 3.2 GHz (Northwood) - 82W
    P4E 3.2 GHz (Prescot) - 103W

    Note that, at the same clock speed and with the same or lesser performance, the Prescot dissipates 25% more power than Northwood. This means that with a similar cooling system, the Prescot has to run substancially hoter.

    As AcesHardware says,
    [Q]After running a 3DSMax rendering and restarting the PC, the BIOS reported that the 3.2 GHz Northwood was at about 45-47°C, while Prescott was flirting with 64-66°C. Mind you, this is measured on a motherboard completely exposed to the cool air (18°C) of our lab.[/Q]

    So, what will the ~5GHx Prescot dissipate? 200W ?
    Will we all be forced to run PCs with bulky, expensive, etc, criogenic cooling systems?. I for one wont. This power consumption escalation has to stop. Intel and AMD have to improve the performace of their CPUs by improving the CPU archytecture and manufacturing processes, not by trowing more and more electrical power at the problem.

    And those are my 2 cents.
  • CRAMITPAL - Monday, February 2, 2004 - link

    Prescott will never go above 3.8 Gig. even with the 3rd revision of the 90 nano process. Tejas will make it to just over 4.0 Gig. with a little luck but it won't be anything to write home about either based on current knowledge.

    Intel has fallen and can't get it up!

Log in

Don't have an account? Sign up now