Skip to main content

EPIC Processors

  • Reference work entry
Encyclopedia of Parallel Computing

Definition

Explicitly Parallel Instruction Computing (EPIC) refers to architectures in which features are provided to facilitate compiler enhancements of instruction-level parallelism (ILP) in all programs, while keeping hardware complexity relatively low. Using ILP-enhancement techniques such as speculation and predication, the compiler identifies the operations that can execute in parallel in each cycle and communicates a plan of execution to the hardware.

Discussion

Introduction

The performance of modern processors is dependent on their ability to execute multiple instructions per cycle. In the early 1990s, instruction-level parallelism (ILP) was the only viable approach to achieve higher performance without rewriting software. Programs for ILP processors are written in a sequential programming model, with the compiler and hardware being responsible for automatically extracting the parallelism in the program. Explicitly Parallel Instruction Computing(EPIC) refers to architectures...

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 1,600.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 1,799.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Bibliography

  1. Allen JR, Kennedy K, Porterfield C, Warren J (1983) Conversion of control dependence to data dependence. In: Proceedings of the 10th ACM Symposium on Principles of Programming Languages, pp 177–189, January 1983

    Google Scholar 

  2. Gallagher DM, Chen WY, Mahlke SA, Gyllenhaal JC, Hwu WW (1994) Dynamic memory disambiguation using the memory conflict buffer. In: Proceedings of 6th International Conference on Architectural Support for Programming Languages and Operating Systems, pp 183–193, October 1994

    Google Scholar 

  3. Intel Corporation (2006) Intel Itanium architecture software developer’s manual. Application architecture, vol 1, Revision 2.2. Santa Clara, CA

    Google Scholar 

  4. August DI, Connors DA, Mahlke SA, Sias JW, Crozier KM, Cheng B, Eaton PR, Olaniran QB, Hwu WW (1998) Integrated predication and speculative execution in the IMPACT EPIC architecture. In: Proceedings of the 25th International Symposium on Computer Architecture, pp 227–237, June 1998

    Google Scholar 

  5. Rau BR (1994) Iterative modulo scheduling: an algorithm for software pipelining loops. In: Proceedings of the 27th International Symposium on Microarchitecture, pp 63–74, December 1994

    Google Scholar 

  6. Schlansker MS, Rau BR (2000) “EPIC: An architecture for instruction-level parallel processors,” Technical Report HPL-1999-111, Compiler and Architecture Research HP Laboratories Palo Alto, February 2000

    Google Scholar 

  7. Schlansker MS, Rau BR (2000) EPIC: Explicitly Parallel Instruction Computing. Computer 33(2):37–45

    Article  Google Scholar 

  8. Fisher JA (1983) Very long instruction word architectures and the ELI-512. In: ISCA ’83: Proceedings of the 10th Annual International Symposium on Computer Architecture, ACM, New York, pp 140–150

    Google Scholar 

  9. Beck GR, Yen DW, Anderson TL (1993) The Cydra 5 minisupercomputer: architecture and implementation. J Supercomput 7:143–180

    Article  Google Scholar 

  10. Mahlke SA, Chen WY, Hwu WW, Rau BR, Schlansker MS (1992) Sentinel scheduling for VLIW and superscalar processors. In: Proceedings of the 5th International Conference on Architectural Support for Programming Languages and Operating Systems, pp 238–247, October 1992

    Google Scholar 

  11. Ebcioglu K (1988) Some design ideas for a VLIW architecture for sequential-natured software. In: Cosnard M, Barton MH, Vanneschi M (eds) Parallel Processing (Proc. IFIP WG 10.3 Working Conference on Parallel Processing, Pisa, Italy), pp 3–21, North Holland, 1988

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer Science+Business Media, LLC

About this entry

Cite this entry

August, D.I., Raman, A. (2011). EPIC Processors. In: Padua, D. (eds) Encyclopedia of Parallel Computing. Springer, Boston, MA. https://doi.org/10.1007/978-0-387-09766-4_6

Download citation

Publish with us

Policies and ethics