Инструменты для профилирования кода OCaml - PullRequest
15 голосов
/ 08 февраля 2012

Кто-нибудь знает о программах для профилирования кода OCaml, кроме использования опции -p во время компиляции и последующего использования gprof?Я задаю этот вопрос, чтобы проверить, можно ли еще уменьшить время выборки 0,01 секунды?

Ответы [ 4 ]

8 голосов
/ 08 февраля 2012

Плохой профайлер идеально подходит для программ OCaml. Та же идея работает и для профилирующих выделений .

6 голосов
/ 09 февраля 2012

Вы также можете использовать ocaml-memprof, патч для компилятора ( 3.12.0 и 3.12 1 ), написанный Fabrice Le Fessant, который добавляет функции профилирования памяти в программы ocaml.

РЕДАКТИРОВАТЬ

Теперь у вас есть ocp-memprof, профилировщик памяти OCaml, который вы можете использовать онлайн.Это доступно на http://memprof.typerex.org.

6 голосов
/ 09 февраля 2012

Никогда не использовал, но ocamlviz - еще один вариант.

2 голосов
/ 03 июля 2015

Добавление к списку полезных ответов: в этом сообщении OCamlPro упоминается профилирование производительности (не профилирование памяти) собственного кода в Linux с использованием perf (устанавливается через пакет linux-tools в дистрибутивах, подобных Debian) .

По сути, вам просто нужно запустить:

perf record -g ./native_program arguments

Для создания perf.data файла, содержащего данные профилирования, а затем выполните

perf report -g

Чтобы увидеть результаты.

Работает лучше при использовании версии OCaml с включенными указателями кадров (например, 4.02.1+fp вместо 4.02.1 в OPAM).

...