This is a repository with source files of the book "Performance Analysis and Tuning on Modern CPU" by Denis Bakhvalov, et al.
Second edition work in progress! Planned changes are outlined in the google document. The planned new table of contents is in new_toc.md.
My goal is to accumulate as much knowledge as possible from all the best experts in the industry. And of course, share that knowledge with you. Contributions are welcome.
There are many ways how you can help.
- You can author a section(s) on a topic you are an expert in. But let me know before you start.
- Small improvements are welcome without prior approval, just open a new PR.
- Feel free to propose ideas for new content.
- Reviewers with all backgrounds are needed.
Check out the discussions page to start.
For examples on how to add images, table, code listings, etc, see how-to.md.
Requirements:
- Python3. Install natsort module:
pip install natsort
. - pandoc - install version 2.9.
- install pandoc filters:
pip install pandoc-fignos pandoc-tablenos
- install
pandoc-crossref
. This one requires manual installation. I just downloaded the binary from here and copied it to the same place wherepandoc-fignos
is. - MiKTeX - check
Yes
for automatic packets installation
Run:
# Linux bash & Mac
python.exe export_book.py && pdflatex book.tex && bibtex book && pdflatex book.tex && pdflatex book.tex
# Windows Powershell
function Run-Block-With-Error($block) {
$ErrorActionPreference="Stop"
Invoke-Command -ScriptBlock $block
}
Run-Block-With-Error {python.exe export_book.py; pdflatex book.tex; bibtex book; pdflatex book.tex; pdflatex book.tex}
As a result, book.pdf
will be generated. The first compilation may be slow due to the installation of required packets.