Как я могу увидеть полный стек центра затрат в 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 для профилирования кучи".