Как я могу увидеть полный стек МВЗ в GHC?
Я почти получаю дескриптор центров затрат GHC.... это потрясающая идея, и вы можете фактически исправить утечки памяти своими инструментами профилирования. Но моя проблема в том, что информация, которую я получаю в профиле .hp, слишком усечена:
(1319)GHC.Conc.Signal.CAF 640
(1300)GHC.Event.Thread.CAF 560
(2679)hGetReplies/connect/c... 112
(2597)insideConfig/CAF:lvl2... 32
(1311)GHC.IO.Handle.FD.CAF 656
(2566)setLoggerLevels/confi... 208
(2571)configureLoggingToCon... 120
(2727)reply/Database.Redis.... 32
Как узнать, например, какой полный стек МВЗ (2566) или (2559)? Есть ли инструмент для этой или командной строки?
Ответы
Ответ 1
Передайте +RTS -L100
вашей программе, когда вы запустите ее с профилированием, и измените 100 на любое количество символов, которые вы хотите увидеть в ваших МВЗ.
Документацию можно найти в руководстве пользователя GHC, разделе "Параметры RTS для профилирования кучи" .