В SBCL журнал регистрации событий сборки мусора включается присваиванием значения функции:
(setf (sb-ext:gc-logfile) "c:/yar/log/gc.log")
При просмотре журнала нужно отключить перенос по словам.
Исходный текст - функция Си write_generation_stats
Расшифровка некоторых колонок:
Gen - номер поколения (больше-старше)
StaPg - start_page
UbSta - unboxed_start_page
LaSta - large_start_page
LUbSt - large_unboxed_start_page
Boxed - количество boxed страниц
Unboxed - >> unboxed >>
LB - к-во large boxed страниц
LUB - к-во large unboxed страниц
!move - количество pinned страниц (один pinned объект делает pinned всю свою страницу)
Alloc - всего байт выделено
Waste - насколько я понял, к-во байт, не выделенных приложению из памяти поколения
Trig - gc_trigger - не знаю, что это
WP - количество страниц, защищённых от записи (т.е. не имеющих указателей на более молодые данные, см. статью по ссылке в конце)
GCs - num_gc - видимо, это то же, что sb-ext:generation-number-of-gcs (см. руководство пользователя SBCL)
Mem-age - видимо, то же, что и sb-ext:generation-average-age, т.е. среднее по поколению количество раз, когда объект видел пополнение поколения более молодыми объектами, см. рук-во пользователя SBCL.
Статья, где кое-что объясняется:
https://medium.com/@MartinCracauer/generational-garbage-collection-write-barriers-write-protection-and-userfaultfd-2-8b0e796b8f7f