2.0 KiB
2.0 KiB
Allocator Throughput / RSS Comparison (Release)
環境: 1 thread, HAKMEM_WARM_TLS_BIND_C7=2, RSS は ru_maxrss (KB) を MB 換算。
Hakmem は full と larson_guard プロファイルを計測。その他は system / mimalloc の素の挙動。
| workload | allocator | ops/s | max RSS (MB) |
|---|---|---|---|
| C7-only (1024B, ws32, 200k) | hakmem-full | 44,381,807 | 29.6 |
| hakmem-bench | 44,439,813 | 7.2 | |
| hakmem-larson_guard | 48,455,082 | 28.9 | |
| mimalloc | 74,433,394 | 1.8 | |
| system | 78,514,783 | 1.6 | |
| 129–1024B (ws256, 1M) | hakmem-full | 48,895,987 | 29.6 |
| hakmem-bench | 49,226,419 | 7.2 | |
| hakmem-larson_guard | 52,327,019 | 28.8 | |
| mimalloc | 106,310,868 | 1.9 | |
| system | 95,633,188 | 1.6 | |
| 16–1024B (ws256, 1M) | hakmem-full | 48,276,749 | 29.7 |
| hakmem-bench | 48,759,807 | 7.2 | |
| hakmem-larson_guard | 50,494,992 | 28.9 | |
| mimalloc | 126,403,649 | 1.9 | |
| system | 95,361,993 | 1.6 |
所感 (現時点):
- スループットは system/mimalloc が優勢。Hakmem (full/guard) は C7 特化ワークロードで 44–48M ops/s 帯。
- bench プロファイルを「実配列縮小」版に切り替えたことで、C7-only/129–1024B/16–1024B いずれも RSS は ~29MB → ~7MB まで低減(ops/s は同レンジ)。
- RSS は system/mimalloc が圧倒的に小さい (1.6–1.9MB)。Hakmem は full/guard で ~29MB、bench 版は 7MB 前後まで圧縮できた。***