Подтвердить что ты не робот

Как измерить производительность приложения Java?

У меня есть многозадачное многопоточное Java-приложение с процессором, и я ищу способы измерения его производительности во время выполнения (полезно для автоматизации). Я попробовал несколько вариантов

System.currentTimeMillis();
System.nanoTime();
ThreadMXBean.getThreadCPUTime();

Первые два измерения реального времени. Последнее измеряет время процессора только для одного потока. Я хочу измерить время CPU для всех потоков, порожденных процессом.

Прежде чем воскресить старую машину и посвятить ее этой задаче, я хотел бы посмотреть, какие у меня есть варианты.

Я запускаю Linux, а зависимое от платформы решение приемлемо, но наименее желательно.

4b9b3361

Ответ 2

Попробуйте включить JVM с Dtrace. В нем есть много тестовых функций, которые помогут вам получить то, что вы хотите.