All blogs / Performance / optimization
Denis Bakhvalov
Denis articles about performance analysis and more.
- Posts
- 83 from 20 Nov 2016 to 11 Nov 2024
- Posting
- now and then
- Kind
- personal blog
- Feed
- https://easyperf.net/feed.xml
2024 11
- Book Updates and Errata. Performance Analysis and Tuning on Modern CPUs (Second Edition)
- Thread Count Scaling Part 1. Introduction
- Thread Count Scaling Part 2. Blender and Clang
- Thread Count Scaling Part 3. Zstandard
- Thread Count Scaling Part 4. CloverLeaf and CPython
- Thread Count Scaling Part 5. Summary
- Memory Profiling Part 1. Introduction
- Memory Profiling Part 2. Memory Usage Case Study
- Memory Profiling Part 3. Memory Footprint with SDE
- Memory Profiling Part 4. Memory Footprint Case Study
- Memory Profiling Part 5. Data Locality and Reuse Distances | Easyperf
2022 4
2021 8
- Highlights from Twitter Spaces discussions 2021. | Easyperf
- Performance analysis and tuning challenge #5. | Easyperf
- Summary for performance challenge #4. Part 1. | Easyperf
- Summary for performance challenge #4. Part 2. | Easyperf
- Summary for performance challenge #4. Part 3. | Easyperf
- Summary for performance challenge #4. Part 4. | Easyperf
- Performance analysis and tuning challenge #4. | Easyperf
- Machine Programming. What if computers would program themselves? | Easyperf
2020 7
- Computing industry at the end of 2020 as I see it. | Easyperf
- Reflections on Writing a Book. Part 2. | Easyperf
- Reflections on Writing a Book. Part 1. | Easyperf
- Writing a Free Book From the Start. | Easyperf
- Draft of my perf book is ready! | Easyperf
- HW and SW rules of thumb. | Easyperf
- Guest post: COZ vs Sampling Profilers. | Easyperf
2019 22
- Benchmarking: compare measurements and check which is faster. | Easyperf
- Detect false sharing with Data Address Profiling. | Easyperf
- How sport helps me to recharge. | Easyperf
- Data-Driven tuning. Specialize indirect call. | Easyperf
- Data-Driven tuning. Specialize switch with one hot case. | Easyperf
- How to find expensive locks in multithreaded application. | Easyperf
- Performance analysis of multithreaded applications. | Easyperf
- Intel Processor Trace Part4. Better profiling experience. | Easyperf
- Intel Processor Trace Part3. Analyzing performance glitches. | Easyperf
- Intel Processor Trace Part2. Better debugging experience. | Easyperf
- Enhance performance analysis with Intel Processor Trace. | Easyperf
- How to get consistent results when benchmarking on Linux? | Easyperf
- Developing intuition when working with performance counters. | Easyperf
- Performance analysis and tuning challenge #3. | Easyperf
- Estimating branch probability using Intel LBR feature. | Easyperf
- Performance analysis and tuning challenge #2. | Easyperf
- Precise timing of machine code with Linux perf. | Easyperf
- Machine code layout optimizations. | Easyperf
- How to collect CPU performance counters on Windows? | Easyperf
- Performance optimization challenge #1. | Easyperf
- Top-Down performance analysis methodology. | Easyperf
- How good of a performance optimizer you are? Challenge! | Easyperf
2018 20
- Understanding IDQ_UOPS_NOT_DELIVERED performance counter. | Easyperf
- Using denormal values is slow. How to detect it? | Easyperf
- I am relocating to the US. | Easyperf
- Performance analysis vocabulary. | Easyperf
- Understanding performance events skid. | Easyperf
- Basics of profiling with perf. | Easyperf
- Improving performance by better code locality. | Easyperf
- Advanced profiling topics. PEBS and LBR. | Easyperf
- PMU counters and profiling basics. | Easyperf
- My learning resources in 2018 | Easyperf
- What optimizations you can expect from CPU? | Easyperf
- Tools for microarchitectural benchmarking. | Easyperf
- Understanding CPU port contention. | Easyperf
- Embo 2018 trip report. | Easyperf
- Store forwarding by example. | Easyperf
- MacroFusion in Intel CPUs. | Easyperf
- MicroFusion in Intel CPUs. | Easyperf
- Microbenchmarking fused instruction. | Easyperf
- Code alignment options in llvm. | Easyperf
- Code alignment issues. | Easyperf
2017 8
- Code::Dive 2017 trip report. | Easyperf
- Vectorization part7. Tips for writing vectorizable code. | Easyperf
- Vectorization part6. Multiversioning by trip counts. | Easyperf
- Vectorization part5. Multiversioning by data dependency. | Easyperf
- Vectorization part4. Vectorization Width. | Easyperf
- Vectorization part3. Compiler report. | Easyperf
- Vectorization part2. Warmup. | Easyperf
- Vectorization part1. Intro. | Easyperf