This articleneeds additional citations forverification. Please helpimprove this article byadding citations to reliable sources. Unsourced material may be challenged and removed. Find sources: "Explicitly parallel instruction computing" – news ·newspapers ·books ·scholar ·JSTOR(October 2010) (Learn how and when to remove this message) |
Explicitly parallel instruction computing (EPIC) is a term coined in 1997 by theHP–Intel alliance[1] to describe acomputing paradigm that researchers had been investigating since the early 1980s.[2] This paradigm is also calledIndependence architectures. It was the basis forIntel andHP development of the IntelItanium architecture,[3] andHP later asserted that "EPIC" was merely an old term for the Itanium architecture.[4] EPIC permits microprocessors to execute software instructions in parallel by using thecompiler, rather than complex on-die circuitry, to control parallel instruction execution. This was intended to allow simple performance scaling without resorting to higherclock frequencies.
By 1989, researchers at HP recognized thatreduced instruction set computer (RISC) architectures were reaching a limit at oneinstruction per cycle.[clarification needed] They began an investigation into a new architecture, later namedEPIC.[3] The basis for the research wasVLIW, in which multiple operations are encoded in every instruction, and then processed by multiple execution units.
One goal of EPIC was to move the complexity of instruction scheduling from the CPU hardware to the softwarecompiler, which can do the instruction scheduling statically (with help of trace feedback information). This eliminates the need for complex scheduling circuitry in the CPU, which frees up space and power for other functions, including additional execution resources. An equally important goal was to further exploitinstruction-level parallelism (ILP) by using the compiler to find and exploit additional opportunities forparallel execution.
VLIW (at least the original forms) has several short-comings that precluded it from becoming mainstream:
EPIC architecture evolved from VLIW architecture, but retained many concepts of thesuperscalar architecture.
EPIC architectures add several features to get around the deficiencies ofVLIW:
TheEPIC architecture also includes agrab-bag of architectural concepts to increaseILP:
TheItanium architecture also addedrotating register files, a tool useful forsoftware pipelining since it avoids having to manuallyunroll and rename registers.
There have been other investigations into EPIC architectures that are not directly tied to the development of the Itanium architecture: