Download Latest Version Second Edition source code.tar.gz (24.6 MB)
Email in envelope

Get an email when there's a new version of Perf Book

Home / Q1.2024
Name Modified Size InfoDownloads / Week
Parent folder
Performance.Analysis.and.Tuning.on.Modern.CPUs.Q1.2024.pdf 2024-04-02 13.1 MB
Q1.2024 source code.tar.gz 2024-03-21 13.9 MB
Q1.2024 source code.zip 2024-03-21 14.0 MB
README.md 2024-03-21 1.7 kB
Totals: 4 Items   41.0 MB 0

New Content

  • A case study about L3 cache sensitivity, contributed by @chusAB (chapter 12, pull request https://github.com/dendibakh/perf-book/pull/39). It shows how you can determine whether an application is sensitive to the size of the last-level cache (LLC). Using this information, you can make educated decisions when buying HW components for your computing systems. Similarly, you can later determine sensitivity to other factors, such as memory bandwidth, core count, and processor frequency.
  • I wrote a section about how to measure hot code footprint (chapter 11, commit https://github.com/dendibakh/perf-book/commit/2183edad8a2cf6187111c8a5b427180c30fcf1fe). Applications with large amounts of hot code usually cause pressure on the CPU front end (I-cache and TLBs). Knowing how many cache lines/pages of a program code are hot can be an additional argument for investing time into machine code layout optimizations. Thanks to @aaupov for his review and comments.
  • I wrote a new section about memory profiling. It discusses how to measure memory usage (VSZ and RSS), how to analyze heap allocations and more. (chapter 7, pull request https://github.com/dendibakh/perf-book/pull/27)
  • I've made some big updates to chapter 8. "Optimizing Memory Accesses". I wrote about some new data structure reorganization techniques that were not present in the first edition. Also, I improved two sections about dynamic memory allocation and what to do when you hit memory bandwidth limitation.
  • I have fixed ~10 TODOs. There are still ~60 items left.
  • I fixed many proofreading comments (thanks to Ciaran).

Full Changelog: https://github.com/dendibakh/perf-book/compare/Q4.2023...Q1.2024

Source: README.md, updated 2024-03-21