Finding Parallelism for Future EPIC Machines [abstract] (PDF)
Matthew Iyer, Chinmay Ashok, Joshua Stone, Neil Vachharajani, Daniel A. Connors, and Manish Vachharajani
Proceedings of the Fourth Workshop on Explicitly Parallel
Instruction Computer Architectures and Compiler Technology (EPIC), March 2005.
Parallelism has been the primary architectural mechanism to increase
computer system performance. To continue pushing the performance
envelope, identifying new sources of parallelism for future
architectures is critical. Current hardware exploits local
instruction level parallelism (ILP) as hardware resources and
information communicated by the instruction-set architecture (ISA)
permit. From this perspective, the Explicitly Parallel Instruction
Computing (EPIC) ISA is an interesting model for future machines as
its primary design allows software to expose analysis information to
the underlying processor for it to exploit parallelism. In this
effort, EPIC processors have been more or less successful, however the
question of how to identify (or create) additional parallelism
remains. This paper analyzes the potential of future relationships of
compilers, ISAs, and hardware resources to collectively exploit new
levels of parallelism. By experimentally studying the ILP of
applications under ideal execution conditions (e.g., perfect memory
disambiguation, infinite instruction-issue window, and infinite
machine resources), the impact of aggressive compiler optimization and
the underlying processor ISA on parallelism can be explored.
Experimental comparisons involving an Itanium-based EPIC model and an
Intel x86-based CISC (Complex Instruction Set Computing) model
indicate that the compiler and certain ISA details directly affect
local and distant instruction-level parallelism. The experimental
results also suggest promising research directions for extracting the
distant ILP.