skip to main content
10.1145/3123939.3124541acmconferencesArticle/Chapter ViewAbstractPublication PagesmicroConference Proceedingsconference-collections
research-article
Public Access

Estimating and understanding architectural risk

Published:14 October 2017Publication History

ABSTRACT

Designing a system in an era of rapidly evolving application behaviors and significant technology shifts involves taking on risk that a design will fail to meet its performance goals. While risk assessment and management are expected in both business and investment, these aspects are typically treated as independent to questions of performance and efficiency in architecture analysis. As hardware and software characteristics become uncertain (i.e. samples from a distribution), we demonstrate that the resulting performance distributions quickly grow beyond our ability to reason about with intuition alone. We further show that knowledge of the performance distribution can be used to significantly improve both the average case performance and minimize the risk of under-performance (which we term architectural risk). Our automated framework can be used to quantify the areas where trade-offs between expected performance and the "tail" of performance are most acute and provide new insights supporting architectural decision making (such as core selection) under uncertainty. Importantly it can do this even without a priori knowledge of an analytic model governing that uncertainty.

References

  1. A. R. Alameldeen and D. A. Wood. 2003. Variability in architectural simulations of multi-threaded workloads. In The Ninth International Symposium on High-Performance Computer Architecture, 2003. HPCA-9 2003. Proceedings. 7--18. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Muhammad Shoaib Bin Altaf and David A. Wood. 2017. LogCA: A High-Level Performance Model for Hardware Accelerators. In Proceedings of the 44th Annual International Symposium on Computer Architecture (ISCA '17). ACM, New York, NY, USA, 375--388. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Michael Armbrust, Armando Fox, Rean Griffith, Anthony D. Joseph, Randy Katz, Andy Konwinski, Gunho Lee, David Patterson, Ariel Rabkin, Ion Stoica, and Matei Zaharia. 2010. A View of Cloud Computing. Commun. ACM 53, 4 (April 2010), 50--58. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Omid Azizi, Aqeel Mahesri, Benjamin C. Lee, Sanjay J. Patel, and Mark Horowitz. 2010. Energy-performance Tradeoffs in Processor Architecture and Circuit Design: A Marginal Cost Analysis. In Proceedings of the 37th Annual International Symposium on Computer Architecture (ISCA '10). ACM, New York, NY, USA, 26--36. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. M. Bhadauria, V. M. Weaver, and S. A. McKee. 2009. Understanding PARSEC performance on contemporary CMPs. In 2009 IEEE International Symposium on Workload Characterization (IISWC). 98--107. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Shekhar Borkar. 2007. Thousand Core Chips: A Technology Perspective. In Proceedings of the 44th Annual Design Automation Conference (DAC '07). ACM, New York, NY, USA, 746--749. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. James Bornholt, Todd Mytkowicz, and Kathryn S. McKinley. 2014. Uncertain<T>: A First-order Type for Uncertain Data. In Proceedings of the 19th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS '14). ACM, New York, NY, USA, 51--66. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. G. E. P. Box and D. R. Cox. 1964. An Analysis of Transformations. Journal of the Royal Statistical Society. Series B (Methodological) 26, 2 (1964), 211--252. http://www.jstor.org/stable/2984418Google ScholarGoogle ScholarCross RefCross Ref
  9. David Brooks, Vivek Tiwari, and Margaret Martonosi. 2000. Wattch: A Framework for Architectural-level Power Analysis and Optimizations. In Proceedings of the 27th Annual International Symposium on Computer Architecture (ISCA '00). ACM, New York, NY, USA, 83--94. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. C.L. Philip Chen and Chun-Yang Zhang. 2014. Data-intensive applications, challenges, techniques and technologies: A survey on Big Data. Information Sciences 275 (2014), 314 -- 347.Google ScholarGoogle ScholarCross RefCross Ref
  11. Kwang-Ting Tim Cheng and Dmitri B. Strukov. 2012. 3D CMOS-memristor Hybrid Circuits: Devices, Integration, Architecture, and Applications. In Proceedings of the 2012 ACM International Symposium on International Symposium on Physical Design (ISPD '12). ACM, New York, NY, USA, 33--40. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Eric S. Chung, Peter A. Milder, James C. Hoe, and Ken Mai. 2010. Single-Chip Heterogeneous Computing: Does the Future Include Custom Logic, FPGAs, and GPGPUs?. In Proceedings of the 2010 43rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO '43). IEEE Computer Society, Washington, DC, USA, 225--236. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. K. Constantinides, O. Mutlu, and T. Austin. 2008. Online design bug detection: RTL analysis, flexible mechanisms, and evaluation. In 2008 41st IEEE/ACM International Symposium on Microarchitecture. 282--293. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. J. A. Cunningham. 1990. The use and evaluation of yield models in integrated circuit manufacturing. IEEE Transactions on Semiconductor Manufacturing 3, 2 (May 1990), 60--71.Google ScholarGoogle ScholarCross RefCross Ref
  15. Christophe Dubach, Timothy Jones, and Michael O'Boyle. 2007. Microarchitectural Design Space Exploration Using an Architecture-Centric Approach. In Proceedings of the 40th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 40). IEEE Computer Society, Washington, DC, USA, 262--271. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Hadi Esmaeilzadeh, Emily Blem, Renee St. Amant, Karthikeyan Sankaralingam, and Doug Burger. 2011. Dark Silicon and the End of Multicore Scaling. In Proceedings of the 38th Annual International Symposium on Computer Architecture (ISCA '11). ACM, New York, NY, USA, 365--376. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Songchun Fan, Seyed Majid Zahedi, and Benjamin C. Lee. 2016. The Computational Sprinting Game. In Proceedings of the Twenty-First International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS '16). ACM, New York, NY, USA, 561--575. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. H. D. Foster. 2015. Trends in functional verification: A 2014 industry study. In 2015 52nd ACM/EDAC/IEEE Design Automation Conference (DAC). 1--6. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. M. Guevara, B. Lubin, and B. C. Lee. 2013. Navigating heterogeneous processors with market mechanisms. In 2013 IEEE 19th International Symposium on High Performance Computer Architecture (HPCA). 95--106. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. M. Guevara, B. Lubin, and B. C. Lee. 2014. Strategies for anticipating risk in heterogeneous system design. In 2014 IEEE 20th International Symposium on High Performance Computer Architecture (HPCA). 154--164.Google ScholarGoogle Scholar
  21. John L. Gustafson. 1988. Reevaluating Amdahl's Law. Commun. ACM 31, 5 (May 1988), 532--533. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. A. Hartstein and Thomas R. Puzak. 2002. The Optimum Pipeline Depth for a Microprocessor. In Proceedings of the 29th Annual International Symposium on Computer Architecture (ISCA '02). IEEE Computer Society, Washington, DC, USA, 7--13. http://dl.acm.org/citation.cfm?id=545215.545217 Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. M. D. Hill and M. R. Marty. 2008. Amdahl's Law in the Multicore Era. Computer 41, 7 (July 2008), 33--38. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. M. Hosomi, H. Yamagishi, T. Yamamoto, K. Bessho, Y. Higo, K. Yamane, H. Yamada, M. Shoji, H. Hachino, C. Fukumoto, H. Nagao, and H. Kano. 2005. A novel nonvolatile memory with spin torque transfer magnetization switching: spinram. In IEEE InternationalElectron Devices Meeting, 2005. IEDM Technical Digest. 459--462.Google ScholarGoogle Scholar
  25. Intel. 2017. Intel Processor Pricing. https://www.intc.com/investor-relations/investor-education-and-news/cpu-price-list. (2017). Accessed: 2017-04-03.Google ScholarGoogle Scholar
  26. Engin Ïpek, Sally A. McKee, Rich Caruana, Bronis R. de Supinski, and Martin Schulz. 2006. Efficiently Exploring Architectural Design Spaces via Predictive Modeling. In Proceedings of the 12th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS XII). ACM, New York, NY, USA, 195--206. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. N. E. Jerger, A. Kannan, Z. Li, and G. H. Loh. 2014. NoC Architectures for Silicon Interposer Systems: Why Pay for more Wires when you Can Get them (from your interposer) for Free?. In 2014 47th Annual IEEE/ACM International Symposium on Microarchitecture. 458--470. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Stanley Kaplan and B. John Garrick. 1981. On The Quantitative Definition of Risk. Risk Analysis 1, 1 (1981), 11--27.Google ScholarGoogle ScholarCross RefCross Ref
  29. I. Koren and Z. Koren. 1998. Defect tolerance in VLSI circuits: techniques and yield analysis. Proc. IEEE 86, 9 (Sep 1998), 1819--1838.Google ScholarGoogle ScholarCross RefCross Ref
  30. C. Lam. 2008. Cell Design Considerations for Phase Change Memory as a Universal Memory. In 2008 International Symposium on VLSI Technology, Systems and Applications (VLSI-TSA). 132--133.Google ScholarGoogle ScholarCross RefCross Ref
  31. Abraham Lee. 2014. Real-time latin-hypercube-sampling-based Monte Carlo Error Propagation. https://github.com/tisimst/mcerpGoogle ScholarGoogle Scholar
  32. B Lee and David Brooks. 2006. Statistically rigorous regression modeling for the microprocessor design space. In ISCA-33: Workshop on Modeling, Benchmarking, and Simulation.Google ScholarGoogle Scholar
  33. Benjamin C. Lee and David Brooks. 2008. Efficiency Trends and Limits from Comprehensive Microarchitectural Adaptivity. In Proceedings of the 13th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS XIII). ACM, New York, NY, USA, 36--47. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Benjamin C. Lee and David M. Brooks. 2006. Accurate and Efficient Regression Modeling for Microarchitectural Performance and Power Prediction. In Proceedings of the 12th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS XII). ACM, New York, NY, USA, 185--194. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. B. C. Lee and D. M. Brooks. 2007. Illustrative Design Space Studies with Microarchitectural Regression Models. In 2007 IEEE 13th International Symposium on High Performance Computer Architecture. 340--351. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Benjamin C. Lee, David M. Brooks, Bronis R. de Supinski, Martin Schulz, Karan Singh, and Sally A. McKee. 2007. Methods of Inference and Learning for Performance Modeling of Parallel Applications. In Proceedings of the 12th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP '07). ACM, New York, NY, USA, 249--258. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Benjamin C. Lee, Jamison Collins, Hong Wang, and David Brooks. 2008. CPR: Composable Performance Regression for Scalable Multiprocessor Models. In Proceedings of the 41st Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 41). IEEE Computer Society, Washington, DC, USA, 270--281. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. S. Li, J. H. Ahn, R. D. Strong, J. B. Brockman, D. M. Tullsen, and N. P. Jouppi. 2009. McPAT: An integrated power, area, and timing modeling framework for multi-core and manycore architectures. In 2009 42nd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO). 469--480. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. X. Liang and D. Brooks. 2006. Mitigating the Impact of Process Variations on Processor Register Files and Execution Units. In 2006 39th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO'06). 504--514. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. G. H. Loh, Y. Xie, and B. Black. 2007. Processor Design in 3D Die-Stacking Technologies. IEEE Micro 27, 3 (May 2007), 31--48. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Advait Madhavan, Timothy Sherwood, and Dmitri Strukov. 2014. Race Logic: A Hardware Acceleration for Dynamic Programming Algorithms. In Proceeding of the 41st Annual International Symposium on Computer Architecuture (ISCA '14). IEEE Press, Piscataway, NJ, USA, 517--528. http://dl.acm.org/citation.cfm?id=2665671.2665747 Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Mark Oskin, Frederic T. Chong, and Matthew Farrens. 2000. HLS: Combining Statistical and Symbolic Simulation to Guide Microprocessor Designs. In Proceedings of the 27th Annual International Symposium on Computer Architecture (ISCA '00). ACM, New York, NY, USA, 71--82. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. A. Rahimi, L. Benini, and R. K. Gupta. 2016. Variability Mitigation in Nanometer CMOS Integrated Systems: A Survey of Techniques From Circuits to Software. Proc. IEEE 104, 7 (July 2016), 1410--1448.Google ScholarGoogle ScholarCross RefCross Ref
  44. S. R. Sarangi, B. Greskamp, R. Teodorescu, J. Nakano, A. Tiwari, and J. Torrellas. 2008. VARIUS: A Model of Process Variation and Resulting Timing Errors for Microarchitects. IEEE Transactions on Semiconductor Manufacturing 21, 1 (Feb 2008), 3--13.Google ScholarGoogle ScholarCross RefCross Ref
  45. JÃijrgen Schmidhuber. 2015. Deep learning in neural networks: An overview. Neural Networks 61 (2015), 85 -- 117. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. David W. Scott. 2008. Kernel Density Estimators. John Wiley Sons, Inc., 125--193.Google ScholarGoogle Scholar
  47. T. Sherwood, E. Perelman, G. Hamerly, S. Sair, and B. Calder. 2003. Discovering and exploiting program phases. IEEE Micro 23, 6 (Nov 2003), 84--93. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Dmitri B. Strukov, Gregory S. Snider, Duncan R. Stewart, and R. S. Williams. 2008. The missing memristor found. Nature 453, 7191 (May 01 2008), 80--3. https://search.proquest.com/docview/204473846?accountid=14522 Copyright - Copyright Nature Publishing Group May 1, 2008; Last updated - 2014-03-19; CODEN - NATUAS.Google ScholarGoogle ScholarCross RefCross Ref
  49. Xian-He Sun and Yong Chen. 2010. Reevaluating Amdahl's law in the multicore era. J. Parallel and Distrib. Comput. 70, 2 (2010), 183 -- 188. Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. SymPy Development Team. 2016. SymPy: Python library for symbolic mathematics. http://www.sympy.orgGoogle ScholarGoogle Scholar
  51. M Mitchell Waldrop. 2016. The chips are down for Moore's law. Nature 530, 7589 (2016), 144--147.Google ScholarGoogle Scholar
  52. D. H. Woo, D. H. Woo, D. H. Woo, D. H. Woo, H. H. S. Lee, H. H. S. Lee, H. H. S. Lee, and H. H. S. Lee. 2008. Extending Amdahl's Law for Energy-Efficient Computing in the Many-Core Era. Computer 41, 12 (Dec 2008), 24--31. Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. L. Yavits, A. Morad, and R. Ginosar. 2014. The effect of communication and synchronization on Amdahl's law in multicore systems. Parallel Comput. 40, 1 (2014), 1 -- 16. Google ScholarGoogle ScholarDigital LibraryDigital Library
  54. Seyed Majid Zahedi and Benjamin C. Lee. 2014. REF: Resource Elasticity Fairness with Sharing Incentives for Multiprocessors. In Proceedings of the 19th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS '14). ACM, New York, NY, USA, 145--160. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Estimating and understanding architectural risk

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in
        • Published in

          cover image ACM Conferences
          MICRO-50 '17: Proceedings of the 50th Annual IEEE/ACM International Symposium on Microarchitecture
          October 2017
          850 pages
          ISBN:9781450349529
          DOI:10.1145/3123939

          Copyright © 2017 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 14 October 2017

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article

          Acceptance Rates

          Overall Acceptance Rate484of2,242submissions,22%

          Upcoming Conference

          MICRO '24

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader