这些设置可在 system.settings 中查看,并由 源代码 自动生成。
memory_profiler_sample_max_allocation_size
类型
UInt64
默认值
0
以 memory_profiler_sample_probability 指定的概率,收集大小小于或等于指定值的随机内存分配。0 表示禁用。你可能需要将 max_untracked_memory 设为 0,以确保此阈值按预期生效。
memory_profiler_sample_min_allocation_size
类型
UInt64
默认值
0
以 memory_profiler_sample_probability 指定的概率,对大小大于或等于指定值的随机内存分配进行采样。0 表示禁用。你可能需要将 max_untracked_memory 设置为 0,以使此阈值按预期生效。
memory_profiler_sample_probability
类型
Float
默认值
0
对随机的内存分配和释放进行采样,并以 'MemorySample' trace_type 写入 system.trace_log。该概率适用于每次 alloc/free,与分配大小无关 (可通过 memory_profiler_sample_min_allocation_size 和 memory_profiler_sample_max_allocation_size 调整) 。请注意,只有当未跟踪内存量超过 'max_untracked_memory' 时才会发生采样。若要获得更细粒度的采样,你可能需要将 'max_untracked_memory' 设为 0。
memory_profiler_step
类型
UInt64
默认值
4194304
设置内存分析器的步长。每当查询的内存使用量增加到超过按字节数划分的下一个步长时,内存分析器都会采集分配时的 stacktrace,并将其写入 trace_log。
可能的值:
-
以字节为单位的正整数。
-
0 表示关闭内存分析器。