> For the complete documentation index, see [llms.txt](https://kgoralski.gitbook.io/wiki/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kgoralski.gitbook.io/wiki/performance-engineering.md).

# Performance Engineering

"**Performance engineering** encompasses the techniques applied during a [systems development life cycle](https://en.m.wikipedia.org/wiki/Systems_development_life_cycle) to ensure the [non-functional requirements](https://en.m.wikipedia.org/wiki/Non-functional_requirement) for performance (such as [throughput](https://en.m.wikipedia.org/wiki/Throughput), [latency](https://en.m.wikipedia.org/wiki/Latency_\(engineering\)), or [memory](https://en.m.wikipedia.org/wiki/Computer_memory) usage) will be met. It may be alternatively referred to as **systems performance engineering** within [systems engineering](https://en.m.wikipedia.org/wiki/Systems_engineering), and **software performance engineering** or [application performance engineering](https://en.m.wikipedia.org/wiki/Application_performance_engineering) within [software engineering](https://en.m.wikipedia.org/wiki/Software_engineering)." - Wikipedia

## Books

1. Every Computer Performance Book: How to Avoid and Solve Performance Problems  on The Computers You Work With; [Bob Wescott](https://www.amazon.com/Bob-Wescott/e/B00C7CHP34/ref=dp_byline_cont_book_1)&#x20;
2. The Practical Performance Analys&#x74;**;** [Neil Gunther](https://www.amazon.co.uk/s/ref=dp_byline_sr_book_1?ie=UTF8\&field-author=Neil+Gunther\&text=Neil+Gunther\&sort=relevancerank\&search-alias=books-uk)&#x20;
3. Systems Performance: Enterprise and the Cloud; [Gregg](https://www.amazon.com/Brendan-Gregg/e/B004GG0SEW)
4. BPF Performance Tools; [Gregg](https://www.amazon.com/Brendan-Gregg/e/B004GG0SEW)
5. Performance Solutions: A Practical Guide to Creating Responsive, Scalable Softwar&#x65;**;** [Connie U. Smith](https://www.amazon.com/Connie-U-Smith/e/B001IQXC9Q/ref=dp_byline_cont_book_1), [Lloyd G. Williams](https://www.amazon.com/s/ref=dp_byline_sr_book_2?ie=UTF8\&field-author=Lloyd+G.+Williams\&text=Lloyd+G.+Williams\&sort=relevancerank\&search-alias=books)
6. The Art of Capacity Planning: Scaling Web Resources; John Allspaw
7. Java Performance - The Definitive Guide; [Scott Oaks](https://www.amazon.com/Scott-Oaks/e/B000APH2E2)
8. Optimizing Java: Practical Techniques for Improving JVM Application Performance;  [Benjamin J Evans](https://www.amazon.com/Benjamin-J-Evans/e/B07DGL1TM4/ref=dp_byline_cont_book_1) , [James Gough](https://www.amazon.com/s/ref=dp_byline_sr_book_2?ie=UTF8\&field-author=James+Gough\&text=James+Gough\&sort=relevancerank\&search-alias=books), [Chris Newland](https://www.amazon.com/Chris-Newland/e/B07L4YL11R/ref=dp_byline_cont_book_3)
9. High Performance Browser Networking: What every web developer should know about networking and web performance; [Ilya Grigorik](https://www.amazon.com/Ilya-Grigorik/e/B00CNKCS1E/ref=dp_byline_cont_ebooks_1)
10. High-Performance Java Persistence; [Vlad Mihalcea](https://www.amazon.com/Vlad-Mihalcea/e/B01N8PGJ7E/ref=dp_byline_cont_book_1)&#x20;
11. [Go-Perf Book,](https://github.com/dgryski/go-perfbook) Thoughts on Go performance optimization, [Damian Gryski](https://twitter.com/dgryski)
12. [Performance Analysis & Tuning on Modern CPU](https://book.easyperf.net/perf_book) - Denis Bakhvalov

## Blogs

1. <http://www.brendangregg.com/blog/>
2. <https://alexanderpodelko.com/blog/>
3. <https://www.codeblueprint.co.uk/>
4. <https://thomasdullien.github.io/about/#blogs>
5. [http://perfsherpa.blogspot.com/](http://perfsherpa.blogspot.com/?m=1)
6. <https://facebookmicrosites.github.io/bpf/blog/>
7. <https://www.igvita.com/>
8. <https://travisdowns.github.io/>
9. <https://pdziepak.github.io/>
10. <https://branchfree.org/>
11. <https://lemire.me/blog/>
12. <https://mr.gy/blog/>
13. <https://blog.stgolabs.net/search/label/performance>
14. <https://mechanical-sympathy.blogspot.com/>&#x20;
15. <https://easyperf.net/notes/>

## Twitter

1. <https://twitter.com/brendangregg>
2. <https://twitter.com/mjpt777>
3. <https://twitter.com/axboe>
4. <https://twitter.com/matt_dz>
5. <https://twitter.com/dendibakh>
6. <https://twitter.com/trav_downs>
7. <https://twitter.com/PawelDziepak>
8. <https://twitter.com/halvarflake>
9. <https://twitter.com/rygorous>
10. <https://twitter.com/DrQz>
11. <https://twitter.com/geofflangdale>
12. <https://twitter.com/lemire>
13. <https://twitter.com/tuxology>
14. <https://twitter.com/giltene>
15. <https://twitter.com/kwalfridsson>
16. <https://twitter.com/matthewwarren>
17. <https://twitter.com/perfsherpa>
18. <https://twitter.com/tkadlec>
19. <https://twitter.com/patmeenan>
20. <https://twitter.com/yoavweiss>
21. <https://twitter.com/MarkZeman>
22. <https://twitter.com/apodelko>
23. <https://twitter.com/JVMPerformance>
24. <https://twitter.com/PerfBytes>
25. <https://twitter.com/go_perf>
26. <https://twitter.com/fast_code_r_us>

## Links

### Aggregators

1. <https://github.com/meteorfox/performance-engineering>
2. <https://github.com/mfleming/performance-resources/>
3. <https://github.com/andriisoldatenko/awesome-performance-testing>

### Talks

1. [code::dive conference 2014 - Scott Meyers: Cpu Caches and Why You Care](https://www.youtube.com/watch?v=WDIkqP4JbkE)
2. [Performance Matters](https://youtu.be/r-TLSBdHe1A), Emery Berger
3. [Latency SLOs Done Right](https://www.usenix.org/conference/srecon19asia/presentation/schlossnagle-latency), Theo Schlossnagle

### Courses

1. <https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-172-performance-engineering-of-software-systems-fall-2018/>
2. <http://www.perfeng.com/classic-site/seminars.htm>
3. [perf ninja](https://products.easyperf.net/perf-ninja)  and [challanges ](https://easyperf.net/contest/)- Denis Bakhvalov

### Linux

1. <http://www.brendangregg.com/blog/2020-03-08/lisa2019-linux-systems-performance.html>
2. <http://www.brendangregg.com/linuxperf.html>
3. <http://www.brendangregg.com/blog/2019-01-01/learn-ebpf-tracing.html>
4. <http://www.brendangregg.com/blog/2019-07-15/bpf-performance-tools-book.html>
5. <https://github.com/leandromoreira/linux-network-performance-parameters>
6. <https://blog.packagecloud.io/eng/2017/02/06/monitoring-tuning-linux-networking-stack-sending-data/>

### Websites

1. <http://www.spe-ed.com/classic-site/>
2. <https://sites.google.com/site/swperfengg/>

### Various

1. <https://en.m.wikipedia.org/wiki/Performance_engineering>
2. <https://www.alexanderpodelko.com/PerfDesign.html>
3. <https://developer.akamai.com/blog/2017/01/11/skills-performance-engineers>
4. <https://stackify.com/performance-engineering/>
5. <https://www.dynatrace.com/news/blog/trades-of-a-performance-engineer-in-2020/>
6. <https://opensource.com/article/19/5/life-performance-engineer>
7. <https://developers.google.com/web/fundamentals/performance/why-performance-matters>
8. <https://techbeacon.com/app-dev-testing/30-top-performance-engineering-leaders-follow-twitter>
9. <https://tangowhisky37.github.io/PracticalPerformanceAnalyst/2017/12/25/Six-Reasons-Why-You-Want-To-Be-A-Systems-Performance-Engineer/>
10. <https://www.keycdn.com/blog/https-performance-overhead>
11. <https://techbeacon.com/app-dev-testing/5-ways-learn-performance-engineering-skills>
12. <https://dzone.com/articles/skills-required-to-be-a-perfect-performance-engine>
13. <https://cloud.google.com/appengine/docs/standard/java/microservice-performance>
14. <https://www.researchgate.net/publication/313220433_Performance_Engineering_for_Microservices_Research_Challenges_and_Directions>
15. <https://www.hostingmanual.net/3-seconds-how-website-speed-impacts-visitors-sales/>
16. <http://normanmaurer.me/blog/2013/11/09/The-hidden-performance-costs-of-instantiating-Throwables/>
17. <https://pathtoperf.com/>
18. On the Impact of Memory Allocation on High-Performance Query Processing <https://arxiv.org/abs/1905.01135>
19. I/O Is Faster Than the CPU – Let’s Partition Resources and Eliminate (Most) OS Abstractions <https://penberg.org/parakernel-hotos19.pdf>
20. What Every Programmer Should Know About Memory <https://www.akkadia.org/drepper/cpumemory.pdf>
21. <https://www.nginx.com/blog/performance-tuning-tips-tricks/>
22. <https://blog.cloudflare.com/the-problem-with-event-loops/>
23. <https://www.datadoghq.com/blog/network-performance-monitoring/>
24. <https://easyperf.net/blog/2020/04/01/HW-SW-rules-of-thumb>
25. <https://youtu.be/Ho3bCIJcMcc> - Performance Analysis & Tuning on Modern CPU - Denis Bakhvalov.
