10.4. Software-Pipelined Loops

The operation of loops within a program bears an analogy to the instruction cycle for a computer at the hardware level. Something changes for each traversal through a loop so that the loop advances and works with different source data, just as the instruction pointer advances to bring different instructions into the central processor for execution through the logical sequence of a program.

The existence of this analogy has instigated efforts to improve the efficiency of program loops by some kind of software pipelining, just as the instruction cycle is amenable to improvement through hardware pipelining. In both situations, resources must be sufficiently abundant and sufficiently independent to enable the construction ...

Get Itanium® Architecture for Programmers: Understanding 64-Bit Processors and EPIC Principles now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.