Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Benchmark of the new sparse matrix product #39

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

alxbilger
Copy link
Owner

Example of output:

--------------------------------------------------------------------------------------------------------------------------------------
Benchmark                                                                                            Time             CPU   Iterations
--------------------------------------------------------------------------------------------------------------------------------------
BM_SparseMatrixProduct<ProductColColCol>/RegularProductColColCol/100/10                           1.95 us         1.13 us       746667
BM_SparseMatrixProduct<ProductColColCol>/RegularProductColColCol/1000/10                          1136 us          625 us         1000
BM_SparseMatrixProduct<ProductColColCol>/RegularProductColColCol/100/20                           3.46 us         1.73 us       298667
BM_SparseMatrixProduct<ProductColColCol>/RegularProductColColCol/1000/20                          7043 us         4199 us          160
BM_SparseMatrixProduct<ProductColColCol>/RegularProductColColCol/100/100                          50.6 us         25.4 us        34462
BM_SparseMatrixProduct<ProductColColCol>/RegularProductColColCol/1000/100                        34985 us        21250 us           50
BM_SparseMatrixProduct<ProductColColCol>/RegularProductColColCol/100/150                          96.7 us         68.8 us        10000
BM_SparseMatrixProduct<ProductColColCol>/RegularProductColColCol/1000/150                        43718 us        22978 us           34
BM_SparseMatrixProduct<ProductColColCol>/RegularProductColColCol/10000/1                         29425 us        17020 us           56
BM_SparseMatrixProduct<ProductColColCol>/RegularProductColColCol/10000/5                       1076071 us       593750 us            2
BM_SparseMatrixProduct<ProductColColCol>/FastProductColColCol/100/10                             0.092 us        0.049 us     11200000
BM_SparseMatrixProduct<ProductColColCol>/FastProductColColCol/1000/10                              138 us         74.7 us         8363
BM_SparseMatrixProduct<ProductColColCol>/FastProductColColCol/100/20                             0.362 us        0.213 us      3446154
BM_SparseMatrixProduct<ProductColColCol>/FastProductColColCol/1000/20                             1139 us          698 us         1120
BM_SparseMatrixProduct<ProductColColCol>/FastProductColColCol/100/100                             9.85 us         6.09 us       100000
BM_SparseMatrixProduct<ProductColColCol>/FastProductColColCol/1000/100                           25205 us        14230 us           56
BM_SparseMatrixProduct<ProductColColCol>/FastProductColColCol/100/150                             39.2 us         22.9 us        32000
BM_SparseMatrixProduct<ProductColColCol>/FastProductColColCol/1000/150                           53844 us        30729 us           30
BM_SparseMatrixProduct<ProductColColCol>/FastProductColColCol/10000/1                             3877 us         2663 us          264
BM_SparseMatrixProduct<ProductColColCol>/FastProductColColCol/10000/5                           107819 us        68750 us           10
BM_SparseMatrixProduct<ProductColColCol>/ForceComputingIntersectionColColCol/100/10               37.1 us         23.6 us        34462
BM_SparseMatrixProduct<ProductColColCol>/ForceComputingIntersectionColColCol/1000/10             66846 us        39062 us           16
BM_SparseMatrixProduct<ProductColColCol>/ForceComputingIntersectionColColCol/100/20                147 us          107 us         7467
BM_SparseMatrixProduct<ProductColColCol>/ForceComputingIntersectionColColCol/1000/20            285909 us       175781 us            4
BM_SparseMatrixProduct<ProductColColCol>/ForceComputingIntersectionColColCol/100/100              3802 us         2393 us          320
BM_SparseMatrixProduct<ProductColColCol>/ForceComputingIntersectionColColCol/1000/100          2402338 us      1718750 us            1
BM_SparseMatrixProduct<ProductColColCol>/ForceComputingIntersectionColColCol/100/150              6926 us         4612 us          166
BM_SparseMatrixProduct<ProductColColCol>/ForceComputingIntersectionColColCol/1000/150          3898103 us      2093750 us            1
BM_SparseMatrixProduct<ProductColColCol>/ForceComputingIntersectionColColCol/10000/1           1079727 us       656250 us            1
BM_SparseMatrixProduct<ProductColColCol>/ForceComputingIntersectionColColCol/10000/5          41798074 us     23812500 us            1
BM_SparseMatrixProduct<ProductRowColCol>/RegularProductRowColCol/100/10                           1.80 us         1.07 us       640000
BM_SparseMatrixProduct<ProductRowColCol>/RegularProductRowColCol/1000/10                          2248 us         1381 us          498
BM_SparseMatrixProduct<ProductRowColCol>/RegularProductRowColCol/100/20                           3.46 us         1.84 us       280000
BM_SparseMatrixProduct<ProductRowColCol>/RegularProductRowColCol/1000/20                          6659 us         4108 us          213
BM_SparseMatrixProduct<ProductRowColCol>/RegularProductRowColCol/100/100                          77.4 us         50.0 us        10000
BM_SparseMatrixProduct<ProductRowColCol>/RegularProductRowColCol/1000/100                        27468 us        16462 us           56
BM_SparseMatrixProduct<ProductRowColCol>/RegularProductRowColCol/100/150                           278 us          193 us         6474
BM_SparseMatrixProduct<ProductRowColCol>/RegularProductRowColCol/1000/150                        35248 us        20270 us           37
BM_SparseMatrixProduct<ProductRowColCol>/RegularProductRowColCol/10000/1                         23699 us        12137 us          112
BM_SparseMatrixProduct<ProductRowColCol>/RegularProductRowColCol/10000/5                        749389 us       468750 us            2
BM_SparseMatrixProduct<ProductRowColCol>/FastProductRowColCol/100/10                             0.102 us        0.057 us     11027692
BM_SparseMatrixProduct<ProductRowColCol>/FastProductRowColCol/1000/10                              170 us         84.4 us        10000
BM_SparseMatrixProduct<ProductRowColCol>/FastProductRowColCol/100/20                             0.448 us        0.248 us      4977778
BM_SparseMatrixProduct<ProductRowColCol>/FastProductRowColCol/1000/20                             1641 us          703 us         1000
BM_SparseMatrixProduct<ProductRowColCol>/FastProductRowColCol/100/100                             11.5 us         6.00 us       112000
BM_SparseMatrixProduct<ProductRowColCol>/FastProductRowColCol/1000/100                           25973 us        13715 us           90
BM_SparseMatrixProduct<ProductRowColCol>/FastProductRowColCol/100/150                             42.3 us         27.3 us        19478
BM_SparseMatrixProduct<ProductRowColCol>/FastProductRowColCol/1000/150                           66101 us        34539 us           19
BM_SparseMatrixProduct<ProductRowColCol>/FastProductRowColCol/10000/1                             5085 us         2322 us          249
BM_SparseMatrixProduct<ProductRowColCol>/FastProductRowColCol/10000/5                           142694 us        64062 us           10
BM_SparseMatrixProduct<ProductRowColCol>/ForceComputingIntersectionRowColCol/100/10               36.9 us         19.5 us        34462
BM_SparseMatrixProduct<ProductRowColCol>/ForceComputingIntersectionRowColCol/1000/10             71905 us        39522 us           17
BM_SparseMatrixProduct<ProductRowColCol>/ForceComputingIntersectionRowColCol/100/20                202 us          106 us         8960
BM_SparseMatrixProduct<ProductRowColCol>/ForceComputingIntersectionRowColCol/1000/20            263293 us       153125 us            5
BM_SparseMatrixProduct<ProductRowColCol>/ForceComputingIntersectionRowColCol/100/100              4354 us         2511 us          280
BM_SparseMatrixProduct<ProductRowColCol>/ForceComputingIntersectionRowColCol/1000/100          1958653 us      1125000 us            1
BM_SparseMatrixProduct<ProductRowColCol>/ForceComputingIntersectionRowColCol/100/150              7566 us         3985 us          149
BM_SparseMatrixProduct<ProductRowColCol>/ForceComputingIntersectionRowColCol/1000/150          3097277 us      1937500 us            1
BM_SparseMatrixProduct<ProductRowColCol>/ForceComputingIntersectionRowColCol/10000/1            782160 us       460938 us            2
BM_SparseMatrixProduct<ProductRowColCol>/ForceComputingIntersectionRowColCol/10000/5          28313425 us     18203125 us            1
BM_SparseMatrixProduct<ProductColRowCol>/RegularProductColRowCol/100/10                           1.86 us         1.24 us       743348
BM_SparseMatrixProduct<ProductColRowCol>/RegularProductColRowCol/1000/10                          3297 us         2178 us          373
BM_SparseMatrixProduct<ProductColRowCol>/RegularProductColRowCol/100/20                           3.51 us         2.09 us       344615
BM_SparseMatrixProduct<ProductColRowCol>/RegularProductColRowCol/1000/20                          7055 us         3711 us          160
BM_SparseMatrixProduct<ProductColRowCol>/RegularProductColRowCol/100/100                           153 us         88.2 us        10453
BM_SparseMatrixProduct<ProductColRowCol>/RegularProductColRowCol/1000/100                        26448 us        19436 us           41
BM_SparseMatrixProduct<ProductColRowCol>/RegularProductColRowCol/100/150                           440 us          324 us         2800
BM_SparseMatrixProduct<ProductColRowCol>/RegularProductColRowCol/1000/150                        32623 us        21763 us           28
BM_SparseMatrixProduct<ProductColRowCol>/RegularProductColRowCol/10000/1                         20446 us        13936 us           37
BM_SparseMatrixProduct<ProductColRowCol>/RegularProductColRowCol/10000/5                        697174 us       359375 us            2
BM_SparseMatrixProduct<ProductColRowCol>/FastProductColRowCol/100/10                             0.106 us        0.062 us     15448276
BM_SparseMatrixProduct<ProductColRowCol>/FastProductColRowCol/1000/10                              163 us         90.7 us        11200
BM_SparseMatrixProduct<ProductColRowCol>/FastProductColRowCol/100/20                             0.373 us        0.205 us      3200000
BM_SparseMatrixProduct<ProductColRowCol>/FastProductColRowCol/1000/20                             1279 us          774 us          747
BM_SparseMatrixProduct<ProductColRowCol>/FastProductColRowCol/100/100                             9.26 us         6.10 us        89600
BM_SparseMatrixProduct<ProductColRowCol>/FastProductColRowCol/1000/100                           27053 us        15972 us           45
BM_SparseMatrixProduct<ProductColRowCol>/FastProductColRowCol/100/150                             38.8 us         24.2 us        38084
BM_SparseMatrixProduct<ProductColRowCol>/FastProductColRowCol/1000/150                           56084 us        32072 us           19
BM_SparseMatrixProduct<ProductColRowCol>/FastProductColRowCol/10000/1                             4715 us         3178 us          236
BM_SparseMatrixProduct<ProductColRowCol>/FastProductColRowCol/10000/5                           119500 us        79688 us           10
BM_SparseMatrixProduct<ProductColRowCol>/ForceComputingIntersectionColRowCol/100/10               35.4 us         23.0 us        29867
BM_SparseMatrixProduct<ProductColRowCol>/ForceComputingIntersectionColRowCol/1000/10             75057 us        53977 us           11
BM_SparseMatrixProduct<ProductColRowCol>/ForceComputingIntersectionColRowCol/100/20                213 us          142 us         7467
BM_SparseMatrixProduct<ProductColRowCol>/ForceComputingIntersectionColRowCol/1000/20            303976 us       171875 us            3
BM_SparseMatrixProduct<ProductColRowCol>/ForceComputingIntersectionColRowCol/100/100              6063 us         3551 us          154
BM_SparseMatrixProduct<ProductColRowCol>/ForceComputingIntersectionColRowCol/1000/100          2024424 us      1281250 us            1
BM_SparseMatrixProduct<ProductColRowCol>/ForceComputingIntersectionColRowCol/100/150             10980 us         6424 us           90
BM_SparseMatrixProduct<ProductColRowCol>/ForceComputingIntersectionColRowCol/1000/150          4018095 us      2750000 us            1
BM_SparseMatrixProduct<ProductColRowCol>/ForceComputingIntersectionColRowCol/10000/1            864508 us       531250 us            1
BM_SparseMatrixProduct<ProductColRowCol>/ForceComputingIntersectionColRowCol/10000/5          34427009 us     21875000 us            1
BM_SparseMatrixProduct<ProductRowRowCol>/RegularProductRowRowCol/100/10                           1.26 us        0.673 us      1090783
BM_SparseMatrixProduct<ProductRowRowCol>/RegularProductRowRowCol/1000/10                         10108 us         5814 us          129
BM_SparseMatrixProduct<ProductRowRowCol>/RegularProductRowRowCol/100/20                           2.96 us         2.01 us       560000
BM_SparseMatrixProduct<ProductRowRowCol>/RegularProductRowRowCol/1000/20                         11163 us         7812 us           64
BM_SparseMatrixProduct<ProductRowRowCol>/RegularProductRowRowCol/100/100                           209 us          134 us         3733
BM_SparseMatrixProduct<ProductRowRowCol>/RegularProductRowRowCol/1000/100                        27561 us        16183 us           56
BM_SparseMatrixProduct<ProductRowRowCol>/RegularProductRowRowCol/100/150                           779 us          454 us         1445
BM_SparseMatrixProduct<ProductRowRowCol>/RegularProductRowRowCol/1000/150                        30297 us        20508 us           32
BM_SparseMatrixProduct<ProductRowRowCol>/RegularProductRowRowCol/10000/1                         22166 us        14788 us           56
BM_SparseMatrixProduct<ProductRowRowCol>/RegularProductRowRowCol/10000/5                        663251 us       406250 us            2
BM_SparseMatrixProduct<ProductRowRowCol>/FastProductRowRowCol/100/10                             0.090 us        0.045 us     15448276
BM_SparseMatrixProduct<ProductRowRowCol>/FastProductRowRowCol/1000/10                              158 us         92.1 us         7467
BM_SparseMatrixProduct<ProductRowRowCol>/FastProductRowRowCol/100/20                             0.433 us        0.255 us      2635294
BM_SparseMatrixProduct<ProductRowRowCol>/FastProductRowRowCol/1000/20                             1267 us          703 us         1000
BM_SparseMatrixProduct<ProductRowRowCol>/FastProductRowRowCol/100/100                             9.99 us         6.09 us       100000
BM_SparseMatrixProduct<ProductRowRowCol>/FastProductRowRowCol/1000/100                           26250 us        15165 us           34
BM_SparseMatrixProduct<ProductRowRowCol>/FastProductRowRowCol/100/150                             39.4 us         23.1 us        26353
BM_SparseMatrixProduct<ProductRowRowCol>/FastProductRowRowCol/1000/150                           66561 us        41360 us           17
BM_SparseMatrixProduct<ProductRowRowCol>/FastProductRowRowCol/10000/1                             5466 us         2715 us          236
BM_SparseMatrixProduct<ProductRowRowCol>/FastProductRowRowCol/10000/5                           137245 us        79688 us           10
BM_SparseMatrixProduct<ProductRowRowCol>/ForceComputingIntersectionRowRowCol/100/10               31.7 us         16.7 us        29867
BM_SparseMatrixProduct<ProductRowRowCol>/ForceComputingIntersectionRowRowCol/1000/10            108501 us        63616 us           14
BM_SparseMatrixProduct<ProductRowRowCol>/ForceComputingIntersectionRowRowCol/100/20                320 us          171 us         4480
BM_SparseMatrixProduct<ProductRowRowCol>/ForceComputingIntersectionRowRowCol/1000/20            306770 us       164062 us            4
BM_SparseMatrixProduct<ProductRowRowCol>/ForceComputingIntersectionRowRowCol/100/100             12719 us         7115 us          112
BM_SparseMatrixProduct<ProductRowRowCol>/ForceComputingIntersectionRowRowCol/1000/100          2114770 us      1312500 us            1
BM_SparseMatrixProduct<ProductRowRowCol>/ForceComputingIntersectionRowRowCol/100/150             21363 us        12153 us           90
BM_SparseMatrixProduct<ProductRowRowCol>/ForceComputingIntersectionRowRowCol/1000/150          3964477 us      2140625 us            1
BM_SparseMatrixProduct<ProductRowRowCol>/ForceComputingIntersectionRowRowCol/10000/1            810121 us       429688 us            2
BM_SparseMatrixProduct<ProductRowRowCol>/ForceComputingIntersectionRowRowCol/10000/5          39032166 us     21875000 us            1
BM_SparseMatrixProduct<ProductColColRow>/RegularProductColColRow/100/10                           1.24 us        0.790 us       969585
BM_SparseMatrixProduct<ProductColColRow>/RegularProductColColRow/1000/10                         18740 us        13750 us           50
BM_SparseMatrixProduct<ProductColColRow>/RegularProductColColRow/100/20                           2.75 us         1.84 us       373333
BM_SparseMatrixProduct<ProductColColRow>/RegularProductColColRow/1000/20                         16489 us        10833 us           75
BM_SparseMatrixProduct<ProductColColRow>/RegularProductColColRow/100/100                           561 us          340 us         1792
BM_SparseMatrixProduct<ProductColColRow>/RegularProductColColRow/1000/100                        29012 us        17334 us           64
BM_SparseMatrixProduct<ProductColColRow>/RegularProductColColRow/100/150                          2148 us         1485 us          747
BM_SparseMatrixProduct<ProductColColRow>/RegularProductColColRow/1000/150                        32633 us        18366 us           57
BM_SparseMatrixProduct<ProductColColRow>/RegularProductColColRow/10000/1                         24288 us        11998 us           56
BM_SparseMatrixProduct<ProductColColRow>/RegularProductColColRow/10000/5                        686238 us       343750 us            2
BM_SparseMatrixProduct<ProductColColRow>/FastProductColColRow/100/10                             0.090 us        0.040 us     17920000
BM_SparseMatrixProduct<ProductColColRow>/FastProductColColRow/1000/10                              355 us          209 us         4480
BM_SparseMatrixProduct<ProductColColRow>/FastProductColColRow/100/20                             0.374 us        0.185 us      4480000
BM_SparseMatrixProduct<ProductColColRow>/FastProductColColRow/1000/20                             1607 us          677 us         1062
BM_SparseMatrixProduct<ProductColColRow>/FastProductColColRow/100/100                             10.3 us         5.30 us       112000
BM_SparseMatrixProduct<ProductColColRow>/FastProductColColRow/1000/100                           28145 us        15625 us           64
BM_SparseMatrixProduct<ProductColColRow>/FastProductColColRow/100/150                             41.9 us         24.0 us        34462
BM_SparseMatrixProduct<ProductColColRow>/FastProductColColRow/1000/150                           70861 us        31250 us           24
BM_SparseMatrixProduct<ProductColColRow>/FastProductColColRow/10000/1                             6174 us         2987 us          204
BM_SparseMatrixProduct<ProductColColRow>/FastProductColColRow/10000/5                           157463 us        76562 us           10
BM_SparseMatrixProduct<ProductColColRow>/ForceComputingIntersectionColColRow/100/10               23.8 us         10.3 us        56000
BM_SparseMatrixProduct<ProductColColRow>/ForceComputingIntersectionColColRow/1000/10             98612 us        50481 us           13
BM_SparseMatrixProduct<ProductColColRow>/ForceComputingIntersectionColColRow/100/20                234 us          115 us         6400
BM_SparseMatrixProduct<ProductColColRow>/ForceComputingIntersectionColColRow/1000/20            223929 us       117188 us            6
BM_SparseMatrixProduct<ProductColColRow>/ForceComputingIntersectionColColRow/100/100             11757 us         5022 us          112
BM_SparseMatrixProduct<ProductColColRow>/ForceComputingIntersectionColColRow/1000/100          1766811 us       875000 us            1
BM_SparseMatrixProduct<ProductColColRow>/ForceComputingIntersectionColColRow/100/150             19524 us         9766 us           64
BM_SparseMatrixProduct<ProductColColRow>/ForceComputingIntersectionColColRow/1000/150          4319114 us      1937500 us            1
BM_SparseMatrixProduct<ProductColColRow>/ForceComputingIntersectionColColRow/10000/1            685874 us       322917 us            3
BM_SparseMatrixProduct<ProductColColRow>/ForceComputingIntersectionColColRow/10000/5          23001032 us     12609375 us            1
BM_SparseMatrixProduct<ProductRowColRow>/RegularProductRowColRow/100/10                           1.85 us         1.17 us       746667
BM_SparseMatrixProduct<ProductRowColRow>/RegularProductRowColRow/1000/10                         20411 us        12847 us           45
BM_SparseMatrixProduct<ProductRowColRow>/RegularProductRowColRow/100/20                           3.60 us         1.84 us       373333
BM_SparseMatrixProduct<ProductRowColRow>/RegularProductRowColRow/1000/20                         19471 us        13542 us           90
BM_SparseMatrixProduct<ProductRowColRow>/RegularProductRowColRow/100/100                           968 us          516 us         1000
BM_SparseMatrixProduct<ProductRowColRow>/RegularProductRowColRow/1000/100                        33148 us        19301 us           34
BM_SparseMatrixProduct<ProductRowColRow>/RegularProductRowColRow/100/150                          3022 us         2136 us          373
BM_SparseMatrixProduct<ProductRowColRow>/RegularProductRowColRow/1000/150                        34342 us        22879 us           28
BM_SparseMatrixProduct<ProductRowColRow>/RegularProductRowColRow/10000/1                         30560 us        18750 us           50
BM_SparseMatrixProduct<ProductRowColRow>/RegularProductRowColRow/10000/5                        697606 us       382812 us            2
BM_SparseMatrixProduct<ProductRowColRow>/FastProductRowColRow/100/10                             0.100 us        0.058 us     10000000
BM_SparseMatrixProduct<ProductRowColRow>/FastProductRowColRow/1000/10                              155 us         78.1 us        10000
BM_SparseMatrixProduct<ProductRowColRow>/FastProductRowColRow/100/20                             0.463 us        0.253 us      4072727
BM_SparseMatrixProduct<ProductRowColRow>/FastProductRowColRow/1000/20                             1569 us          593 us          896
BM_SparseMatrixProduct<ProductRowColRow>/FastProductRowColRow/100/100                             9.20 us         6.09 us       100000
BM_SparseMatrixProduct<ProductRowColRow>/FastProductRowColRow/1000/100                           27612 us        13194 us           45
BM_SparseMatrixProduct<ProductRowColRow>/FastProductRowColRow/100/150                             44.5 us         24.9 us        40727
BM_SparseMatrixProduct<ProductRowColRow>/FastProductRowColRow/1000/150                           66165 us        34722 us           18
BM_SparseMatrixProduct<ProductRowColRow>/FastProductRowColRow/10000/1                             4750 us         3064 us          204
BM_SparseMatrixProduct<ProductRowColRow>/FastProductRowColRow/10000/5                           138466 us        93750 us            6
BM_SparseMatrixProduct<ProductRowColRow>/ForceComputingIntersectionRowColRow/100/10               26.9 us         15.3 us        44800
BM_SparseMatrixProduct<ProductRowColRow>/ForceComputingIntersectionRowColRow/1000/10             90871 us        60938 us           10
BM_SparseMatrixProduct<ProductRowColRow>/ForceComputingIntersectionRowColRow/100/20                266 us          120 us         6400
BM_SparseMatrixProduct<ProductRowColRow>/ForceComputingIntersectionRowColRow/1000/20            248878 us       156250 us            4
BM_SparseMatrixProduct<ProductRowColRow>/ForceComputingIntersectionRowColRow/100/100             13051 us         7292 us           90
BM_SparseMatrixProduct<ProductRowColRow>/ForceComputingIntersectionRowColRow/1000/100          1805915 us      1062500 us            1
BM_SparseMatrixProduct<ProductRowColRow>/ForceComputingIntersectionRowColRow/100/150             22814 us        10417 us           75
BM_SparseMatrixProduct<ProductRowColRow>/ForceComputingIntersectionRowColRow/1000/150          4230428 us      2171875 us            1
BM_SparseMatrixProduct<ProductRowColRow>/ForceComputingIntersectionRowColRow/10000/1            682731 us       398438 us            2
BM_SparseMatrixProduct<ProductRowColRow>/ForceComputingIntersectionRowColRow/10000/5          21461099 us     12046875 us            1
BM_SparseMatrixProduct<ProductColRowRow>/RegularProductColRowRow/100/10                           1.97 us         1.40 us       560000
BM_SparseMatrixProduct<ProductColRowRow>/RegularProductColRowRow/1000/10                         31693 us        16875 us           50
BM_SparseMatrixProduct<ProductColRowRow>/RegularProductColRowRow/100/20                           3.54 us         1.69 us       407273
BM_SparseMatrixProduct<ProductColRowRow>/RegularProductColRowRow/1000/20                         36196 us        16768 us           41
BM_SparseMatrixProduct<ProductColRowRow>/RegularProductColRowRow/100/100                          1120 us          625 us         1000
BM_SparseMatrixProduct<ProductColRowRow>/RegularProductColRowRow/1000/100                        41557 us        19688 us           50
BM_SparseMatrixProduct<ProductColRowRow>/RegularProductColRowRow/100/150                          4585 us         2698 us          249
BM_SparseMatrixProduct<ProductColRowRow>/RegularProductColRowRow/1000/150                        40057 us        20693 us           37
BM_SparseMatrixProduct<ProductColRowRow>/RegularProductColRowRow/10000/1                         35183 us        22879 us           28
BM_SparseMatrixProduct<ProductColRowRow>/RegularProductColRowRow/10000/5                        728832 us       500000 us            1
BM_SparseMatrixProduct<ProductColRowRow>/FastProductColRowRow/100/10                             0.098 us        0.053 us     11200000
BM_SparseMatrixProduct<ProductColRowRow>/FastProductColRowRow/1000/10                              157 us         82.0 us         8960
BM_SparseMatrixProduct<ProductColRowRow>/FastProductColRowRow/100/20                             0.357 us        0.202 us      2635294
BM_SparseMatrixProduct<ProductColRowRow>/FastProductColRowRow/1000/20                             1281 us          688 us         1000
BM_SparseMatrixProduct<ProductColRowRow>/FastProductColRowRow/100/100                             12.7 us         7.11 us       112000
BM_SparseMatrixProduct<ProductColRowRow>/FastProductColRowRow/1000/100                           28533 us        16875 us           75
BM_SparseMatrixProduct<ProductColRowRow>/FastProductColRowRow/100/150                             46.3 us         23.4 us        32000
BM_SparseMatrixProduct<ProductColRowRow>/FastProductColRowRow/1000/150                           59229 us        40923 us           21
BM_SparseMatrixProduct<ProductColRowRow>/FastProductColRowRow/10000/1                             4737 us         2441 us          320
BM_SparseMatrixProduct<ProductColRowRow>/FastProductColRowRow/10000/5                           152719 us        67708 us            9
BM_SparseMatrixProduct<ProductColRowRow>/ForceComputingIntersectionColRowRow/100/10               24.6 us         13.4 us        74667
BM_SparseMatrixProduct<ProductColRowRow>/ForceComputingIntersectionColRowRow/1000/10            110057 us        53125 us           10
BM_SparseMatrixProduct<ProductColRowRow>/ForceComputingIntersectionColRowRow/100/20               88.9 us         55.8 us        11200
BM_SparseMatrixProduct<ProductColRowRow>/ForceComputingIntersectionColRowRow/1000/20            271897 us       147569 us            9
BM_SparseMatrixProduct<ProductColRowRow>/ForceComputingIntersectionColRowRow/100/100             18780 us         9182 us           97
BM_SparseMatrixProduct<ProductColRowRow>/ForceComputingIntersectionColRowRow/1000/100          1826237 us       890625 us            1
BM_SparseMatrixProduct<ProductColRowRow>/ForceComputingIntersectionColRowRow/100/150             23267 us        10324 us           56
BM_SparseMatrixProduct<ProductColRowRow>/ForceComputingIntersectionColRowRow/1000/150          4621325 us      2625000 us            1
BM_SparseMatrixProduct<ProductColRowRow>/ForceComputingIntersectionColRowRow/10000/1            727187 us       437500 us            2
BM_SparseMatrixProduct<ProductColRowRow>/ForceComputingIntersectionColRowRow/10000/5          24013683 us     12375000 us            1
BM_SparseMatrixProduct<ProductRowRowRow>/RegularProductRowRowRow/100/10                           2.03 us         1.37 us       640000
BM_SparseMatrixProduct<ProductRowRowRow>/RegularProductRowRowRow/1000/10                         36021 us        17923 us           34
BM_SparseMatrixProduct<ProductRowRowRow>/RegularProductRowRowRow/100/20                           4.42 us         2.07 us       248889
BM_SparseMatrixProduct<ProductRowRowRow>/RegularProductRowRowRow/1000/20                         25599 us        13889 us           45
BM_SparseMatrixProduct<ProductRowRowRow>/RegularProductRowRowRow/100/100                          1316 us          593 us          896
BM_SparseMatrixProduct<ProductRowRowRow>/RegularProductRowRowRow/1000/100                        40734 us        21354 us           30
BM_SparseMatrixProduct<ProductRowRowRow>/RegularProductRowRowRow/100/150                          4251 us         2322 us          498
BM_SparseMatrixProduct<ProductRowRowRow>/RegularProductRowRowRow/1000/150                        38850 us        22949 us           32
BM_SparseMatrixProduct<ProductRowRowRow>/RegularProductRowRowRow/10000/1                         33249 us        18066 us           32
BM_SparseMatrixProduct<ProductRowRowRow>/RegularProductRowRowRow/10000/5                       1113042 us       640625 us            1
BM_SparseMatrixProduct<ProductRowRowRow>/FastProductRowRowRow/100/10                             0.090 us        0.064 us     10000000
BM_SparseMatrixProduct<ProductRowRowRow>/FastProductRowRowRow/1000/10                              145 us         73.2 us         8960
BM_SparseMatrixProduct<ProductRowRowRow>/FastProductRowRowRow/100/20                             0.418 us        0.220 us      3200000
BM_SparseMatrixProduct<ProductRowRowRow>/FastProductRowRowRow/1000/20                             1082 us          715 us          896
BM_SparseMatrixProduct<ProductRowRowRow>/FastProductRowRowRow/100/100                             9.63 us         5.86 us       112000
BM_SparseMatrixProduct<ProductRowRowRow>/FastProductRowRowRow/1000/100                           23937 us        13958 us           75
BM_SparseMatrixProduct<ProductRowRowRow>/FastProductRowRowRow/100/150                             39.2 us         18.3 us        38449
BM_SparseMatrixProduct<ProductRowRowRow>/FastProductRowRowRow/1000/150                           52866 us        32072 us           19
BM_SparseMatrixProduct<ProductRowRowRow>/FastProductRowRowRow/10000/1                             3950 us         2404 us          299
BM_SparseMatrixProduct<ProductRowRowRow>/FastProductRowRowRow/10000/5                           108789 us        69444 us            9
BM_SparseMatrixProduct<ProductRowRowRow>/ForceComputingIntersectionRowRowRow/100/10               26.7 us         17.0 us        49778
BM_SparseMatrixProduct<ProductRowRowRow>/ForceComputingIntersectionRowRowRow/1000/10            111435 us        62500 us            9
BM_SparseMatrixProduct<ProductRowRowRow>/ForceComputingIntersectionRowRowRow/100/20                254 us          141 us         4978
BM_SparseMatrixProduct<ProductRowRowRow>/ForceComputingIntersectionRowRowRow/1000/20            274846 us       175781 us            4
BM_SparseMatrixProduct<ProductRowRowRow>/ForceComputingIntersectionRowRowRow/100/100             16542 us         9645 us           81
BM_SparseMatrixProduct<ProductRowRowRow>/ForceComputingIntersectionRowRowRow/1000/100          1892133 us      1203125 us            1
BM_SparseMatrixProduct<ProductRowRowRow>/ForceComputingIntersectionRowRowRow/100/150             23534 us        13916 us           64
BM_SparseMatrixProduct<ProductRowRowRow>/ForceComputingIntersectionRowRowRow/1000/150          4161050 us      2296875 us            1
BM_SparseMatrixProduct<ProductRowRowRow>/ForceComputingIntersectionRowRowRow/10000/1            812288 us       734375 us            1
BM_SparseMatrixProduct<ProductRowRowRow>/ForceComputingIntersectionRowRowRow/10000/5          26959948 us     16562500 us            1
BM_SparseMatrixProduct<ProductParColColCol>/RegularProductParColColCol/100/10                     2.28 us         1.46 us       448000
BM_SparseMatrixProduct<ProductParColColCol>/RegularProductParColColCol/1000/10                   31009 us        22518 us           34
BM_SparseMatrixProduct<ProductParColColCol>/RegularProductParColColCol/100/20                     3.85 us         2.40 us       344615
BM_SparseMatrixProduct<ProductParColColCol>/RegularProductParColColCol/1000/20                   24947 us        15625 us           64
BM_SparseMatrixProduct<ProductParColColCol>/RegularProductParColColCol/100/100                    1259 us          851 us         1120
BM_SparseMatrixProduct<ProductParColColCol>/RegularProductParColColCol/1000/100                  38490 us        23926 us           32
BM_SparseMatrixProduct<ProductParColColCol>/RegularProductParColColCol/100/150                    4443 us         2648 us          236
BM_SparseMatrixProduct<ProductParColColCol>/RegularProductParColColCol/1000/150                  38141 us        28646 us           30
BM_SparseMatrixProduct<ProductParColColCol>/RegularProductParColColCol/10000/1                   33281 us        19761 us           34
BM_SparseMatrixProduct<ProductParColColCol>/RegularProductParColColCol/10000/5                 1007905 us       875000 us            1
BM_SparseMatrixProduct<ProductParColColCol>/FastProductParColColCol/100/10                        11.9 us         2.51 us       398222
BM_SparseMatrixProduct<ProductParColColCol>/FastProductParColColCol/1000/10                       42.1 us         19.2 us        44800
BM_SparseMatrixProduct<ProductParColColCol>/FastProductParColColCol/100/20                        11.8 us         2.43 us       373333
BM_SparseMatrixProduct<ProductParColColCol>/FastProductParColColCol/1000/20                        198 us         56.5 us        10791
BM_SparseMatrixProduct<ProductParColColCol>/FastProductParColColCol/100/100                       9.13 us         1.67 us       373333
BM_SparseMatrixProduct<ProductParColColCol>/FastProductParColColCol/1000/100                      6526 us         2295 us          320
BM_SparseMatrixProduct<ProductParColColCol>/FastProductParColColCol/100/150                       13.4 us         2.59 us       223252
BM_SparseMatrixProduct<ProductParColColCol>/FastProductParColColCol/1000/150                     15355 us         2634 us          172
BM_SparseMatrixProduct<ProductParColColCol>/FastProductParColColCol/10000/1                       1715 us          435 us         1545
BM_SparseMatrixProduct<ProductParColColCol>/FastProductParColColCol/10000/5                      53194 us        32366 us           28
BM_SparseMatrixProduct<ProductParColColCol>/ForceComputingIntersectionParColColCol/100/10         59.4 us         34.3 us        18667
BM_SparseMatrixProduct<ProductParColColCol>/ForceComputingIntersectionParColColCol/1000/10      150397 us        90909 us           11
BM_SparseMatrixProduct<ProductParColColCol>/ForceComputingIntersectionParColColCol/100/20          151 us          110 us         8960
BM_SparseMatrixProduct<ProductParColColCol>/ForceComputingIntersectionParColColCol/1000/20      386879 us       289062 us            2
BM_SparseMatrixProduct<ProductParColColCol>/ForceComputingIntersectionParColColCol/100/100       25968 us        16113 us           64
BM_SparseMatrixProduct<ProductParColColCol>/ForceComputingIntersectionParColColCol/1000/100    2325808 us      1234375 us            1
BM_SparseMatrixProduct<ProductParColColCol>/ForceComputingIntersectionParColColCol/100/150       38849 us        27344 us           32
BM_SparseMatrixProduct<ProductParColColCol>/ForceComputingIntersectionParColColCol/1000/150    4994999 us      3453125 us            1
BM_SparseMatrixProduct<ProductParColColCol>/ForceComputingIntersectionParColColCol/10000/1     1078688 us       656250 us            1
BM_SparseMatrixProduct<ProductParColColCol>/ForceComputingIntersectionParColColCol/10000/5    32191381 us     20828125 us            1
BM_SparseMatrixProduct<ProductParRowColCol>/RegularProductParRowColCol/100/10                     2.16 us         1.33 us       896000
BM_SparseMatrixProduct<ProductParRowColCol>/RegularProductParRowColCol/1000/10                   31005 us        17912 us           41
BM_SparseMatrixProduct<ProductParRowColCol>/RegularProductParRowColCol/100/20                     3.56 us         2.34 us       448000
BM_SparseMatrixProduct<ProductParRowColCol>/RegularProductParRowColCol/1000/20                   30625 us        21354 us           30
BM_SparseMatrixProduct<ProductParRowColCol>/RegularProductParRowColCol/100/100                     931 us          531 us         1000
BM_SparseMatrixProduct<ProductParRowColCol>/RegularProductParRowColCol/1000/100                  39144 us        25240 us           26
BM_SparseMatrixProduct<ProductParRowColCol>/RegularProductParRowColCol/100/150                    3387 us         2102 us          498
BM_SparseMatrixProduct<ProductParRowColCol>/RegularProductParRowColCol/1000/150                  36859 us        21181 us           45
BM_SparseMatrixProduct<ProductParRowColCol>/RegularProductParRowColCol/10000/1                   30526 us        18382 us           34
BM_SparseMatrixProduct<ProductParRowColCol>/RegularProductParRowColCol/10000/5                  672638 us       437500 us            2
BM_SparseMatrixProduct<ProductParRowColCol>/FastProductParRowColCol/100/10                        9.91 us         1.62 us       298667
BM_SparseMatrixProduct<ProductParRowColCol>/FastProductParRowColCol/1000/10                       42.8 us         15.9 us        74667
BM_SparseMatrixProduct<ProductParRowColCol>/FastProductParRowColCol/100/20                        10.0 us         1.46 us       298667
BM_SparseMatrixProduct<ProductParRowColCol>/FastProductParRowColCol/1000/20                        205 us         76.6 us        10000
BM_SparseMatrixProduct<ProductParRowColCol>/FastProductParRowColCol/100/100                       9.41 us         1.81 us       640000
BM_SparseMatrixProduct<ProductParRowColCol>/FastProductParRowColCol/1000/100                      6978 us         1820 us          747
BM_SparseMatrixProduct<ProductParRowColCol>/FastProductParRowColCol/100/150                       13.2 us         3.24 us       448000
BM_SparseMatrixProduct<ProductParRowColCol>/FastProductParRowColCol/1000/150                     15394 us         3247 us          154
BM_SparseMatrixProduct<ProductParRowColCol>/FastProductParRowColCol/10000/1                       2014 us          460 us         1120
BM_SparseMatrixProduct<ProductParRowColCol>/FastProductParRowColCol/10000/5                      57617 us        19775 us           64
BM_SparseMatrixProduct<ProductParRowColCol>/ForceComputingIntersectionParRowColCol/100/10         34.3 us         22.6 us        24889
BM_SparseMatrixProduct<ProductParRowColCol>/ForceComputingIntersectionParRowColCol/1000/10      143700 us        72917 us            9
BM_SparseMatrixProduct<ProductParRowColCol>/ForceComputingIntersectionParRowColCol/100/20          137 us         95.9 us         8960
BM_SparseMatrixProduct<ProductParRowColCol>/ForceComputingIntersectionParRowColCol/1000/20      343618 us       203125 us            3
BM_SparseMatrixProduct<ProductParRowColCol>/ForceComputingIntersectionParRowColCol/100/100       16293 us         9896 us           90
BM_SparseMatrixProduct<ProductParRowColCol>/ForceComputingIntersectionParRowColCol/1000/100    2115054 us      1515625 us            1
BM_SparseMatrixProduct<ProductParRowColCol>/ForceComputingIntersectionParRowColCol/100/150       27654 us        16470 us           37
BM_SparseMatrixProduct<ProductParRowColCol>/ForceComputingIntersectionParRowColCol/1000/150    3779632 us      2296875 us            1
BM_SparseMatrixProduct<ProductParRowColCol>/ForceComputingIntersectionParRowColCol/10000/1      892257 us       640625 us            1
BM_SparseMatrixProduct<ProductParRowColCol>/ForceComputingIntersectionParRowColCol/10000/5    25191684 us     16250000 us            1
BM_SparseMatrixProduct<ProductParColRowCol>/RegularProductParColRowCol/100/10                     2.23 us         1.35 us       462452
BM_SparseMatrixProduct<ProductParColRowCol>/RegularProductParColRowCol/1000/10                   30386 us        21635 us           26
BM_SparseMatrixProduct<ProductParColRowCol>/RegularProductParColRowCol/100/20                     3.62 us         2.79 us       280000
BM_SparseMatrixProduct<ProductParColRowCol>/RegularProductParColRowCol/1000/20                   26925 us        18532 us           43
BM_SparseMatrixProduct<ProductParColRowCol>/RegularProductParColRowCol/100/100                     847 us          625 us         1000
BM_SparseMatrixProduct<ProductParColRowCol>/RegularProductParColRowCol/1000/100                  35441 us        26250 us           25
BM_SparseMatrixProduct<ProductParColRowCol>/RegularProductParColRowCol/100/150                    3186 us         2002 us          320
BM_SparseMatrixProduct<ProductParColRowCol>/RegularProductParColRowCol/1000/150                  35295 us        30134 us           28
BM_SparseMatrixProduct<ProductParColRowCol>/RegularProductParColRowCol/10000/1                   31492 us        28125 us           25
BM_SparseMatrixProduct<ProductParColRowCol>/RegularProductParColRowCol/10000/5                  662718 us       414062 us            2
BM_SparseMatrixProduct<ProductParColRowCol>/FastProductParColRowCol/100/10                        10.3 us         1.12 us       448000
BM_SparseMatrixProduct<ProductParColRowCol>/FastProductParColRowCol/1000/10                       43.7 us         13.1 us        57344
BM_SparseMatrixProduct<ProductParColRowCol>/FastProductParColRowCol/100/20                        10.6 us         1.38 us       373333
BM_SparseMatrixProduct<ProductParColRowCol>/FastProductParColRowCol/1000/20                        198 us         48.1 us        22400
BM_SparseMatrixProduct<ProductParColRowCol>/FastProductParColRowCol/100/100                       9.37 us         2.26 us       373333
BM_SparseMatrixProduct<ProductParColRowCol>/FastProductParColRowCol/1000/100                      6772 us         1360 us          448
BM_SparseMatrixProduct<ProductParColRowCol>/FastProductParColRowCol/100/150                       13.1 us         5.62 us       100000
BM_SparseMatrixProduct<ProductParColRowCol>/FastProductParColRowCol/1000/150                     16014 us         3064 us          204
BM_SparseMatrixProduct<ProductParColRowCol>/FastProductParColRowCol/10000/1                       1759 us          345 us         1493
BM_SparseMatrixProduct<ProductParColRowCol>/FastProductParColRowCol/10000/5                      53120 us        13194 us           45
BM_SparseMatrixProduct<ProductParColRowCol>/ForceComputingIntersectionParColRowCol/100/10         39.5 us         28.8 us        29867
BM_SparseMatrixProduct<ProductParColRowCol>/ForceComputingIntersectionParColRowCol/1000/10      139483 us        93750 us           10
BM_SparseMatrixProduct<ProductParColRowCol>/ForceComputingIntersectionParColRowCol/100/20          134 us          107 us        11200
BM_SparseMatrixProduct<ProductParColRowCol>/ForceComputingIntersectionParColRowCol/1000/20      359347 us       229167 us            3
BM_SparseMatrixProduct<ProductParColRowCol>/ForceComputingIntersectionParColRowCol/100/100       22715 us        14062 us           50
BM_SparseMatrixProduct<ProductParColRowCol>/ForceComputingIntersectionParColRowCol/1000/100    2073676 us      1421875 us            1
BM_SparseMatrixProduct<ProductParColRowCol>/ForceComputingIntersectionParColRowCol/100/150       31918 us        18403 us           45
BM_SparseMatrixProduct<ProductParColRowCol>/ForceComputingIntersectionParColRowCol/1000/150    4516689 us      3312500 us            1
BM_SparseMatrixProduct<ProductParColRowCol>/ForceComputingIntersectionParColRowCol/10000/1      866677 us       515625 us            1
BM_SparseMatrixProduct<ProductParColRowCol>/ForceComputingIntersectionParColRowCol/10000/5    24764368 us     16375000 us            1
BM_SparseMatrixProduct<ProductParRowRowCol>/RegularProductParRowRowCol/100/10                     2.85 us         2.39 us       248889
BM_SparseMatrixProduct<ProductParRowRowCol>/RegularProductParRowRowCol/1000/10                   26173 us        18229 us           54
BM_SparseMatrixProduct<ProductParRowRowCol>/RegularProductParRowRowCol/100/20                     2.86 us         2.16 us       448000
BM_SparseMatrixProduct<ProductParRowRowCol>/RegularProductParRowRowCol/1000/20                   21731 us        13750 us           50
BM_SparseMatrixProduct<ProductParRowRowCol>/RegularProductParRowRowCol/100/100                     807 us          567 us         1434
BM_SparseMatrixProduct<ProductParRowRowCol>/RegularProductParRowRowCol/1000/100                  30108 us        20020 us           32
BM_SparseMatrixProduct<ProductParRowRowCol>/RegularProductParRowRowCol/100/150                    5173 us         3906 us          224
BM_SparseMatrixProduct<ProductParRowRowCol>/RegularProductParRowRowCol/1000/150                  29870 us        19848 us           37
BM_SparseMatrixProduct<ProductParRowRowCol>/RegularProductParRowRowCol/10000/1                   23445 us        15972 us           45
BM_SparseMatrixProduct<ProductParRowRowCol>/RegularProductParRowRowCol/10000/5                  658329 us       500000 us            1
BM_SparseMatrixProduct<ProductParRowRowCol>/FastProductParRowRowCol/100/10                        10.1 us         1.27 us       344615
BM_SparseMatrixProduct<ProductParRowRowCol>/FastProductParRowRowCol/1000/10                       46.5 us         13.4 us        37333
BM_SparseMatrixProduct<ProductParRowRowCol>/FastProductParRowRowCol/100/20                        10.7 us         1.74 us       448000
BM_SparseMatrixProduct<ProductParRowRowCol>/FastProductParRowRowCol/1000/20                        256 us         60.6 us        15206
BM_SparseMatrixProduct<ProductParRowRowCol>/FastProductParRowRowCol/100/100                       8.82 us         1.00 us       497778
BM_SparseMatrixProduct<ProductParRowRowCol>/FastProductParRowRowCol/1000/100                      7983 us         1744 us          448
BM_SparseMatrixProduct<ProductParRowRowCol>/FastProductParRowRowCol/100/150                       14.3 us         3.66 us       209067
BM_SparseMatrixProduct<ProductParRowRowCol>/FastProductParRowRowCol/1000/150                     17550 us         4464 us          112
BM_SparseMatrixProduct<ProductParRowRowCol>/FastProductParRowRowCol/10000/1                       2282 us          376 us         1911
BM_SparseMatrixProduct<ProductParRowRowCol>/FastProductParRowRowCol/10000/5                      62466 us        30273 us           32
BM_SparseMatrixProduct<ProductParRowRowCol>/ForceComputingIntersectionParRowRowCol/100/10         30.5 us         17.6 us        37333
BM_SparseMatrixProduct<ProductParRowRowCol>/ForceComputingIntersectionParRowRowCol/1000/10      213252 us       109375 us            9
BM_SparseMatrixProduct<ProductParRowRowCol>/ForceComputingIntersectionParRowRowCol/100/20          148 us         82.0 us         8960
BM_SparseMatrixProduct<ProductParRowRowCol>/ForceComputingIntersectionParRowRowCol/1000/20      409256 us       197917 us            3
BM_SparseMatrixProduct<ProductParRowRowCol>/ForceComputingIntersectionParRowRowCol/100/100       23603 us        12847 us           45
BM_SparseMatrixProduct<ProductParRowRowCol>/ForceComputingIntersectionParRowRowCol/1000/100    2466049 us      1203125 us            1
BM_SparseMatrixProduct<ProductParRowRowCol>/ForceComputingIntersectionParRowRowCol/100/150       41273 us        23438 us           32
BM_SparseMatrixProduct<ProductParRowRowCol>/ForceComputingIntersectionParRowRowCol/1000/150    5804949 us      2921875 us            1
BM_SparseMatrixProduct<ProductParRowRowCol>/ForceComputingIntersectionParRowRowCol/10000/1     1004194 us       546875 us            1
BM_SparseMatrixProduct<ProductParRowRowCol>/ForceComputingIntersectionParRowRowCol/10000/5    29711073 us     15671875 us            1
BM_SparseMatrixProduct<ProductParColColRow>/RegularProductParColColRow/100/10                     1.75 us         1.00 us       640000
BM_SparseMatrixProduct<ProductParColColRow>/RegularProductParColColRow/1000/10                   31087 us        20270 us           37
BM_SparseMatrixProduct<ProductParColColRow>/RegularProductParColColRow/100/20                     3.04 us         1.93 us       446016
BM_SparseMatrixProduct<ProductParColColRow>/RegularProductParColColRow/1000/20                   28386 us        15346 us          112
BM_SparseMatrixProduct<ProductParColColRow>/RegularProductParColColRow/100/100                     807 us          480 us         1792
BM_SparseMatrixProduct<ProductParColColRow>/RegularProductParColColRow/1000/100                  34917 us        19792 us           45
BM_SparseMatrixProduct<ProductParColColRow>/RegularProductParColColRow/100/150                    4235 us         3154 us          213
BM_SparseMatrixProduct<ProductParColColRow>/RegularProductParColColRow/1000/150                  29840 us        18995 us           51
BM_SparseMatrixProduct<ProductParColColRow>/RegularProductParColColRow/10000/1                   23860 us        14583 us           45
BM_SparseMatrixProduct<ProductParColColRow>/RegularProductParColColRow/10000/5                  695538 us       250000 us            2
BM_SparseMatrixProduct<ProductParColColRow>/FastProductParColColRow/100/10                        8.37 us         1.28 us      1000000
BM_SparseMatrixProduct<ProductParColColRow>/FastProductParColColRow/1000/10                       51.2 us         17.2 us        63716
BM_SparseMatrixProduct<ProductParColColRow>/FastProductParColColRow/100/20                        9.15 us         1.05 us       448000
BM_SparseMatrixProduct<ProductParColColRow>/FastProductParColColRow/1000/20                        296 us         66.3 us         8960
BM_SparseMatrixProduct<ProductParColColRow>/FastProductParColColRow/100/100                       9.24 us        0.942 us       497778
BM_SparseMatrixProduct<ProductParColColRow>/FastProductParColColRow/1000/100                      9511 us         2188 us          407
BM_SparseMatrixProduct<ProductParColColRow>/FastProductParColColRow/100/150                       14.3 us         2.45 us       344615
BM_SparseMatrixProduct<ProductParColColRow>/FastProductParColColRow/1000/150                     15685 us         2885 us          195
BM_SparseMatrixProduct<ProductParColColRow>/FastProductParColColRow/10000/1                       2132 us          293 us         2133
BM_SparseMatrixProduct<ProductParColColRow>/FastProductParColColRow/10000/5                      57154 us        25276 us           34
BM_SparseMatrixProduct<ProductParColColRow>/ForceComputingIntersectionParColColRow/100/10         23.3 us         12.9 us        64000
BM_SparseMatrixProduct<ProductParColColRow>/ForceComputingIntersectionParColColRow/1000/10      101199 us        51339 us           14
BM_SparseMatrixProduct<ProductParColColRow>/ForceComputingIntersectionParColColRow/100/20         91.7 us         39.3 us        19478
BM_SparseMatrixProduct<ProductParColColRow>/ForceComputingIntersectionParColColRow/1000/20      274391 us       128472 us            9
BM_SparseMatrixProduct<ProductParColColRow>/ForceComputingIntersectionParColColRow/100/100       11328 us         4688 us          130
BM_SparseMatrixProduct<ProductParColColRow>/ForceComputingIntersectionParColColRow/1000/100    1846387 us       890625 us            1
BM_SparseMatrixProduct<ProductParColColRow>/ForceComputingIntersectionParColColRow/100/150       19178 us         9905 us          112
BM_SparseMatrixProduct<ProductParColColRow>/ForceComputingIntersectionParColColRow/1000/150    4705896 us      1968750 us            1
BM_SparseMatrixProduct<ProductParColColRow>/ForceComputingIntersectionParColColRow/10000/1      698122 us       289062 us            2
BM_SparseMatrixProduct<ProductParColColRow>/ForceComputingIntersectionParColColRow/10000/5    21632288 us      9421875 us            1
BM_SparseMatrixProduct<ProductParRowColRow>/RegularProductParRowColRow/100/10                     2.20 us         1.09 us       560000
BM_SparseMatrixProduct<ProductParRowColRow>/RegularProductParRowColRow/1000/10                   29930 us        11719 us           56
BM_SparseMatrixProduct<ProductParRowColRow>/RegularProductParRowColRow/100/20                     3.48 us         2.22 us       344615
BM_SparseMatrixProduct<ProductParRowColRow>/RegularProductParRowColRow/1000/20                   32891 us        10742 us           64
BM_SparseMatrixProduct<ProductParRowColRow>/RegularProductParRowColRow/100/100                    1024 us          336 us         1723
BM_SparseMatrixProduct<ProductParRowColRow>/RegularProductParRowColRow/1000/100                  46178 us        11458 us           45
BM_SparseMatrixProduct<ProductParRowColRow>/RegularProductParRowColRow/100/150                    4081 us         1820 us          498
BM_SparseMatrixProduct<ProductParRowColRow>/RegularProductParRowColRow/1000/150                  41092 us         9905 us          112
BM_SparseMatrixProduct<ProductParRowColRow>/RegularProductParRowColRow/10000/1                   43772 us        11406 us          100

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant