I'm about 250 pages into The Art of Computer Systems Performance Analysis : Techniques for Experimental Design, Measurement, Simulation, and Modelingby R.K. Jain. I can recommend this book based on that 250 pages alone. It's a great course on how to design your performance analysis of a system. It covers everything from capacity planning basics to common performance optimizations. But my favorite chapter so far is about the games people play with benchmarking and how to detect them. Alternately, you could use them yourself, but I digress. The writing is very clear and the math is totally approachable.
There is a ton of really practical know-how on things like:
- How to pick which “average” to use
- How to create workload mixes that will produce statistically significant results
- A really good refresher course on stats, random variables, common distributions, etc.
- An overview of clustering techniques for grouping histogram data points.
Anyways, if you are new to the field of performance engineering, definitely check it out.