Skip to main content

Enhancing the Top-Down Microarchitectural Analysis Method Using Purchasing Power Parity Theory

  • Conference paper
  • First Online:
Languages and Compilers for Parallel Computing (LCPC 2020)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 13149))

  • 385 Accesses

Abstract

The Top-Down method makes it possible to identify bottlenecks as instructions traverse the CPU’s pipeline. Once bottlenecks are identified, incremental changes to the code can be made to mitigate the negative effects bottlenecks might have in performance. This is an iterative process that could potentially result in a more optimal use of CPU resources. It can be difficult to compare bottleneck metrics of the same program generated by different compilers running on the same system. Different compilers could potentially generate different instructions, arrange the instructions in different order, and require different number of cycles to execute the program. Ratios with relatively similar values could hide valuable information that could be used to identify differences in magnitude and influence of bottlenecks. To amplify magnitude differences of bottleneck metrics, we use the cycles required to complete the program as a reference point. We can then quantify the relative difference the effect a bottleneck has when compared with the bottleneck of the reference compiler. This study’s proposed approach is based on the Purchasing Power Parity theory, which is used by economists to compare the purchasing power of different currencies by comparing similar products. We show that this approach can give us more information on how effective each compiler is in using the CPU’s architectural features by comparing their respective bottlenecks. For example, using conventional methods, our measurements show that for the 363.swim benchmark, BackEnd Bound rates for GCC4 was 0.949, and 0.956 for GCC6 and GCC7 respectively. However, using the PPP normalization approach, we showed that there were differences of \(55.3\%\) for GCC6 and \(54.9\%\) for GCC7 over GCC4.

B. Swartz—Independent Researcher.

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 54.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight 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

References

  1. The big mac index. https://www.economist.com/news/2020/01/15/the-big-mac-index

  2. The gnu compiler collection website. http://gcc.gnu.org

  3. Intel microarchitecture code named skylake events. https://download.01.org/perfmon/index/skylake.html

  4. Intel vtune profiler. https://software.intel.com/content/www/us/en/develop/tools/vtune-profiler.html

  5. Intel vtune profiler performance analysis cookbook. https://software.intel.com/content/www/us/en/develop/documentation/vtune-cookbook/top.html

  6. The latte index: Using the impartial bean to value currencies. https://www.visualcapitalist.com/latte-index-currencies/

  7. perf: Linux profiling with performance counters. http://perf.wiki.kernel.org

  8. pmu-tools: Intel pmu profiling tools. https://github.com/andikleen/pmu-tools

  9. Spec omp2012 documentation. https://spec.org/omp2012/Docs/index.html

  10. Spec omp2012 results. https://www.spec.org/omp2012/results/

  11. Ayers, G., Ahn, J.H., Kozyrakis, C., Ranganathan, P.: Memory hierarchy for web search. In: 2018 IEEE International Symposium on High Performance Computer Architecture (HPCA), pp. 643–656 (2018)

    Google Scholar 

  12. Cabezas, V.C., Püschel, M.: Extending the roofline model: bottleneck analysis with microarchitectural constraints. In: 2014 IEEE International Symposium on Workload Characterization (IISWC). pp. 222–231 (2014)

    Google Scholar 

  13. Clements, K.: Currencies, Commodities and Consumption. Cambridge University Press, Cambridge (2013)

    Book  Google Scholar 

  14. Jöreskog, K., Wold, H.: Systems under indirect observation: causality, structure, prediction. No. no. 139, pt. 2 in Contributions to Economic Analysis, North-Holland (1982)

    Google Scholar 

  15. Laurenzano, M.A., Tiwari, A., Cauble-Chantrenne, A., Jundt, A., Ward, W.A., Campbell, R., Carrington, L.: Characterization and bottleneck analysis of a 64-bit armv8 platform. In: 2016 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), pp. 36–45 (2016)

    Google Scholar 

  16. McKenney, P.E.: Differential profiling. In: MASCOTS 1995. Proceedings of the Third International Workshop on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems, pp. 237–241 (1995)

    Google Scholar 

  17. Müller, M.S., et al.: SPEC OMP2012 — an application benchmark suite for parallel systems using OpenMP. In: Chapman, B.M., Massaioli, F., Müller, M.S., Rorro, M. (eds.) IWOMP 2012. LNCS, vol. 7312, pp. 223–236. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-30961-8_17

    Chapter  Google Scholar 

  18. Williams, S., Waterman, A., Patterson, D.: Roofline: an insightful visual performance model for multicore architectures. Commun. ACM 52(4), 65–76 (2009)

    Google Scholar 

  19. Yasin, A.: A top-down method for performance analysis and counters architecture. In: 2014 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), pp. 35–44 (2014)

    Google Scholar 

  20. Yasin, A., Ben-Asher, Y., Mendelson, A.: Deep-dive analysis of the data analytics workload in cloudsuite. In: 2014 IEEE International Symposium on Workload Characterization (IISWC), pp. 202–211 (2014)

    Google Scholar 

  21. Yasin, A., Haj-Yahya, J., Ben-Asher, Y., Mendelson, A.: A metric-guided method for discovering impactful features and architectural insights for skylake-based processors. ACM Trans. Archit. Code Optim. 16(4) (2019). https://doi.org/10.1145/3369383

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yectli A. Huerta .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2022 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Huerta, Y.A., Swartz, B., Lilja, D.J. (2022). Enhancing the Top-Down Microarchitectural Analysis Method Using Purchasing Power Parity Theory. In: Chapman, B., Moreira, J. (eds) Languages and Compilers for Parallel Computing. LCPC 2020. Lecture Notes in Computer Science(), vol 13149. Springer, Cham. https://doi.org/10.1007/978-3-030-95953-1_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-95953-1_12

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-95952-4

  • Online ISBN: 978-3-030-95953-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics