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:

    Science is intimately integrated with the whole social structure and cultural tradition. They mutually support one other—only in certain types of society can science flourish, and conversely without a continuous and healthy development and application of science such a society cannot function properly.
    Talcott Parsons (1902–1979)

    He’s one of those know-it-all types that, if you flatter the wig off him, he chatter like a goony bird at mating time.
    —Michael Blankfort. Lewis Milestone. Johnson (Reginald Gardner)

    There is in general good reason to suppose that in several respects the gods could all benefit from instruction by us human beings. We humans are—more humane.
    Friedrich Nietzsche (1844–1900)