Allocator benchmark report

Suite core-throughput-v1; source 68ccee0e47bbb4052d2827556ff6db175b740743; runner github-hosted. Intervals are informational.

Throughput

Per-scenario absolute throughput bars for all four allocators
ScenarioThreadsAllocatorMedianNoisy
tiny-fixed-161tcmalloc7545880.6423569685no
tiny-fixed-161jemalloc8381079.507855639no
tiny-fixed-161upstream-mimalloc8405573.962893752no
tiny-fixed-161mimalloc-pprof8093420.401583627no
tiny-fixed-16physical-coretcmalloc3544273.3674406996no
tiny-fixed-16physical-corejemalloc7117755.644597217no
tiny-fixed-16physical-coreupstream-mimalloc6655510.65074441no
tiny-fixed-16physical-coremimalloc-pprof7267868.684057941no
tiny-fixed-641tcmalloc3305786.2204059935no
tiny-fixed-641jemalloc3450477.9581925627no
tiny-fixed-641upstream-mimalloc3456407.850158668no
tiny-fixed-641mimalloc-pprof3415923.129937476no
tiny-fixed-64physical-coretcmalloc3214459.4695795737no
tiny-fixed-64physical-corejemalloc4738531.372034719no
tiny-fixed-64physical-coreupstream-mimalloc5027957.057297653no
tiny-fixed-64physical-coremimalloc-pprof4685951.292301319no
small-log-mixed1tcmalloc4057315.2595148245yes
small-log-mixed1jemalloc4197092.146816096yes
small-log-mixed1upstream-mimalloc4269846.567264064yes
small-log-mixed1mimalloc-pprof4140132.841496667yes
small-log-mixedphysical-coretcmalloc3660176.6948335613yes
small-log-mixedphysical-corejemalloc5584525.071150948yes
small-log-mixedphysical-coreupstream-mimalloc5302833.9226538865yes
small-log-mixedphysical-coremimalloc-pprof5518555.113877075yes
small-log-mixed2x-logicaltcmalloc5414286.777691724yes
small-log-mixed2x-logicaljemalloc6276090.05845438yes
small-log-mixed2x-logicalupstream-mimalloc6117645.033378492yes
small-log-mixed2x-logicalmimalloc-pprof6163733.155713252yes
medium-log-mixed1tcmalloc16223.604983686302yes
medium-log-mixed1jemalloc16216.593567307129yes
medium-log-mixed1upstream-mimalloc16530.36167208393yes
medium-log-mixed1mimalloc-pprof16417.19265310052yes
medium-log-mixedphysical-coretcmalloc27771.910530345012yes
medium-log-mixedphysical-corejemalloc28351.059833494226yes
medium-log-mixedphysical-coreupstream-mimalloc27684.913318571984yes
medium-log-mixedphysical-coremimalloc-pprof28015.021337561782yes
large-objects1tcmalloc3832.421117772495yes
large-objects1jemalloc2691.933726203141yes
large-objects1upstream-mimalloc3916.6201184748325yes
large-objects1mimalloc-pprof3875.415393958711yes
large-objects2tcmalloc6543.06792873167yes
large-objects2jemalloc4702.545798223904yes
large-objects2upstream-mimalloc6924.250066723562yes
large-objects2mimalloc-pprof6973.4083358262415yes
batch-lifo1tcmalloc61827.24403813347no
batch-lifo1jemalloc62284.24095668758no
batch-lifo1upstream-mimalloc62177.408740354345no
batch-lifo1mimalloc-pprof61793.43536023248no
batch-lifophysical-coretcmalloc111284.3419060189no
batch-lifophysical-corejemalloc120032.9546595969no
batch-lifophysical-coreupstream-mimalloc114453.50896751203no
batch-lifophysical-coremimalloc-pprof114809.72516984223no
batch-fifo1tcmalloc62349.16946663458no
batch-fifo1jemalloc63391.65821105359no
batch-fifo1upstream-mimalloc63489.991843992706no
batch-fifo1mimalloc-pprof62905.09039775657no
batch-fifophysical-coretcmalloc112168.60537923934no
batch-fifophysical-corejemalloc120287.0679902261no
batch-fifophysical-coreupstream-mimalloc115093.24478120616no
batch-fifophysical-coremimalloc-pprof114974.70074972053no
cross-thread-producer-consumer2tcmalloc84906.69688838985yes
cross-thread-producer-consumer2jemalloc78412.92133113567no
cross-thread-producer-consumer2upstream-mimalloc79088.92685435926no
cross-thread-producer-consumer2mimalloc-pprof83586.55115389734no
cross-thread-producer-consumerphysical-coretcmalloc80812.75012833974yes
cross-thread-producer-consumerphysical-corejemalloc82241.27354850987yes
cross-thread-producer-consumerphysical-coreupstream-mimalloc81548.12487637867no
cross-thread-producer-consumerphysical-coremimalloc-pprof81928.5370812447yes
random-ownershipphysical-coretcmalloc79470.49827224389yes
random-ownershipphysical-corejemalloc83471.13476595549no
random-ownershipphysical-coreupstream-mimalloc80671.41002144033no
random-ownershipphysical-coremimalloc-pprof79801.90428675117yes
realloc-geometric1tcmalloc91622.47528901536yes
realloc-geometric1jemalloc92904.71392374512yes
realloc-geometric1upstream-mimalloc92352.1575526906yes
realloc-geometric1mimalloc-pprof94274.53457684632yes
realloc-geometricphysical-coretcmalloc154682.54397129707yes
realloc-geometricphysical-corejemalloc171547.07462143438yes
realloc-geometricphysical-coreupstream-mimalloc167407.91530428533yes
realloc-geometricphysical-coremimalloc-pprof168706.26016336898yes
calloc-zero1tcmalloc550182.3578601687yes
calloc-zero1jemalloc555756.1954376169yes
calloc-zero1upstream-mimalloc553589.8817834938yes
calloc-zero1mimalloc-pprof552812.0801015475yes
calloc-zerophysical-coretcmalloc913652.9836098651yes
calloc-zerophysical-corejemalloc999115.498303532yes
calloc-zerophysical-coreupstream-mimalloc979395.1391712097yes
calloc-zerophysical-coremimalloc-pprof985761.0438400115yes
aligned-range1tcmalloc217326.18284680945yes
aligned-range1jemalloc215432.95826379547yes
aligned-range1upstream-mimalloc212713.4762243026yes
aligned-range1mimalloc-pprof211027.50465588435yes
aligned-rangephysical-coretcmalloc306700.4049279767yes
aligned-rangephysical-corejemalloc320792.7740233293yes
aligned-rangephysical-coreupstream-mimalloc314844.91340613086yes
aligned-rangephysical-coremimalloc-pprof317181.52466210496yes
sawtooth-retain-drain1tcmalloc1383.3665917893843no
sawtooth-retain-drain1jemalloc1384.5261351189215no
sawtooth-retain-drain1upstream-mimalloc1414.4845577626645no
sawtooth-retain-drain1mimalloc-pprof1402.5459589376no
sawtooth-retain-drainphysical-coretcmalloc2578.272560905736yes
sawtooth-retain-drainphysical-corejemalloc2618.2329223730103no
sawtooth-retain-drainphysical-coreupstream-mimalloc2535.3201766341904yes
sawtooth-retain-drainphysical-coremimalloc-pprof2555.90246759718no
thread-churn1tcmalloc23411.376708381893no
thread-churn1jemalloc16645.626811149872no
thread-churn1upstream-mimalloc21569.912763143555no
thread-churn1mimalloc-pprof21579.80376808342no
thread-churnphysical-coretcmalloc33012.26303682117no
thread-churnphysical-corejemalloc23898.063589501795no
thread-churnphysical-coreupstream-mimalloc30859.79959898316no
thread-churnphysical-coremimalloc-pprof30276.2993654402no
representative-mix1tcmalloc62438.6138019305yes
representative-mix1jemalloc62587.80374147769yes
representative-mix1upstream-mimalloc62801.87241657531yes
representative-mix1mimalloc-pprof62588.84629689488yes
representative-mixphysical-coretcmalloc102625.24758939153yes
representative-mixphysical-corejemalloc105919.72384936051yes
representative-mixphysical-coreupstream-mimalloc103876.07734926196yes
representative-mixphysical-coremimalloc-pprof102341.36141793292yes

Linux process memory

Sampled peak RSS normalized to upstream-mimalloc; 1.0 equals upstream; lower is betterSpeed-memory Pareto scatter: fragmentation proxy versus median throughput; upper-left is betterLinux process RSS over time with workload-drained marker and post-drain return-to-OS points; lower is betterFragmentation proxy ratio bars with a 1.0 reference line; lower is better

Externally sampled from /proc/<pid>/smaps_rollup every 5000000 ns with VmHWM cross-checks and natural purge only. The bar chart normalizes sampled peak RSS to upstream-mimalloc = 1.0 (matching the throughput panel), with absolute MiB in the table below. The Pareto scatter pairs each allocator's fragmentation proxy with its median throughput on the matching scenario/thread cell; upper-left is better. The timeline shows RSS growth, the workload-drained marker, and the 100 ms / 1 s / 5 s post-drain points so return-to-OS behavior is visible. Runner: github-hosted; results are informational. Memory run 31937843446/1; metric key 1468306e3d8599b3565faf026ea961ad2ff1b0dbf604441f06661889dfa11731.

ScenarioThreadsMetricAllocatorMedian (MiB or ratio)vs upstream
large-objects1sampled-peak-rss-bytestcmalloc35.7071.52x
large-objects1sampled-peak-rss-bytesjemalloc35.2381.50x
large-objects1sampled-peak-rss-bytesupstream-mimalloc23.4341.00x
large-objects1sampled-peak-rss-bytesmimalloc-pprof23.4531.00x
large-objects1post-drain-rss-100ms-bytestcmalloc35.691-
large-objects1post-drain-rss-100ms-bytesjemalloc11.227-
large-objects1post-drain-rss-100ms-bytesupstream-mimalloc23.434-
large-objects1post-drain-rss-100ms-bytesmimalloc-pprof23.453-
large-objects1post-drain-rss-1s-bytestcmalloc35.691-
large-objects1post-drain-rss-1s-bytesjemalloc11.227-
large-objects1post-drain-rss-1s-bytesupstream-mimalloc23.434-
large-objects1post-drain-rss-1s-bytesmimalloc-pprof23.453-
large-objects1post-drain-rss-5s-bytestcmalloc35.691-
large-objects1post-drain-rss-5s-bytesjemalloc11.227-
large-objects1post-drain-rss-5s-bytesupstream-mimalloc23.434-
large-objects1post-drain-rss-5s-bytesmimalloc-pprof23.453-
large-objects1fragmentation-proxytcmalloc1.1681184787564947-
large-objects1fragmentation-proxyjemalloc1.93798828125-
large-objects1fragmentation-proxyupstream-mimalloc0.8726819022933912-
large-objects1fragmentation-proxymimalloc-pprof0.782470703125-
large-objects2sampled-peak-rss-bytestcmalloc65.3281.03x
large-objects2sampled-peak-rss-bytesjemalloc64.2461.01x
large-objects2sampled-peak-rss-bytesupstream-mimalloc63.5041.00x
large-objects2sampled-peak-rss-bytesmimalloc-pprof65.4571.03x
large-objects2post-drain-rss-100ms-bytestcmalloc49.328-
large-objects2post-drain-rss-100ms-bytesjemalloc14.957-
large-objects2post-drain-rss-100ms-bytesupstream-mimalloc63.504-
large-objects2post-drain-rss-100ms-bytesmimalloc-pprof65.457-
large-objects2post-drain-rss-1s-bytestcmalloc49.328-
large-objects2post-drain-rss-1s-bytesjemalloc14.957-
large-objects2post-drain-rss-1s-bytesupstream-mimalloc63.504-
large-objects2post-drain-rss-1s-bytesmimalloc-pprof65.457-
large-objects2post-drain-rss-5s-bytestcmalloc49.328-
large-objects2post-drain-rss-5s-bytesjemalloc15.605-
large-objects2post-drain-rss-5s-bytesupstream-mimalloc63.504-
large-objects2post-drain-rss-5s-bytesmimalloc-pprof65.457-
large-objects2fragmentation-proxytcmalloc1.47412109375-
large-objects2fragmentation-proxyjemalloc1.7601364311127514-
large-objects2fragmentation-proxyupstream-mimalloc1.7037353515625-
large-objects2fragmentation-proxymimalloc-pprof1.7037353515625-
sawtooth-retain-drain1sampled-peak-rss-bytestcmalloc18.7541.40x
sawtooth-retain-drain1sampled-peak-rss-bytesjemalloc9.2660.69x
sawtooth-retain-drain1sampled-peak-rss-bytesupstream-mimalloc13.4341.00x
sawtooth-retain-drain1sampled-peak-rss-bytesmimalloc-pprof13.4531.00x
sawtooth-retain-drain1post-drain-rss-100ms-bytestcmalloc18.754-
sawtooth-retain-drain1post-drain-rss-100ms-bytesjemalloc8.285-
sawtooth-retain-drain1post-drain-rss-100ms-bytesupstream-mimalloc13.312-
sawtooth-retain-drain1post-drain-rss-100ms-bytesmimalloc-pprof13.137-
sawtooth-retain-drain1post-drain-rss-1s-bytestcmalloc18.754-
sawtooth-retain-drain1post-drain-rss-1s-bytesjemalloc8.285-
sawtooth-retain-drain1post-drain-rss-1s-bytesupstream-mimalloc13.312-
sawtooth-retain-drain1post-drain-rss-1s-bytesmimalloc-pprof13.137-
sawtooth-retain-drain1post-drain-rss-5s-bytestcmalloc18.754-
sawtooth-retain-drain1post-drain-rss-5s-bytesjemalloc8.285-
sawtooth-retain-drain1post-drain-rss-5s-bytesupstream-mimalloc13.312-
sawtooth-retain-drain1post-drain-rss-5s-bytesmimalloc-pprof13.137-
sawtooth-retain-drain1fragmentation-proxytcmalloc10.716312930715782-
sawtooth-retain-drain1fragmentation-proxyjemalloc1.439381515754949-
sawtooth-retain-drain1fragmentation-proxyupstream-mimalloc8.922841698632732-
sawtooth-retain-drain1fragmentation-proxymimalloc-pprof8.970786883684866-
sawtooth-retain-drainphysical-coresampled-peak-rss-bytestcmalloc18.680.96x
sawtooth-retain-drainphysical-coresampled-peak-rss-bytesjemalloc13.2540.68x
sawtooth-retain-drainphysical-coresampled-peak-rss-bytesupstream-mimalloc19.4411.00x
sawtooth-retain-drainphysical-coresampled-peak-rss-bytesmimalloc-pprof19.4651.00x
sawtooth-retain-drainphysical-corepost-drain-rss-100ms-bytestcmalloc18.68-
sawtooth-retain-drainphysical-corepost-drain-rss-100ms-bytesjemalloc11.309-
sawtooth-retain-drainphysical-corepost-drain-rss-100ms-bytesupstream-mimalloc13.316-
sawtooth-retain-drainphysical-corepost-drain-rss-100ms-bytesmimalloc-pprof14.836-
sawtooth-retain-drainphysical-corepost-drain-rss-1s-bytestcmalloc18.68-
sawtooth-retain-drainphysical-corepost-drain-rss-1s-bytesjemalloc11.309-
sawtooth-retain-drainphysical-corepost-drain-rss-1s-bytesupstream-mimalloc13.316-
sawtooth-retain-drainphysical-corepost-drain-rss-1s-bytesmimalloc-pprof14.836-
sawtooth-retain-drainphysical-corepost-drain-rss-5s-bytestcmalloc18.68-
sawtooth-retain-drainphysical-corepost-drain-rss-5s-bytesjemalloc11.328-
sawtooth-retain-drainphysical-corepost-drain-rss-5s-bytesupstream-mimalloc13.316-
sawtooth-retain-drainphysical-corepost-drain-rss-5s-bytesmimalloc-pprof14.836-
sawtooth-retain-drainphysical-corefragmentation-proxytcmalloc5.419650904494531-
sawtooth-retain-drainphysical-corefragmentation-proxyjemalloc1.360864821977586-
sawtooth-retain-drainphysical-corefragmentation-proxyupstream-mimalloc10.715987728290807-
sawtooth-retain-drainphysical-corefragmentation-proxymimalloc-pprof11.279517789837067-
small-log-mixedphysical-coresampled-peak-rss-bytestcmalloc18.4261.95x
small-log-mixedphysical-coresampled-peak-rss-bytesjemalloc13.2811.41x
small-log-mixedphysical-coresampled-peak-rss-bytesupstream-mimalloc9.4411.00x
small-log-mixedphysical-coresampled-peak-rss-bytesmimalloc-pprof9.4611.00x
small-log-mixedphysical-corepost-drain-rss-100ms-bytestcmalloc18.426-
small-log-mixedphysical-corepost-drain-rss-100ms-bytesjemalloc13.141-
small-log-mixedphysical-corepost-drain-rss-100ms-bytesupstream-mimalloc9.379-
small-log-mixedphysical-corepost-drain-rss-100ms-bytesmimalloc-pprof9.398-
small-log-mixedphysical-corepost-drain-rss-1s-bytestcmalloc18.426-
small-log-mixedphysical-corepost-drain-rss-1s-bytesjemalloc13.141-
small-log-mixedphysical-corepost-drain-rss-1s-bytesupstream-mimalloc9.379-
small-log-mixedphysical-corepost-drain-rss-1s-bytesmimalloc-pprof9.398-
small-log-mixedphysical-corepost-drain-rss-5s-bytestcmalloc18.426-
small-log-mixedphysical-corepost-drain-rss-5s-bytesjemalloc13.141-
small-log-mixedphysical-corepost-drain-rss-5s-bytesupstream-mimalloc9.379-
small-log-mixedphysical-corepost-drain-rss-5s-bytesmimalloc-pprof9.398-
small-log-mixedphysical-corefragmentation-proxytcmalloc5773.879518072289-
small-log-mixedphysical-corefragmentation-proxyjemalloc108.98447893569845-
small-log-mixedphysical-corefragmentation-proxyupstream-mimalloc4540.144578313253-
small-log-mixedphysical-corefragmentation-proxymimalloc-pprof1198.8292682926829-
cross-thread-producer-consumerphysical-coresampled-peak-rss-bytestcmalloc18.01.91x
cross-thread-producer-consumerphysical-coresampled-peak-rss-bytesjemalloc13.2661.41x
cross-thread-producer-consumerphysical-coresampled-peak-rss-bytesupstream-mimalloc9.4411.00x
cross-thread-producer-consumerphysical-coresampled-peak-rss-bytesmimalloc-pprof9.4611.00x
cross-thread-producer-consumerphysical-corepost-drain-rss-100ms-bytestcmalloc18.0-
cross-thread-producer-consumerphysical-corepost-drain-rss-100ms-bytesjemalloc13.133-
cross-thread-producer-consumerphysical-corepost-drain-rss-100ms-bytesupstream-mimalloc8.941-
cross-thread-producer-consumerphysical-corepost-drain-rss-100ms-bytesmimalloc-pprof9.023-
cross-thread-producer-consumerphysical-corepost-drain-rss-1s-bytestcmalloc18.0-
cross-thread-producer-consumerphysical-corepost-drain-rss-1s-bytesjemalloc13.133-
cross-thread-producer-consumerphysical-corepost-drain-rss-1s-bytesupstream-mimalloc8.941-
cross-thread-producer-consumerphysical-corepost-drain-rss-1s-bytesmimalloc-pprof9.023-
cross-thread-producer-consumerphysical-corepost-drain-rss-5s-bytestcmalloc18.0-
cross-thread-producer-consumerphysical-corepost-drain-rss-5s-bytesjemalloc13.133-
cross-thread-producer-consumerphysical-corepost-drain-rss-5s-bytesupstream-mimalloc8.988-
cross-thread-producer-consumerphysical-corepost-drain-rss-5s-bytesmimalloc-pprof9.023-
cross-thread-producer-consumerphysical-corefragmentation-proxytcmalloc7347.975757575758-
cross-thread-producer-consumerphysical-corefragmentation-proxyjemalloc143.71929824561403-
cross-thread-producer-consumerphysical-corefragmentation-proxyupstream-mimalloc4501.40614334471-
cross-thread-producer-consumerphysical-corefragmentation-proxymimalloc-pprof1883.8745644599303-
thread-churnphysical-coresampled-peak-rss-bytestcmalloc18.3951.95x
thread-churnphysical-coresampled-peak-rss-bytesjemalloc13.2031.40x
thread-churnphysical-coresampled-peak-rss-bytesupstream-mimalloc9.4411.00x
thread-churnphysical-coresampled-peak-rss-bytesmimalloc-pprof11.4651.21x
thread-churnphysical-corepost-drain-rss-100ms-bytestcmalloc18.395-
thread-churnphysical-corepost-drain-rss-100ms-bytesjemalloc13.141-
thread-churnphysical-corepost-drain-rss-100ms-bytesupstream-mimalloc9.441-
thread-churnphysical-corepost-drain-rss-100ms-bytesmimalloc-pprof11.465-
thread-churnphysical-corepost-drain-rss-1s-bytestcmalloc18.395-
thread-churnphysical-corepost-drain-rss-1s-bytesjemalloc13.141-
thread-churnphysical-corepost-drain-rss-1s-bytesupstream-mimalloc9.441-
thread-churnphysical-corepost-drain-rss-1s-bytesmimalloc-pprof11.465-
thread-churnphysical-corepost-drain-rss-5s-bytestcmalloc18.395-
thread-churnphysical-corepost-drain-rss-5s-bytesjemalloc13.141-
thread-churnphysical-corepost-drain-rss-5s-bytesupstream-mimalloc9.441-
thread-churnphysical-corepost-drain-rss-5s-bytesmimalloc-pprof11.465-
thread-churnphysical-corefragmentation-proxytcmalloc3252.0-
thread-churnphysical-corefragmentation-proxyjemalloc3994.7680608365017-
thread-churnphysical-corefragmentation-proxyupstream-mimalloc521.3809064609451-
thread-churnphysical-corefragmentation-proxymimalloc-pprof2576.0-

Paired effects

ScenarioCandidateEffect95% intervalInterpretation
tiny-fixed-16tcmalloc0.90308871706159240.8930968989717047–0.9047697006846397informational
tiny-fixed-16jemalloc0.99544568498880020.9887828197792768–1.0101214168385761informational
tiny-fixed-16mimalloc-pprof0.96362229898259780.9551443676114272–0.9746200957766517informational
tiny-fixed-16tcmalloc0.52854388674703320.5039708763646052–0.5551617383014064informational
tiny-fixed-16jemalloc1.07825429091213151.0474184980354644–1.1186760086638905informational
tiny-fixed-16mimalloc-pprof1.09873509881018161.063577139769508–1.1070780889419916informational
tiny-fixed-64tcmalloc0.95969266669432030.9455925488879267–0.9633058239487665informational
tiny-fixed-64jemalloc0.9981846363686790.9764090184514478–1.002794711406887informational
tiny-fixed-64mimalloc-pprof0.98828705350286270.9787136277946561–0.9929431141583664informational
tiny-fixed-64tcmalloc0.63601403694937190.6130085353036214–0.6953605458219186informational
tiny-fixed-64jemalloc0.96900529798312670.8909252906690394–0.9834023574950098informational
tiny-fixed-64mimalloc-pprof0.93819297789235010.890870217100541–0.9643381542092824informational
small-log-mixedtcmalloc0.95022507146306660.9254394871726186–0.9725885551122073informational
small-log-mixedjemalloc0.99070041071067530.987517917501249–0.9989920040509755informational
small-log-mixedmimalloc-pprof0.98232112712667450.96520216690798–0.995161700534044informational
small-log-mixedtcmalloc0.7025182332950540.6074092523932313–0.7658064118309663informational
small-log-mixedjemalloc1.01877931475826071.0000080199634513–1.0760233834058486informational
small-log-mixedmimalloc-pprof1.0166416434651951.0010222283117718–1.0406803596661056informational
small-log-mixedtcmalloc0.82321005648485460.7857052704539349–0.8481600403772473informational
small-log-mixedjemalloc0.98761267208557360.9732710665351015–1.0263997584973426informational
small-log-mixedmimalloc-pprof0.98092387444234610.9602586889513448–1.0044935076252712informational
medium-log-mixedtcmalloc0.99194188106688330.9897772293048814–1.0161843161694672informational
medium-log-mixedjemalloc1.0056200929956090.9983119979711228–1.016963042949492informational
medium-log-mixedmimalloc-pprof0.99525728370501350.9887584299610721–1.0115231161659337informational
medium-log-mixedtcmalloc0.99561641969395750.986342700630473–1.013622754813016informational
medium-log-mixedjemalloc1.00775879032093091.0055610101968535–1.0240617157531555informational
medium-log-mixedmimalloc-pprof1.00080562606100940.9803980339890392–1.0119237512211516informational
large-objectstcmalloc1.0070460626581710.9891472720491264–1.019184856548752informational
large-objectsjemalloc0.70820854880007760.6715452147627282–0.7744908771281684informational
large-objectsmimalloc-pprof1.01236988553522770.9904277348864811–1.0163509155452202informational
large-objectstcmalloc0.95844706985947210.9495304306899814–0.9860031691846163informational
large-objectsjemalloc0.7030884265002780.6706112108743713–0.7211403089868699informational
large-objectsmimalloc-pprof1.0039411281446390.9953846503972754–1.0292322687341733informational
batch-lifotcmalloc0.982305313913780.9755361936834633–1.0092149579729597informational
batch-lifojemalloc1.00132348129306710.9886317943448607–1.0086963779685878informational
batch-lifomimalloc-pprof0.99732635146844780.9703623710859727–1.000516168847064informational
batch-lifotcmalloc0.97696428639986270.9568430379311988–0.9895277900792637informational
batch-lifojemalloc1.05157562837065591.031245854376035–1.056646968818429informational
batch-lifomimalloc-pprof1.00047514653785340.9837673543252913–1.013525393408476informational
batch-fifotcmalloc0.98659124567718270.9811555018505701–0.9998273113671473informational
batch-fifojemalloc1.00457237148535940.9923110038123303–1.0077151652043717informational
batch-fifomimalloc-pprof0.99357259767822570.9805185047929657–1.0043885921118425informational
batch-fifotcmalloc0.97315450291144230.9694366396932894–0.9784821050265087informational
batch-fifojemalloc1.0407948786517131.0359062971993804–1.0587902811894532informational
batch-fifomimalloc-pprof0.99712848957358450.9591183520279214–1.0106066820296624informational
cross-thread-producer-consumertcmalloc1.06956380980914450.973908589841669–1.1813637984696945informational
cross-thread-producer-consumerjemalloc0.99031234008352150.9362293698933357–1.1073726504971628informational
cross-thread-producer-consumermimalloc-pprof1.01529033735288250.9326214773541159–1.1177837937368593informational
cross-thread-producer-consumertcmalloc1.0076698267265710.9670280510694202–1.0361508887403543informational
cross-thread-producer-consumerjemalloc0.99601125282457970.9171096834414628–1.1624911737702857informational
cross-thread-producer-consumermimalloc-pprof0.96162241174018580.8974434656394306–1.1490243251434666informational
random-ownershiptcmalloc1.01023911860302970.968275829602271–1.0763920025023574informational
random-ownershipjemalloc1.0338230558989880.9492426252668607–1.1313941261794738informational
random-ownershipmimalloc-pprof0.99307202265605470.9121237394518948–1.0560229870657092informational
realloc-geometrictcmalloc0.99700442757656160.9859024678062078–1.0054271783906987informational
realloc-geometricjemalloc1.00539830885066621.0027142323667826–1.0106034865220657informational
realloc-geometricmimalloc-pprof0.99598151034378350.9890049129388689–1.0179295856764212informational
realloc-geometrictcmalloc0.93729824939098620.916745056367889–0.9687995337233701informational
realloc-geometricjemalloc1.02188075092103971.008610319130032–1.0297472563351724informational
realloc-geometricmimalloc-pprof1.00249949254922940.9871276403137452–1.005106542137425informational
calloc-zerotcmalloc1.00011644854190140.9830110400841736–1.010227104259033informational
calloc-zerojemalloc0.99638490347257190.9875274661650897–1.0039132103483248informational
calloc-zeromimalloc-pprof0.99772857132894210.9633740208260281–1.0102013392926936informational
calloc-zerotcmalloc0.93390007439935260.9237232629892314–0.9384917473837444informational
calloc-zerojemalloc1.01908930701342481.0107149615182018–1.0266341289370886informational
calloc-zeromimalloc-pprof1.0024975621564170.9982389329235084–1.0098281415453605informational
aligned-rangetcmalloc1.00546813469324211.000477309157981–1.011010742503774informational
aligned-rangejemalloc1.00896611871145471.003382554278514–1.012979360247045informational
aligned-rangemimalloc-pprof0.99731051579565980.9933513150774299–1.000065009789826informational
aligned-rangetcmalloc0.98358653763318260.9695204759778474–0.9950221796419262informational
aligned-rangejemalloc1.02846832650261531.0180418609365267–1.0470541977066763informational
aligned-rangemimalloc-pprof0.99788177122847870.9934492118647295–1.0200159081518656informational
sawtooth-retain-draintcmalloc1.00441054272124550.9939037401635837–1.0174648811046707informational
sawtooth-retain-drainjemalloc1.0039983732432520.9842881816280348–1.0087510133212942informational
sawtooth-retain-drainmimalloc-pprof1.00070711690281030.985920066410255–1.0267480250699812informational
sawtooth-retain-draintcmalloc1.00383696410090530.9784583876624606–1.0126052827874317informational
sawtooth-retain-drainjemalloc1.00601934250420970.9926494409199608–1.0178297411813062informational
sawtooth-retain-drainmimalloc-pprof0.99333834126868180.9835573332761899–1.021828604822189informational
thread-churntcmalloc1.07778489887528781.0705677372220506–1.0887861464994801informational
thread-churnjemalloc0.76884447938285860.7626091166397961–0.7764264341698518informational
thread-churnmimalloc-pprof0.99340402451504020.9789187397138889–1.0058087976259786informational
thread-churntcmalloc1.07510739451782021.0188320795111714–1.1378031088615344informational
thread-churnjemalloc0.79636911212744850.7697318085759609–0.8122693313522719informational
thread-churnmimalloc-pprof1.01168982695458820.940021249270361–1.0353399264976078informational
representative-mixtcmalloc0.99531053259444050.9831201913728964–1.006144747283409informational
representative-mixjemalloc0.99462451780454790.9868652246967007–1.0220852847733792informational
representative-mixmimalloc-pprof0.99660796547167550.9888406755892577–1.003144507375463informational
representative-mixtcmalloc1.00795990775615470.9859617393433742–1.0110526608251935informational
representative-mixjemalloc1.01761308849773371.0121230932842007–1.0276237461090252informational
representative-mixmimalloc-pprof0.99638627623876460.9852255112968029–1.0276330251969974informational

Compatible history

History connected only across the selected identical comparison key

Thread scaling (sparse sweep)

Aggregate throughput by worker count for the Tiny hot path (16-64 B) pattern, one line per allocatorAggregate throughput by worker count for the General mix (8 B-4 KiB, with realloc) pattern, one line per allocatorAggregate throughput by worker count for the Large buffers (64 KiB-4 MiB, page-touched) pattern, one line per allocatorAggregate throughput by worker count for the Cross-thread handoff (16-512 B, remote free) pattern, one line per allocator

coverage mode - reduced statistical rigor (3 blocks). These panels trade statistical rigor for thread coverage: 3 blocks per cell, median with min/max, and deliberately no confidence intervals or noise gating. Do not read them as headline-grade numbers.

Worker counts are literal 1, 2, 3, 4, 6, 8; the runner allows 4 logical CPUs, so higher points are oversubscribed and describe contention rather than core scaling. splitmix64 chain over (run seed, pattern tag, thread count, block, worker); the allocator is deliberately absent so all four allocators replay one stream. Scaling run 32626734827/1 measured mimalloc-pprof at source 6fcb196697210e6d6b42d88e4435ace5ab0a4172, which is not necessarily the commit above; metric key 39ce7d68a2bf515e9302b6655530d53b1e62c3c720b30d999ac09d6e409dedb5.

PatternWorkersAllocatorMedian ops/sMin - maxSpeedup vs 1Oversubscribed
sparse-cross-thread1jemalloc30436430.427862998.4 - 30471458.11.0xno
sparse-cross-thread1mimalloc-pprof26746423.526661750.2 - 26859420.31.0xno
sparse-cross-thread1tcmalloc23634270.423621200.1 - 23706514.91.0xno
sparse-cross-thread1upstream-mimalloc29496893.229330741.1 - 29642108.41.0xno
sparse-cross-thread2jemalloc11114599.510997185.5 - 11247095.40.37xno
sparse-cross-thread2mimalloc-pprof9907113.59869822.8 - 10401982.10.37xno
sparse-cross-thread2tcmalloc10471148.210306815.4 - 10613875.50.44xno
sparse-cross-thread2upstream-mimalloc9618928.59595201.5 - 9899312.30.33xno
sparse-cross-thread3jemalloc14653130.414548646.7 - 15019531.10.48xno
sparse-cross-thread3mimalloc-pprof13599934.913361294.0 - 13629957.90.51xno
sparse-cross-thread3tcmalloc14007628.613881667.7 - 14344264.00.59xno
sparse-cross-thread3upstream-mimalloc13560472.213179077.8 - 13735903.60.46xno
sparse-cross-thread4jemalloc16861307.716740811.0 - 17410175.40.55xno
sparse-cross-thread4mimalloc-pprof15014683.214979461.3 - 15268268.90.56xno
sparse-cross-thread4tcmalloc15472026.815363217.8 - 15627608.30.65xno
sparse-cross-thread4upstream-mimalloc14830892.514821445.7 - 14869045.60.5xno
sparse-cross-thread6jemalloc23261410.623152861.5 - 23445112.00.76xyes
sparse-cross-thread6mimalloc-pprof21957913.121671595.6 - 22366076.80.82xyes
sparse-cross-thread6tcmalloc23246302.623167891.0 - 23349398.20.98xyes
sparse-cross-thread6upstream-mimalloc22028394.521652853.4 - 22334512.70.75xyes
sparse-cross-thread8jemalloc29902956.828743018.9 - 29917194.30.98xyes
sparse-cross-thread8mimalloc-pprof26806579.426782440.8 - 26888154.61.0xyes
sparse-cross-thread8tcmalloc27974196.026780388.1 - 27992418.41.18xyes
sparse-cross-thread8upstream-mimalloc26883659.426569023.5 - 27065438.10.91xyes
sparse-large-buffers1jemalloc538612.5500788.4 - 608775.01.0xno
sparse-large-buffers1mimalloc-pprof694818.0693449.0 - 699905.01.0xno
sparse-large-buffers1tcmalloc690072.7680885.4 - 697991.81.0xno
sparse-large-buffers1upstream-mimalloc702520.0695718.1 - 702934.31.0xno
sparse-large-buffers2jemalloc871545.0847776.0 - 922374.31.62xno
sparse-large-buffers2mimalloc-pprof1349308.11347272.8 - 1361270.01.94xno
sparse-large-buffers2tcmalloc1234024.11223496.0 - 1234077.81.79xno
sparse-large-buffers2upstream-mimalloc1350491.41346699.6 - 1361852.31.92xno
sparse-large-buffers3jemalloc1000012.9978044.5 - 1028519.21.86xno
sparse-large-buffers3mimalloc-pprof1559515.41556605.3 - 1574396.42.24xno
sparse-large-buffers3tcmalloc1403086.61381760.5 - 1406859.22.03xno
sparse-large-buffers3upstream-mimalloc1581883.71568246.7 - 1591734.72.25xno
sparse-large-buffers4jemalloc1113930.51073169.4 - 1121675.92.07xno
sparse-large-buffers4mimalloc-pprof1895058.31886583.1 - 1896980.22.73xno
sparse-large-buffers4tcmalloc1505435.31452138.8 - 1505756.32.18xno
sparse-large-buffers4upstream-mimalloc1900204.61809527.2 - 1906747.42.7xno
sparse-large-buffers6jemalloc1068113.01045727.6 - 1088838.51.98xyes
sparse-large-buffers6mimalloc-pprof1845034.61818667.5 - 1889079.52.66xyes
sparse-large-buffers6tcmalloc1488680.01421900.3 - 1501909.72.16xyes
sparse-large-buffers6upstream-mimalloc1831800.81813107.0 - 1844735.12.61xyes
sparse-large-buffers8jemalloc1020749.41003588.2 - 1038898.51.9xyes
sparse-large-buffers8mimalloc-pprof1852099.91839306.1 - 1858712.62.67xyes
sparse-large-buffers8tcmalloc1463922.01463690.4 - 1484937.92.12xyes
sparse-large-buffers8upstream-mimalloc1844313.41817689.1 - 1846010.52.63xyes
sparse-mixed-general1jemalloc20759573.020734242.6 - 20926728.01.0xno
sparse-mixed-general1mimalloc-pprof18764095.818116690.5 - 18881222.51.0xno
sparse-mixed-general1tcmalloc18123954.018071708.0 - 18161144.31.0xno
sparse-mixed-general1upstream-mimalloc20490853.820230848.7 - 20526615.91.0xno
sparse-mixed-general2jemalloc41434417.840317913.4 - 41529241.72.0xno
sparse-mixed-general2mimalloc-pprof36567355.436529966.0 - 36980117.21.95xno
sparse-mixed-general2tcmalloc34294522.634101942.7 - 35075169.51.89xno
sparse-mixed-general2upstream-mimalloc38919533.838912724.8 - 39806756.11.9xno
sparse-mixed-general3jemalloc45264119.045250787.0 - 46330036.92.18xno
sparse-mixed-general3mimalloc-pprof40960394.240923290.8 - 41322620.12.18xno
sparse-mixed-general3tcmalloc38699756.438610402.1 - 38718433.12.14xno
sparse-mixed-general3upstream-mimalloc44788564.044760835.9 - 45156161.22.19xno
sparse-mixed-general4jemalloc53703972.453208171.8 - 54050839.82.59xno
sparse-mixed-general4mimalloc-pprof47581679.447442135.3 - 48127967.92.54xno
sparse-mixed-general4tcmalloc43947165.443570578.9 - 44869580.32.42xno
sparse-mixed-general4upstream-mimalloc52685463.452601633.4 - 53114666.22.57xno
sparse-mixed-general6jemalloc52465215.752305343.6 - 54043466.32.53xyes
sparse-mixed-general6mimalloc-pprof48029686.645812945.7 - 48229605.72.56xyes
sparse-mixed-general6tcmalloc44452075.642740251.8 - 44584717.32.45xyes
sparse-mixed-general6upstream-mimalloc53332286.752981225.0 - 53604760.42.6xyes
sparse-mixed-general8jemalloc51927422.751813986.9 - 53080009.62.5xyes
sparse-mixed-general8mimalloc-pprof47198365.646654191.8 - 47550401.12.52xyes
sparse-mixed-general8tcmalloc44672036.643713781.6 - 45228472.92.46xyes
sparse-mixed-general8upstream-mimalloc52803174.452092781.2 - 52921145.92.58xyes
sparse-tiny-hot1jemalloc26031022.226022233.0 - 26221203.81.0xno
sparse-tiny-hot1mimalloc-pprof24374801.224367962.1 - 24393986.51.0xno
sparse-tiny-hot1tcmalloc22022591.721953254.8 - 22076038.41.0xno
sparse-tiny-hot1upstream-mimalloc27053829.326729172.8 - 27099351.71.0xno
sparse-tiny-hot2jemalloc52045346.551639964.4 - 52332286.82.0xno
sparse-tiny-hot2mimalloc-pprof46783276.346631621.5 - 47830488.61.92xno
sparse-tiny-hot2tcmalloc42102551.742020974.2 - 42528301.21.91xno
sparse-tiny-hot2upstream-mimalloc52177840.451314694.9 - 52500551.01.93xno
sparse-tiny-hot3jemalloc58794409.558689910.1 - 58890038.02.26xno
sparse-tiny-hot3mimalloc-pprof52276888.051037084.3 - 52663675.42.14xno
sparse-tiny-hot3tcmalloc46718373.446679534.8 - 46835406.62.12xno
sparse-tiny-hot3upstream-mimalloc58001766.957969650.6 - 59444442.22.14xno
sparse-tiny-hot4jemalloc69375009.669095182.4 - 69570349.22.67xno
sparse-tiny-hot4mimalloc-pprof60623030.857247155.6 - 61218428.72.49xno
sparse-tiny-hot4tcmalloc53606584.453445529.3 - 53808459.22.43xno
sparse-tiny-hot4upstream-mimalloc68608065.267994531.7 - 69274874.92.54xno
sparse-tiny-hot6jemalloc67942249.564481630.7 - 68703407.22.61xyes
sparse-tiny-hot6mimalloc-pprof61701294.260732259.8 - 61704795.62.53xyes
sparse-tiny-hot6tcmalloc53370622.552934254.5 - 53978684.02.42xyes
sparse-tiny-hot6upstream-mimalloc68543872.366372121.7 - 68973828.32.53xyes
sparse-tiny-hot8jemalloc69172084.268673115.9 - 69422227.62.66xyes
sparse-tiny-hot8mimalloc-pprof60687024.459942288.9 - 61213361.12.49xyes
sparse-tiny-hot8tcmalloc52146760.451095244.2 - 54486785.22.37xyes
sparse-tiny-hot8upstream-mimalloc69002145.068292957.4 - 70116610.12.55xyes

Pending Phase 6 panels

latency pending: pending - metric protocol not implemented

latency: pending

pending - metric protocol not implemented

Phase issue
pprof-tax pending: pending - metric protocol not implemented

pprof-tax: pending

pending - metric protocol not implemented

Phase issue

Pending panels contain no measured values.

Provenance

Run 32355854197, attempt 1; target x86_64-unknown-linux-gnu; fingerprint bd0a6a8c4929b3da17a6bd14a1a5ae6205034e9f3ceb259544b1e1c1adb05b70.

AllocatorSourceBinary
tcmallocc316de3ee8ffb5aff6547aa10151bc8dda3a29424e28031aa48ff732d220702a9ca32f4da4ca3c6a0a39a10054fbffb38cb2bbfe
jemalloc81034ce1f1373e37dc865038e1bc8eeecf559ce8e5705c6014b27d8134063eb7f19428110dbd4eefe0ba04d06ef64df21a3ba1f8
upstream-mimallocbcee5a88e9311c08b8f93fbce3dcafe2f22a2d26dc09025a480c5a20255a6d377fb381eb1d545301de6200f1fad11c5d8b2ba8f0
mimalloc-pprof68ccee0e47bbb4052d2827556ff6db175b7407439df4cacb34c4ae4a54f4da50600e64ad12465a6ec168a94375097a0ae36dd50b

Actions run

Methodology

{"absolute_summary": "median, Type-7 quartiles, IQR, min/max; no outlier removal", "confidence_interval": "deterministic 95% percentile whole-block bootstrap, 10000 resamples", "informational": true, "noise_threshold_relative_iqr": 0.1, "paired_effect": "exp(median(per-block log(candidate/reference)))", "quantile_method": "R/NumPy Type 7 linear interpolation"}

Reproduce

MIMALLOC_PROF=0 MIMALLOC_MEMORY_EVENTS=0 '/home/runner/work/mimalloc-pprof/mimalloc-pprof/rust/target/release/children/tcmalloc/benchmark-child' < '/home/runner/work/_temp/benchmark-output-32355854197/requests/tiny-fixed-16-1-block-0000-ordinal-0-tcmalloc.json'