Java Cup
Inside Java

News and views from members of the Java team at Oracle

One Giant Leap: 95% Less Sampling Cost

The public standard in Linux for reading thread CPU time is the computational equivalent of printing a spreadsheet to paper, then scanning it with a camera, only to digitize it back into a spreadsheet just to read a value. It works, but it destroys throughput. I recently integrated a patch into OpenJDK that replaces this legacy logic with direct calls. The result is a 20x speedup for thread monitoring of user CPU time. Here is the story behind the optimization and why "everything is a file" isn't the right philosophy for performance.


More at https://norlinder.nu/posts/User-CPU-Time-JVM/.