I use perf, sysprof, trace32, visual studio profiler for profiling, but this highly depends on your environment.
These assorted links might be interesting to you:
- https://github.com/Kobzol/hardware-effects
- https://www.youtube.com/watch?v=FJJTYQYB1JQ
- https://godbolt.org/
- http://igoro.com/archive/gallery-of-processor-cache-effects/