Abstract
RISC versus CISC wars raged in the 1980s when chip area and processor design complexity were the primary constraints and desktops and servers exclusively dominated the computing landscape. Today, energy and power are the primary design constraints and the computing landscape is significantly different: Growth in tablets and smartphones running ARM (a RISC ISA) is surpassing that of desktops and laptops running x86 (a CISC ISA). Furthermore, the traditionally low-power ARM ISA is entering the high-performance server market, while the traditionally high-performance x86 ISA is entering the mobile low-power device market. Thus, the question of whether ISA plays an intrinsic role in performance or energy efficiency is becoming important again, and we seek to answer this question through a detailed measurement-based study on real hardware running real applications. We analyze measurements on seven platforms spanning three ISAs (MIPS, ARM, and x86) over workloads spanning mobile, desktop, and server computing. Our methodical investigation demonstrates the role of ISA in modern microprocessors’ performance and energy efficiency. We find that ARM, MIPS, and x86 processors are simply engineering design points optimized for different levels of performance, and there is nothing fundamentally more energy efficient in one ISA class or the other. The ISA being RISC or CISC seems irrelevant.
- Max Baron. 2010. The single-chip cloud computer. Microprocessor Report (April 2010).Google Scholar
- Dileep Bhandarkar. 1997. RISC versus CISC: A tale of two chips. SIGARCH Computer Architecture News 25, 1 (March 1997), 1--12. Google ScholarDigital Library
- Dileep Bhandarkar and Douglas W. Clark. 1991. Performance from architecture: Comparing a RISC and a CISC with similar hardware organization. In ASPLOS’91. 310--319. Google ScholarDigital Library
- Nathan Binkert, Bradford Beckmann, Gabriel Black, Steven Reinhardt, Ali Saidi, Arkaprava Basu, Joel Hestness, Derek Hower, Tushar Krishna, Somayeh Sardashti, Rathijit Sen, Korey Sewell, Muhammad Shoaib, Nilay Vaish, Mark Hill, and David Wood. 2011. The gem5 simulator. SIGARCH Computer Architecture News 39, 2 (Aug. 2011), 1--7. Google ScholarDigital Library
- W. Lloyd Bircher and Lizy K. John. 2008. Analysis of dynamic power management on multi-core processors. In ICS’08. 327--338. Google ScholarDigital Library
- Emily Blem, Jaikrishnan Menon, and Karthikeyan Sankaralingam. 2013. Power struggles: Revisiting the RISC vs. CISC debate on contemporary ARM and x86 architectures. In HPCA’13. 1--12. Google ScholarDigital Library
- Derek Bruening, Timothy Garnett, and Saman Amarasinghe. 2003. An infrastructure for adaptive dynamic optimization. In CGO’03. 265--275. Google ScholarDigital Library
- Robert Colwell, Charles Y. Hitchcock, III, E. Jensen, H. Brinkley Sprunt, and Charles Kollar. 1985. Instruction sets and beyond: Computers, complexity, and controversy. Computer 18, 9 (Sept. 1985), 8--19. Google ScholarDigital Library
- Marc de Kruijf, Shuou Nomura, and Karthikeyan Sankaralingam. 2010. Relax: An architectural framework for software recovery of hardware faults. In ISCA’10. 497--508. Google ScholarDigital Library
- Hadi Esmaeilzadeh, Ting Cao, Yang Xi, Stephen Blackburn, and Kathryn McKinley. 2011. Looking back on the language and hardware revolutions: Measured power, performance, and scaling. In ASPLOS’11. 319--332. Google ScholarDigital Library
- Hadi Esmaeilzadeh, Adrian Sampson, Luis Ceze, and Doug Burger. 2012. Architecture support for disciplined approximate programming. In ASPLOS’12. 301--312. Google ScholarDigital Library
- Michael Ferdman, Almutaz Adileh, Onur Kocberber, Stavros Volos, Mohammad Alisafaee, Djordje Jevdjic, Cansu Kaynak, Adrian Daniel Popescu, Anastasia Ailamaki, and Babak Falsafi. 2012. Clearing the clouds: A study of emerging scale-out workloads on modern hardware. In ASPLOS’12. 37--48. Google ScholarDigital Library
- Michael J. Flynn, Chad L. Mitchell, and Johannes M. Mulder. 1987. And now a case for more complex instruction sets. Computer 20, 9 (1987), 71--83. Google ScholarDigital Library
- Venkatraman Govindaraju, Chen-Han Ho, and Karthikeyan Sankaralingam. 2011. Dynamically specialized datapaths for energy efficient computing. In HPCA’11. 503--514. Google ScholarDigital Library
- Anthony Gutierrez, Ronald G. Dreslinski, Thomas F. Wenisch, Trevor Mudge, Ali Saidi, Chris Emmons, and Nigel Paver. 2011. Full-system analysis and characterization of interactive smartphone applications. In IISWC’11. 81--90. Google ScholarDigital Library
- K. Hoste and L. Eeckhout. 2007. Microarchitecture-independent workload characterization. IEEE Micro 27, 3 (2007), 63--72. DOI: http://dx.doi.org/10.1109/MM.2007.56 Google ScholarDigital Library
- Canturk Isci and Margaret Martonosi. 2003. Runtime power monitoring in high-end processors: Methodology and empirical data. In MICRO’03. 93. Google ScholarDigital Library
- Ciji Isen, Lizy John, and Eugene John. 2009. A tale of two processors: Revisiting the RISC-CISC debate. In 2009 SPEC Benchmark Workshop. 57--76. Google ScholarDigital Library
- Changkyu Kim, Tim Kaldewey, Victor W. Lee, Eric Sedlar, Anthony D. Nguyen, Nadathur Satish, Jatin Chhugani, Andrea Di Blas, and Pradeep Dubey. 2009. Sort vs. hash revisited: Fast join implementation on modern multi-core CPUs. VLDB’09 (2009), 1378--1389. Google ScholarDigital Library
- David A. Patterson and David R. Ditzel. 1980. The case for the reduced instruction set computer. SIGARCH Comp. Arch. News 8, 6 (1980), 25--33. Google ScholarDigital Library
- Jun Rao and Kenneth A. Ross. 2000. Making B+− trees cache conscious in main memory. In SIGMOD’00. 475--486. Google ScholarDigital Library
- Ashish Venkat and Dean M. Tullsen. 2014. Harnessing ISA diversity: Design of a heterogeneous-ISA chip multiprocessor. In ISCA’14. 121--132. Google ScholarDigital Library
Index Terms
- ISA Wars: Understanding the Relevance of ISA being RISC or CISC to Performance, Power, and Energy on Modern Architectures
Recommendations
Energy-efficient and high-performance instruction fetch using a block-aware ISA
ISLPED '05: Proceedings of the 2005 international symposium on Low power electronics and designThe front-end in superscalar processors must deliver high application performance in an energy-effective manner. Impediments such as multi-cycle instruction accesses, instruction-cache misses, and mispredictions reduce performance by 48% and increase ...
A Front-end Execution Architecture for High Energy Efficiency
MICRO-47: Proceedings of the 47th Annual IEEE/ACM International Symposium on MicroarchitectureSmart phones and tablets have recently become widespread and dominant in the computer market. Users require that these mobile devices provide a high-quality experience and an even higher performance. Hence, major developers adopt out-of-order ...
Multithreading extension for Thumb ISA and decoder support
EHAC'06: Proceedings of the 5th WSEAS International Conference on Electronics, Hardware, Wireless and Optical CommunicationsDual width instruction set embedded processors such as ARM provide 16-bit instruction set in addition to the 32-bit instructions set for lower energy and memory cost. The combination of hardware multithreading technique with the 16-bit code design can ...
Comments