Skip to content

Instantly share code, notes, and snippets.

@Licenser
Last active February 6, 2020 20:24
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Licenser/24191036f18d95423c12ee96a9fd4ea4 to your computer and use it in GitHub Desktop.
Save Licenser/24191036f18d95423c12ee96a9fd4ea4 to your computer and use it in GitHub Desktop.
snmalloc bench

Perf bench

MiMalloc (same die)

#[Mean       =     73513.96, StdDeviation   =      3364.16]
#[Max        =       175103, Total count    =     27556509]
#[Buckets    =           30, SubBuckets     =         3968]


Throughput: 413.4 MB/s

SNMalloc (same die)

#[Mean       =      8186.92, StdDeviation   =      4906.89]
#[Max        =        96767, Total count    =     33991339]
#[Buckets    =           30, SubBuckets     =         3968]


Throughput: 509.9 MB/s

SNMalloc (same die) cache-friendly

#[Mean       =     12563.67, StdDeviation   =      8345.15]
#[Max        =       129023, Total count    =     34082352]
#[Buckets    =           30, SubBuckets     =         3968]


Throughput: 511.2 MB/s

SNMalloc (same die) 1mib

#[Mean       =     27278.65, StdDeviation   =     18866.33]
#[Max        =       156671, Total count    =     34883085]
#[Buckets    =           30, SubBuckets     =         3968]


Throughput: 523.2 MB/s

SNMalloc (same die) cache-friendly + 1mib

#[Mean       =     47435.40, StdDeviation   =     12291.20]
#[Max        =       115199, Total count    =     34655768]
#[Buckets    =           30, SubBuckets     =         3968]


Throughput: 519.8 MB/s

MiMalloc (inter die )

#[Mean       =     15899.64, StdDeviation   =     32292.04]
#[Max        =       514047, Total count    =      9160463]
#[Buckets    =           30, SubBuckets     =         3968]


Throughput: 137.4 MB/s

SNMalloc (inter die)

#[Mean       =     13153.98, StdDeviation   =     29972.48]
#[Max        =       638975, Total count    =     11759690]
#[Buckets    =           30, SubBuckets     =         3968]


Throughput: 176.4 MB/s

JSON bench

mimalloc

                                DOM                  STRUCT
======= serde_json ======= parse|stringify ===== parse|stringify ====
data/canada.json         270 MB/s   460 MB/s   520 MB/s   370 MB/s
data/citm_catalog.json   400 MB/s   590 MB/s   930 MB/s   830 MB/s
data/twitter.json        290 MB/s   860 MB/s   600 MB/s   860 MB/s
data/log.json            360 MB/s  1080 MB/s   720 MB/s  1080 MB/s

======= json-rust ======== parse|stringify ===== parse|stringify ====
data/canada.json         540 MB/s   980 MB/s
data/citm_catalog.json   760 MB/s   840 MB/s
data/twitter.json        500 MB/s   990 MB/s
data/log.json            540 MB/s  1080 MB/s

======= simd_json ======== parse|stringify ===== parse|stringify ====
data/canada.json         520 MB/s   480 MB/s   680 MB/s   370 MB/s
data/citm_catalog.json  1070 MB/s   680 MB/s  1570 MB/s   840 MB/s
data/twitter.json        910 MB/s   850 MB/s  1080 MB/s   860 MB/s
data/log.json           1080 MB/s  2170 MB/s  1080 MB/s  1080 MB/s

===== simd_json_tape ===== parse|stringify ===== parse|stringify ====
data/canada.json         760 MB/s                    
data/citm_catalog.json  1930 MB/s                    
data/twitter.json       1720 MB/s                    
data/log.json           2170 MB/s                    

SNMalloc

                                DOM                  STRUCT
======= serde_json ======= parse|stringify ===== parse|stringify ====
data/canada.json         270 MB/s   460 MB/s   550 MB/s   370 MB/s
data/citm_catalog.json   380 MB/s   570 MB/s   950 MB/s   820 MB/s
data/twitter.json        300 MB/s   880 MB/s   610 MB/s   890 MB/s
data/log.json            430 MB/s  1080 MB/s   720 MB/s  1080 MB/s

======= json-rust ======== parse|stringify ===== parse|stringify ====
data/canada.json         540 MB/s   970 MB/s
data/citm_catalog.json   750 MB/s   770 MB/s
data/twitter.json        510 MB/s   890 MB/s
data/log.json            540 MB/s  1080 MB/s

======= simd_json ======== parse|stringify ===== parse|stringify ====
data/canada.json         510 MB/s   500 MB/s   680 MB/s   370 MB/s
data/citm_catalog.json  1040 MB/s   670 MB/s  1540 MB/s   820 MB/s
data/twitter.json        940 MB/s   840 MB/s  1100 MB/s   890 MB/s
data/log.json           1080 MB/s  2170 MB/s  2170 MB/s  1080 MB/s

===== simd_json_tape ===== parse|stringify ===== parse|stringify ====
data/canada.json         770 MB/s                    
data/citm_catalog.json  1890 MB/s                    
data/twitter.json       1730 MB/s                    
data/log.json           2170 MB/s                    

SIMDJson perf counters (vs. baseline)

system allocator (Linux 5.3)

                                    Instructions             Cache.              Cycle/byte      
        Name           Cycles    Normal.     Branch     Misses   References    Best       Avg    
apache_builds            597246    1463196     184250        807       4559      4.636      4.693
apache_builds(+/-)      -1.708%     0.000%     0.000%     0.743%     1.908%    -1.811%    -1.708%
canada                 21048314   56496272    8274263      22238      66384      9.294      9.350
canada(+/-)             -0.596%     0.002%     0.006%     2.586%    -1.133%    -0.247%    -0.596%
citm_catalog            8069038   20289039    2834721      12092      67316      4.622      4.672
citm_catalog(+/-)        3.709%    -0.002%    -0.004%     4.416%     1.891%     3.573%     3.709%
github_events            280285     582086      69795        437       3023      4.200      4.303
github_events(+/-)       0.462%     0.241%     0.629%     1.602%    -1.456%     0.294%     0.462%
gsoc-2018               8220543   16420868    1563505      35351     114039      2.385      2.470
gsoc-2018(+/-)          -3.014%    -0.011%    -0.032%     2.899%     1.594%    -4.465%    -3.014%
instruments             1502348    3155037     430740       1457      12017      6.737      6.818
instruments(+/-)         1.693%    -0.089%    -0.188%     1.990%    -2.122%     1.403%     1.693%
log                       13227      26171       3323         12         71      5.733      6.081
log(+/-)                -0.741%    -0.008%    -0.120%    -8.333%    -2.817%    -0.593%    -0.741%
marine_ik              32903131   75532913   11278593      57101     152336     10.917     11.028
marine_ik(+/-)          -0.135%    -0.004%    -0.007%    -3.599%    -2.861%    -0.576%    -0.135%
mesh                    7353261   17417152    2601878       4794      25539     10.092     10.162
mesh(+/-)               -0.040%    -0.014%    -0.025%     1.669%     0.070%    -0.308%    -0.040%
mesh.pretty             9229263   22823643    3176292      12406      45596      5.782      5.851
mesh.pretty(+/-)         0.419%    -0.008%    -0.016%    13.606%     5.904%    -0.169%     0.419%
numbers                 1064350    2563878     340824        976       4514      7.043      7.090
numbers(+/-)             0.140%     0.000%     0.001%    -0.410%     1.595%     0.047%     0.140%
random                  3835518    9205016    1198811       3337      31565      7.488      7.514
random(+/-)             -2.548%    -0.000%     0.020%     0.689%     2.576%    -1.469%    -2.548%
twitter                 3326261    6957437     813648       3967      29093      5.219      5.267
twitter(+/-)            -0.789%    -0.020%     0.003%    -0.807%    -0.021%    -0.049%    -0.789%
twitterescaped          4250684    8842458    1113217       3498      28212      7.382      7.558
twitterescaped(+/-)      3.089%    -0.018%    -0.021%     1.286%    -1.152%     1.312%     3.089%
update-center           3018031    6424627     833022       3434      21314      5.584      5.660
update-center(+/-)       0.797%    -0.011%    -0.016%     1.019%    -2.139%     0.271%     0.797%

MiMalloc

                                    Instructions             Cache.              Cycle/byte      
        Name           Cycles    Normal.     Branch     Misses   References    Best       Avg    
apache_builds            493933    1090237     120915        817       4568      3.844      3.881
apache_builds(+/-)     -22.981%   -34.209%   -52.380%     1.958%     2.102%   -22.775%   -22.981%
canada                 18840269   45044830    6365781      45852     115521      8.200      8.370
canada(+/-)            -12.386%   -25.419%   -29.973%    52.755%    41.884%   -13.614%   -12.386%
citm_catalog            6447325   14576018    1819507      16875      63503      3.686      3.733
citm_catalog(+/-)      -20.512%   -39.197%   -55.802%    31.508%    -4.000%   -20.915%   -20.512%
github_events            228200     485359      50352        399       2369      3.454      3.504
github_events(+/-)     -22.256%   -19.640%   -37.742%    -7.769%   -29.464%   -21.231%   -22.256%
gsoc-2018               7593523   14908150    1307911      36106     118521      2.244      2.282
gsoc-2018(+/-)         -11.520%   -10.159%   -19.581%     4.930%     5.316%   -11.014%   -11.520%
instruments             1233275    2572318     318174       1447      10047      5.567      5.597
instruments(+/-)       -19.755%   -22.762%   -35.633%     1.313%   -22.146%   -19.326%   -19.755%
log                       13894      26448       3357         16        108      5.949      6.388
log(+/-)                 4.095%     1.040%     0.894%    18.750%    32.407%     3.053%     4.095%
marine_ik              31837958   66108449    9709154      96148     192445     10.540     10.671
marine_ik(+/-)          -3.485%   -14.261%   -16.172%    38.474%    18.577%    -4.175%    -3.485%
mesh                    7165025   16660975    2473287       4788      25858      9.857      9.902
mesh(+/-)               -2.668%    -4.553%    -5.225%     1.546%     1.303%    -2.700%    -2.668%
mesh.pretty             8952620   22066037    3047424      11009      44484      5.630      5.676
mesh.pretty(+/-)        -2.658%    -3.442%    -4.246%     2.643%     3.552%    -2.879%    -2.658%
numbers                 1086947    2567441     341540        998       4512      7.204      7.240
numbers(+/-)             2.216%     0.139%     0.210%     1.804%     1.551%     2.284%     2.216%
random                  3285817    7014516     806255       3344      23698      6.413      6.437
random(+/-)            -19.703%   -31.228%   -48.659%     0.897%   -29.766%   -18.471%   -19.703%
twitter                 2952892    6166013     653871       4054      25357      4.635      4.676
twitter(+/-)           -13.533%   -12.857%   -24.432%     1.357%   -14.757%   -12.651%   -13.533%
twitterescaped          3767729    8050762     953298       3834      24762      6.648      6.699
twitterescaped(+/-)     -9.333%    -9.854%   -16.800%     9.937%   -15.245%    -9.583%    -9.333%
update-center           2548620    5154842     582431       3438      27008      4.748      4.780
update-center(+/-)     -17.474%   -24.646%   -43.048%     1.134%    19.394%   -17.295%   -17.474%

SNMalloc

                                    Instructions             Cache.              Cycle/byte      
        Name           Cycles    Normal.     Branch     Misses   References    Best       Avg    
apache_builds            519467    1095816     116263        815       4724      4.048      4.081
apache_builds(+/-)     -16.936%   -33.526%   -58.477%     1.718%     5.334%   -16.587%   -16.936%
canada                 19446891   45433059    6233505      36811      97092      8.578      8.639
canada(+/-)             -8.880%   -24.348%   -32.731%    41.151%    30.853%    -8.614%    -8.880%
citm_catalog            6869581   14665274    1749824      17296      58564      3.899      3.977
citm_catalog(+/-)      -13.104%   -38.350%   -62.006%    33.175%   -12.771%   -14.318%   -13.104%
github_events            225675     479977      48042        396       2350      3.419      3.465
github_events(+/-)     -23.624%   -20.982%   -44.365%    -8.586%   -30.511%   -22.474%   -23.624%
gsoc-2018               7787489   14896818    1277683      36394     119098      2.304      2.340
gsoc-2018(+/-)          -8.743%   -10.243%   -22.410%     5.682%     5.774%    -8.148%    -8.743%
instruments             1230806    2543900     304637       1451       9315      5.556      5.586
instruments(+/-)       -19.995%   -24.134%   -41.660%     1.585%   -31.744%   -19.555%   -19.995%
log                       13941      23363       2540         15        112      6.001      6.410
log(+/-)                 4.419%   -12.028%   -30.984%    13.333%    34.821%     3.899%     4.419%
marine_ik              32739336   66211704    9545035      92513     191540     10.803     10.974
marine_ik(+/-)          -0.636%   -14.083%   -18.170%    36.057%    18.193%    -1.639%    -0.636%
mesh                    7307579   16669209    2462756       8771      28646     10.038     10.099
mesh(+/-)               -0.665%    -4.501%    -5.675%    46.255%    10.909%    -0.842%    -0.665%
mesh.pretty             9171486   22075612    3037188      15580      49728      5.752      5.814
mesh.pretty(+/-)        -0.208%    -3.397%    -4.597%    31.207%    13.723%    -0.695%    -0.208%
numbers                 1057953    2563246     340598        999       4316      7.017      7.047
numbers(+/-)            -0.464%    -0.024%    -0.066%     1.902%    -2.919%    -0.317%    -0.464%
random                  3315435    6979470     766429       3378      20681      6.476      6.495
random(+/-)            -18.634%   -31.887%   -56.383%     1.895%   -48.697%   -17.327%   -18.634%
twitter                 2937190    6107644     631303       4139      25230      4.609      4.651
twitter(+/-)           -14.140%   -13.936%   -28.880%     3.382%   -15.335%   -13.291%   -14.140%
twitterescaped          3736442    7992432     930737       4032      24621      6.592      6.644
twitterescaped(+/-)    -10.248%   -10.656%   -19.631%    14.360%   -15.905%   -10.517%   -10.248%
update-center           2532535    5084040     550555       3503      24944      4.681      4.750
update-center(+/-)     -18.220%   -26.382%   -51.330%     2.969%    12.725%   -18.981%   -18.220%
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment