Profiling to within microseconds and processor instructions

Day 2 /  / Track 3  /  RU / Hardcore. Really hard and demanding talk, you'll understand only if you're an experienced engineer.

This talk is about the peculiarities of profiling such small parts of an app which strongly influence the characteristics of the entire application. What should we do if the compiled code runs 0.0001 sec, but we want to speed it up to 0.00005 sec? We’ll look at the bounds of Java profilers and the way to get the most of perf, a standard Linux profiler. Then we’ll check which hardware features of processors can help us to get a representative profile even faster. Finally, we’ll discuss the Intel Processor Trace technology which lets you make another step towards the accuracy of profiling and reconstruct the running process of a program part.

Download presentation
Sergey Melnikov
Sergey Melnikov

Works on a high-frequency trading application at Raiffeisenbank since 2016. Basically, is into speeding up the existing and writing the new low-latency Java code. Before that worked at Intel as an engineer for the compilers' performance for C / C ++ / FORTRAN languages.