У меня есть многопоточное Java-приложение, интенсивно использующее процессор, и я ищу способы измерить его производительность во время выполнения (полезно для автоматизации). Я пробовал несколько вариантов
System.currentTimeMillis();
System.nanoTime();
ThreadMXBean.getThreadCPUTime();
Первые два измеряют реальное время. Последний измеряет процессорное время только для одного потока. Я хочу измерить процессорное время для всех потоков, порожденных процессом.
Прежде чем воскресить старую машину и посвятить ее этой задаче, я хотел бы посмотреть, какие у меня есть варианты.
Я запускаю Linux и Решение, зависящее от платформы, приемлемо, но наименее желательно.