Профилирование памяти OCaml с помощью Memprof - TypeRex Utility
Моя программа использует всю доступную память, поэтому я хотел проверить, какие функции и рефераты портят мой проект. Я решил использовать Memprof, поэтому я установил их компилятор и скомпилировал свой код с помощью команды
ocamlfind ocamlopt -package xml-light unix.cmxa str.cmxa -c -g NKJPxmlbasics.ml NKJP.mli NKJP.ml test.ml
а затем запустить как предложено в учебнике
ocp-memprof --exec ./test
Но есть ошибка вместо результата:
Ошибка: не найдена информация о профилировании памяти. Возможные причины: - приложение не скомпилировано с поддержкой профилирования памяти; - приложение закрылось до выполнения какой-либо крупной сборки мусора.
Мне даже один раз удалось заставить его работать, но я не представляю, как это произошло http://memprof.typerex.org/users/97beffbaec332eb7b2a048b94f7a38cf/2015-12-15_17-33-50_ab17218e800fe0a68fc2cfa54c13bfa6_16194/index.html
Есть ли способ правильно использовать этот инструмент в этой ситуации? Что мне не хватает?
1 ответ
ocamlfind ... -c ...
не генерирует исполняемый файл Итак ./test
То, что вы работаете, вероятно, было сгенерировано предыдущей командой, возможно, без переключателя memprof.