Instruction Scheduling - Types of Instruction Scheduling

Types of Instruction Scheduling

There are several types of instruction scheduling:

  1. Local (Basic Block) Scheduling: instructions can't move across basic block boundaries.
  2. Global scheduling: instructions can move across basic block boundaries.
  3. Modulo Scheduling: another name for software pipelining, which is a form of instruction scheduling that interleaves different iterations of a loop.
  4. Trace scheduling: the first practical approach for global scheduling, trace scheduling tries to optimize the control flow path that is executed most often.
  5. Superblock scheduling: a simplified form of trace scheduling which does not attempt to merge control flow paths at trace "side entrances". Instead, code can be implemented by more than one schedule, vastly simplifying the code generator.

Read more about this topic:  Instruction Scheduling

Famous quotes containing the words types of, types and/or instruction:

    “Our children evaluate themselves based on the opinions we have of them. When we use harsh words, biting comments, and a sarcastic tone of voice, we plant the seeds of self-doubt in their developing minds.... Children who receive a steady diet of these types of messages end up feeling powerless, inadequate, and unimportant. They start to believe that they are bad, and that they can never do enough.”
    —Stephanie Martson (20th century)

    “The American man is a very simple and cheap mechanism. The American woman I find a complicated and expensive one. Contrasts of feminine types are possible. I am not absolutely sure that there is more than one American man.”
    —Henry Brooks Adams (1838–1918)

    “I turn my gaze
    Back to the instruction manual which has made me dream of
    Guadalajara.”
    —John Ashbery (b. 1927)