Descrição
Uma linha por alocação ativa amostrada pelo profiler de heap do jemalloc; a leitura da tabela dispara o flush de um novo perfil de heap. Apenas as threads com o profiler ativado contribuem (settingjemalloc_enable_profiler ou config jemalloc_enable_global_profiler); cada linha representa aproximadamente weight alocações semelhantes.
Colunas
trace(Array(UInt64)) — Endereços do backtrace da alocação, com o leaf frame primeiro (mesma convenção desystem.trace_log.trace). Simbolize comaddressToSymboledemangle(requerallow_introspection_functions).age_ns(UInt64) — Tempo, em nanossegundos, durante o qual a alocação esteve viva, em relação ao momento em que o perfil foi flushed.size(UInt64) — Tamanho de alocação solicitado, em bytes.usize(UInt64) — Tamanho utilizável em bytes, isto é, a size class para a qual a solicitação foi arredondada.size_class(UInt16) — Índice da size class. Faz join comsystem.jemalloc_bins.indexpara size classes pequenas.arena(UInt32) — Índice da arena a partir da qual a alocação foi atendida.thr_uid(UInt64) — id único interno do jemalloc da thread que realizou a alocação.sample_interval(UInt64) — Número médio de bytes alocados entre samples, obtido do header do perfil. É o mesmo para todas as linhas.
alloc_time— Alias paranow() - intDiv(age_ns, 1000000000).weight— Alias para1 / (1 - exp((-usize) / sample_interval)).