2009-07-10 5 views
0

Я бегу JVM компании IBM (JDK 5.0) с параметрами -XrunHprof: Формат = бКак измерить процессор над головами, введенной HPROF профилировщика, прикрепленного к JVM

Я знаю, что инструментирование с JVM hprof включает в себя нарушение эффективности. Я хотел бы количественно определить это наказание. Я знаю, что один из способов сделать это - снять профилирование hprof и запустить приложение, а также сравнить использование процессора в обоих случаях. Но этот вариант недоступен для меня

У меня работает приложение, которое оснащено hprof. Мне нужно выяснить, какой% процессора потребляется самим профилем hprof.

ответ

1

У меня нет жестких цифр, но я всегда считал, что работает под hprof как порядка (или двух) медленнее, чем без. Это очень зависит от того, что вы отслеживаете: более крупные фреймы стека, например, увеличивают накладные расходы.

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

+0

Да и нет - это полностью зависит от того, проводятся ли измерения с помощью выборки (быстро) или путем подсчета (медленного). Сэмплинг часто несет скромные накладные расходы (например, + 50% времени исполнения); подсчет может иметь порядок (+ 500%). По крайней мере, это был мой опыт. – StaxMan

1

Вы на самом деле не говорите, что у вас есть проблема с производительностью, которую вы пытаетесь решить путем профилирования. Но на случай, если вы это сделаете, you might try this.