Подобный HPjmeter графический инструмент для просмотра-agentlib:hprof профилирование вывода

Я обнаружил, почему компиляция Realm внутри нашего «большого» проекта привела к сбою компилятора Swift. По-видимому, виновником является опция «Thread Sanitizer» внутри секции RUN для текущей схемы.

Как представляется, в новой версии компилятора Swift есть проблема с некоторыми файлами, как отмечается в некоторой «известной проблеме», которую наша команда упустила из виду (позор нам (?)!).

*Known Issues
    The Swift compiler may crash during a build when the Thread Sanitizer is enabled. (48719789)

    Workaround: Disable Thread Sanitizer in the Scheme Editor’s Diagnostics tab.

Простое отключение параметра «Очистка потока» делает Swift счастливым, и он больше не падает.

Теперь давайте надеяться, что Apple исправит это, как только сможет. Привет.

10
задан David Citron 1 June 2009 в 20:45
поделиться

3 ответа

Ваш Профилировщик Java Набора может считать снимки hprof (я не уверен если только для профилирования памяти или для ЦП также). Это не свободно, но является безусловно лучшим профилировщиком Java, которого я когда-либо использовал. Это представляет результаты ясным, интуитивным способом и работает хорошо на больших наборах данных. Документация также довольно хороша.

6
ответ дан 4 December 2019 в 02:52
поделиться

Я не на 100% уверен, что это будет работать (это кажется, что будет), и я не уверен, что это покажет его в формате, который Вы хотите..., но Вы думали о VisualVM?

Я полагаю, что это откроет получающийся файл.

0
ответ дан 4 December 2019 в 02:52
поделиться

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

После этого вы можете создать файл дампа, зная pid jvm для анализа

jmap -dump:format=b,file=<filename>.hprof <jvm_pid> 

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

Редактировать:

Отвечая на комментарий: Вы правы, это больше похоже на поиск утечек для Ява. Из-за проблем с производительностью я играл с JRat для небольших проектов. Он показывает время, затрачиваемое на метод, количество вызовов метода, иерархию вызовов и т. Д. Единственная проблема заключается в том, что, насколько я знаю, он не поддерживает файлы .hprof. Чтобы использовать его, вам нужно выполнить вашу программу, добавив аргумент VM

-javaagent:<path>/shiftone-jrat.jar

. Это создаст каталог с профилем, захваченным инструментом. Затем выполните

 java -jar shiftone-jrat.jar

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

0
ответ дан 4 December 2019 в 02:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: