у вас є kcachegrind, як інструменти для профілювання для Mac [закрито]


99

Хто-небудь може розповісти мені про інструменти, які ви маєте для профілювання, як kcachegrind wingrind valgrind для mac платформи.

Я не думаю, що це працює над Mac, я також швидко перевіряю це.


Я намагаюсь профайлювати php / javascript-кодом, тому більше цікавлюсь тими профілями. Дякуємо в будь-якому випадку за ваші вклади.
indianwebdevil

1
Я думаю, що більшість браузерів постачаються з власними інтерпретаторами Javascript, але Safari використовує JavascriptCore, який виставлений на всій операційній системі, і тому річ, яка майже напевно запускає вміст сценарію Javascript в інших місцях, таких як Cheetah3D. Якщо ви включите меню "Розвиток" у налаштуваннях, то там є профіль JavaScript.
Томмі

Дивіться також: stackoverflow.com/questions/5426799 / ...
kenorb

Відповіді:


134

Я в кінцевому підсумку використовував qcachegrind на OSX. Його можна встановити заварюванням

brew install qcachegrind

або, щоб увімкнути підтримку graphviz :

brew install qcachegrind --with-graphviz

Що в цій програмі чудово, це те, що я успішно завантажив кеш-графінг на 6,1 ГБ на свій MacBook Pro! Досить стрункі!


9
brew updateперш ніж робити це запобігає дивну erros :)
GROSSER

3
brew install graphvizякщо ви хочете кілька гарних графіків викликів.
Нгок Фам,

2
Мені довелося накреслити крапку, щоб змусити колграфи працювати sudo ln -s / usr / local / bin / dot / usr / bin / dot
Джон Крамліч

Це працювало на мене без проблем! Дякую!
Răzvan Ciocănel

1
від цього, blog.josephscott.org/2013/07/03/… в коментарях, щоб обійти захист системи, щоб використовувати крапку: від @Motrin: Це більше не працює в OSX El Capitan завдяки захисту інтеграції системи: sudo ln - s / usr / local / bin / dot / usr / bin / dot Обхід: $ cd /Applications/qcachegrind.app/Contents/MacOS $ mv qcachegrind qcachegrind.bin $ echo '#! / bin / bash export PATH = ”$ PATH : / usr / local / bin ”$ (dirname $ 0) /qcachegrind.bin exit 0 '> qcachegrind $ chmod + x qcachegrind Потім запустіть qcachegrind, як завжди.
тросеман

60

Спробуйте комбінацію вбивць qcachegrind + Graphviz.

Він швидко встановлюється за допомогою заварки, що приємно.

Ознайомтеся з цими інструкціями, в основному встановіть їх через:

brew install qcachegrind

яка завантажить інші залежності, такі як qtі graphviz.


13
Зараз існує "варити встановлення qcachegrind", де формула заснована на цьому блозі. Хоча він (atm) не встановлює /Applications/QCachegrind.app, а лише двійковий файл qcachegrind.
DTest

Ще один корисний пост: blog.jcmultimedia.com.au/2014/03/…
Jazzo

15

І valgrind, і kcachegrind доступні для Mac OS X.

Ви можете встановити їх за допомогою MacPorts :

sudo port install valgrind kcachegrind

Я спробував встановити макпорти та зробив порт sudo, встановивши valgrind kcachegrind. Це була помилка для обох додатків ------------------- Попередження: Не знайдено індексів! Ви синхронізували свої вихідні індекси? Помилка: Порта kcachegrind не знайдено ---------------- жодної підказки, що відбувається
indianwebdevil

1
Порт kcachegrind офіційно був покинутий 2 роки тому :( trac.macports.org/log/trunk/dports/devel/kcachegrind/Portfile
Potatoswatter

@Potatoswatter У MacPorts є багато портів, які не мають конкретного технічного обслуговування. Це означає, що порт більше не може бути встановлений.
raimue

1
@Raim Це означає, що порт тепер встановлює програмне забезпечення за два роки.
Potatoswatter

15

Ви можете встановити KCacheGrind за допомогою MacPorts .

Існують також такі варіанти, як:

Дивіться також: Чи існує альтернатива KCacheGrind для Mac Os X там?


8

Webgrind працює в PHP і може читати кешгринд виводу XDebug. Наразі він не пропонує весь функціонал KCacheGrind, але він дуже простий в установці і, схоже, відновив активність.


7

MacCallGrind - це напівкомерційна альтернатива, доступна для Mac. Я експериментував з безкоштовною версією, яка обмежена файлами шліфування 3 Мб. Це майже еквівалентно WinCacheGrind з точки зору функціональності.


Зараз суто комерційний.
Віктор Сергієнко

2

Apple постачає інструменти для контролю за розподілом часу виконання та пошуку витоків, Shark для явного профілювання та Guard Malloc (безпосередньо вбудований у Xcode) для налагодження розподілу пам'яті. Усі вони є частиною інструментів для розробників.


1
В останніх випусках OS X, Shark тепер вбудований у Instruments.
rcoup

1

valgrind доступний для Mac. Якщо ви будуєте додаток для какао, ви можете використовувати інструменти, які постачаються з XCode, такі як витоки, вони дуже хороші.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.