Improve the performance of MatrixTransposeMatrix multiply.

Compute A'B as rank-1 sums of outer products of the rows of
A and B. This is more cache coherent.

Benchmark                                                 Time             CPU      Time Old      Time New       CPU Old       CPU New
--------------------------------------------------------------------------------------------------------------------------------------
BM_MatrixMatrixMultiplyDynamic/2/2/2                   +0.0031         +0.0033            27            27            27            27
BM_MatrixMatrixMultiplyDynamic/2/2/4                   +0.0383         +0.0380            41            42            41            42
BM_MatrixMatrixMultiplyDynamic/2/2/6                   +0.0001         +0.0019            58            58            57            58
BM_MatrixMatrixMultiplyDynamic/2/2/8                   +0.0169         +0.0169            70            71            70            71
BM_MatrixMatrixMultiplyDynamic/2/2/10                  +0.0162         +0.0161            83            85            83            85
BM_MatrixMatrixMultiplyDynamic/2/2/12                  -0.0049         -0.0048            93            93            93            93
BM_MatrixMatrixMultiplyDynamic/2/2/15                  +0.0131         +0.0129           114           115           114           115
BM_MatrixMatrixMultiplyDynamic/2/4/2                   +0.0494         +0.0489            32            34            32            34
BM_MatrixMatrixMultiplyDynamic/2/4/4                   +0.0121         +0.0121            51            52            51            52
BM_MatrixMatrixMultiplyDynamic/2/4/6                   +0.0134         +0.0138            70            71            70            71
BM_MatrixMatrixMultiplyDynamic/2/4/8                   +0.0006         +0.0005            90            90            90            90
BM_MatrixMatrixMultiplyDynamic/2/4/10                  +0.0248         +0.0248           107           110           107           110
BM_MatrixMatrixMultiplyDynamic/2/4/12                  -0.0239         -0.0234           125           122           125           122
BM_MatrixMatrixMultiplyDynamic/2/4/15                  +0.0611         +0.0605           155           164           155           164
BM_MatrixMatrixMultiplyDynamic/2/6/2                   -0.0017         -0.0017            39            39            39            39
BM_MatrixMatrixMultiplyDynamic/2/6/4                   +0.0139         +0.0147            59            60            59            60
BM_MatrixMatrixMultiplyDynamic/2/6/6                   -0.1062         -0.1003            89            80            89            80
BM_MatrixMatrixMultiplyDynamic/2/6/8                   -0.0339         -0.0344           116           112           115           111
BM_MatrixMatrixMultiplyDynamic/2/6/10                  +0.0568         +0.0455           142           150           141           148
BM_MatrixMatrixMultiplyDynamic/2/6/12                  -0.0073         -0.0062           155           154           155           154
BM_MatrixMatrixMultiplyDynamic/2/6/15                  +0.0219         +0.0215           187           191           187           191
BM_MatrixMatrixMultiplyDynamic/2/8/2                   -0.0165         -0.0160            43            42            43            42
BM_MatrixMatrixMultiplyDynamic/2/8/4                   -0.0247         -0.0245            71            69            70            69
BM_MatrixMatrixMultiplyDynamic/2/8/6                   -0.0642         -0.0614           104            98           104            98
BM_MatrixMatrixMultiplyDynamic/2/8/8                   -0.0607         -0.0599           133           125           133           125
BM_MatrixMatrixMultiplyDynamic/2/8/10                  -0.0523         -0.0510           166           157           166           157
BM_MatrixMatrixMultiplyDynamic/2/8/12                  -0.0381         -0.0376           189           182           189           182
BM_MatrixMatrixMultiplyDynamic/2/8/15                  -0.0725         -0.0716           243           226           243           225
BM_MatrixMatrixMultiplyDynamic/2/10/2                  -0.0421         -0.0416            50            48            50            48
BM_MatrixMatrixMultiplyDynamic/2/10/4                  -0.0558         -0.0549            83            78            83            78
BM_MatrixMatrixMultiplyDynamic/2/10/6                  -0.0527         -0.0518           115           109           115           109
BM_MatrixMatrixMultiplyDynamic/2/10/8                  -0.0421         -0.0413           150           144           150           144
BM_MatrixMatrixMultiplyDynamic/2/10/10                 -0.0606         -0.0601           202           190           202           190
BM_MatrixMatrixMultiplyDynamic/2/10/12                 -0.0409         -0.0406           224           215           224           215
BM_MatrixMatrixMultiplyDynamic/2/10/15                 -0.0308         -0.0302           277           268           277           268
BM_MatrixMatrixMultiplyDynamic/2/12/2                  -0.0059         -0.0058            53            52            53            52
BM_MatrixMatrixMultiplyDynamic/2/12/4                  +0.0019         +0.0023            87            87            87            87
BM_MatrixMatrixMultiplyDynamic/2/12/6                  -0.0032         -0.0025           126           125           126           125
BM_MatrixMatrixMultiplyDynamic/2/12/8                  -0.0039         -0.0038           159           158           159           158
BM_MatrixMatrixMultiplyDynamic/2/12/10                 -0.0175         -0.0171           205           201           205           201
BM_MatrixMatrixMultiplyDynamic/2/12/12                 -0.0643         -0.0633           295           276           294           276
BM_MatrixMatrixMultiplyDynamic/2/12/15                 -0.0215         -0.0201           328           321           328           321
BM_MatrixMatrixMultiplyDynamic/2/15/2                  +0.0092         +0.0103            58            58            58            58
BM_MatrixMatrixMultiplyDynamic/2/15/4                  +0.0762         +0.0765            98           105            98           105
BM_MatrixMatrixMultiplyDynamic/2/15/6                  -0.0155         -0.0172           138           136           138           136
BM_MatrixMatrixMultiplyDynamic/2/15/8                  +0.0674         +0.0658           180           192           180           191
BM_MatrixMatrixMultiplyDynamic/2/15/10                 +0.0254         +0.0255           236           242           236           242
BM_MatrixMatrixMultiplyDynamic/2/15/12                 -0.0383         -0.0378           289           278           289           278
BM_MatrixMatrixMultiplyDynamic/2/15/15                 -0.0313         -0.0308           407           394           406           394
BM_MatrixMatrixMultiplyDynamic/4/2/2                   +0.0286         +0.0286            42            43            42            43
BM_MatrixMatrixMultiplyDynamic/4/2/4                   -0.0455         -0.0439            71            68            71            68
BM_MatrixMatrixMultiplyDynamic/4/2/6                   +0.0221         +0.0229            93            95            93            95
BM_MatrixMatrixMultiplyDynamic/4/2/8                   -0.0226         -0.0225           120           118           120           118
BM_MatrixMatrixMultiplyDynamic/4/2/10                  -0.1153         -0.1130           158           140           158           140
BM_MatrixMatrixMultiplyDynamic/4/2/12                  -0.0145         -0.0143           164           162           164           162
BM_MatrixMatrixMultiplyDynamic/4/2/15                  -0.0396         -0.0393           205           197           205           197
BM_MatrixMatrixMultiplyDynamic/4/4/2                   -0.0696         -0.0682            57            53            57            53
BM_MatrixMatrixMultiplyDynamic/4/4/4                   -0.0233         -0.0231            91            89            91            89
BM_MatrixMatrixMultiplyDynamic/4/4/6                   -0.0711         -0.0702           130           121           130           121
BM_MatrixMatrixMultiplyDynamic/4/4/8                   -0.1180         -0.1113           178           157           176           157
BM_MatrixMatrixMultiplyDynamic/4/4/10                  -0.0301         -0.0282           194           188           194           188
BM_MatrixMatrixMultiplyDynamic/4/4/12                  -0.1156         -0.1137           251           222           251           222
BM_MatrixMatrixMultiplyDynamic/4/4/15                  -0.0182         -0.0179           307           302           307           301
BM_MatrixMatrixMultiplyDynamic/4/6/2                   -0.0228         -0.0220            64            63            64            63
BM_MatrixMatrixMultiplyDynamic/4/6/4                   +0.0048         +0.0045           106           107           106           107
BM_MatrixMatrixMultiplyDynamic/4/6/6                   -0.0131         -0.0126           155           153           155           153
BM_MatrixMatrixMultiplyDynamic/4/6/8                   -0.0526         -0.0502           211           200           210           200
BM_MatrixMatrixMultiplyDynamic/4/6/10                  -0.0995         -0.0975           274           247           274           247
BM_MatrixMatrixMultiplyDynamic/4/6/12                  -0.0436         -0.0430           297           284           297           284
BM_MatrixMatrixMultiplyDynamic/4/6/15                  +0.0042         +0.0050           344           345           343           345
BM_MatrixMatrixMultiplyDynamic/4/8/2                   -0.0283         -0.0279            74            72            74            72
BM_MatrixMatrixMultiplyDynamic/4/8/4                   -0.0282         -0.0277           125           122           125           122
BM_MatrixMatrixMultiplyDynamic/4/8/6                   -0.0756         -0.0693           185           171           184           171
BM_MatrixMatrixMultiplyDynamic/4/8/8                   -0.0510         -0.0444           267           253           265           253
BM_MatrixMatrixMultiplyDynamic/4/8/10                  -0.0512         -0.0460           301           285           299           285
BM_MatrixMatrixMultiplyDynamic/4/8/12                  -0.0046         -0.0006           351           349           349           349
BM_MatrixMatrixMultiplyDynamic/4/8/15                  -0.0795         -0.0785           452           416           451           416
BM_MatrixMatrixMultiplyDynamic/4/10/2                  -0.0415         -0.0406            85            81            85            81
BM_MatrixMatrixMultiplyDynamic/4/10/4                  -0.0118         -0.0118           143           141           143           141
BM_MatrixMatrixMultiplyDynamic/4/10/6                  -0.0484         -0.0478           217           206           216           206
BM_MatrixMatrixMultiplyDynamic/4/10/8                  -0.0373         -0.0372           280           269           280           269
BM_MatrixMatrixMultiplyDynamic/4/10/10                 +0.0083         +0.0083           350           353           350           353
BM_MatrixMatrixMultiplyDynamic/4/10/12                 -0.0364         -0.0365           436           420           436           420
BM_MatrixMatrixMultiplyDynamic/4/10/15                 -0.0221         -0.0210           513           502           512           502
BM_MatrixMatrixMultiplyDynamic/4/12/2                  -0.0569         -0.0565            94            89            94            89
BM_MatrixMatrixMultiplyDynamic/4/12/4                  -0.0343         -0.0338           162           157           162           157
BM_MatrixMatrixMultiplyDynamic/4/12/6                  +0.0197         +0.0198           227           232           227           231
BM_MatrixMatrixMultiplyDynamic/4/12/8                  -0.0390         -0.0388           310           298           310           298
BM_MatrixMatrixMultiplyDynamic/4/12/10                 -0.0088         -0.0085           389           386           389           386
BM_MatrixMatrixMultiplyDynamic/4/12/12                 +0.0524         +0.0505           545           574           545           572
BM_MatrixMatrixMultiplyDynamic/4/12/15                 +0.0801         +0.0764           597           645           597           642
BM_MatrixMatrixMultiplyDynamic/4/15/2                  -0.0024         -0.0026            99            99            99            99
BM_MatrixMatrixMultiplyDynamic/4/15/4                  -0.0289         -0.0270           187           181           186           181
BM_MatrixMatrixMultiplyDynamic/4/15/6                  -0.0264         -0.0261           263           256           263           256
BM_MatrixMatrixMultiplyDynamic/4/15/8                  -0.0344         -0.0334           349           337           348           337
BM_MatrixMatrixMultiplyDynamic/4/15/10                 -0.0189         -0.0191           454           446           454           445
BM_MatrixMatrixMultiplyDynamic/4/15/12                 -0.0483         -0.0470           524           499           523           498
BM_MatrixMatrixMultiplyDynamic/4/15/15                 -0.1084         -0.1070           840           749           838           748
BM_MatrixMatrixMultiplyDynamic/6/2/2                   -0.0574         -0.0561            59            56            59            56
BM_MatrixMatrixMultiplyDynamic/6/2/4                   -0.0727         -0.0721            98            91            98            91
BM_MatrixMatrixMultiplyDynamic/6/2/6                   -0.0292         -0.0283           133           129           133           129
BM_MatrixMatrixMultiplyDynamic/6/2/8                   -0.0283         -0.0278           167           162           167           162
BM_MatrixMatrixMultiplyDynamic/6/2/10                  -0.0482         -0.0476           216           206           216           206
BM_MatrixMatrixMultiplyDynamic/6/2/12                  -0.0117         -0.0115           243           240           243           240
BM_MatrixMatrixMultiplyDynamic/6/2/15                  -0.0234         -0.0225           299           292           299           292
BM_MatrixMatrixMultiplyDynamic/6/4/2                   -0.0950         -0.0898            79            72            79            72
BM_MatrixMatrixMultiplyDynamic/6/4/4                   -0.0300         -0.0298           130           127           130           127
BM_MatrixMatrixMultiplyDynamic/6/4/6                   -0.0379         -0.0376           175           169           175           169
BM_MatrixMatrixMultiplyDynamic/6/4/8                   -0.0340         -0.0319           236           228           236           228
BM_MatrixMatrixMultiplyDynamic/6/4/10                  -0.0498         -0.0490           289           275           289           275
BM_MatrixMatrixMultiplyDynamic/6/4/12                  +0.0134         +0.0134           325           330           325           330
BM_MatrixMatrixMultiplyDynamic/6/4/15                  -0.0836         -0.0794           469           429           466           429
BM_MatrixMatrixMultiplyDynamic/6/6/2                   -0.0614         -0.0563            91            86            91            86
BM_MatrixMatrixMultiplyDynamic/6/6/4                   -0.0249         -0.0239           153           149           152           149
BM_MatrixMatrixMultiplyDynamic/6/6/6                   -0.0442         -0.0438           235           224           234           224
BM_MatrixMatrixMultiplyDynamic/6/6/8                   -0.0127         -0.0083           296           292           295           292
BM_MatrixMatrixMultiplyDynamic/6/6/10                  +0.0305         +0.0302           360           371           360           371
BM_MatrixMatrixMultiplyDynamic/6/6/12                  -0.0479         -0.0463           434           413           433           413
BM_MatrixMatrixMultiplyDynamic/6/6/15                  -0.0774         -0.0742           542           500           540           500
BM_MatrixMatrixMultiplyDynamic/6/8/2                   -0.0617         -0.0611           106            99           106            99
BM_MatrixMatrixMultiplyDynamic/6/8/4                   -0.1153         -0.1147           202           179           202           179
BM_MatrixMatrixMultiplyDynamic/6/8/6                   -0.0591         -0.0589           270           254           270           254
BM_MatrixMatrixMultiplyDynamic/6/8/8                   -0.0677         -0.0671           381           355           381           355
BM_MatrixMatrixMultiplyDynamic/6/8/10                  -0.0771         -0.0757           451           416           450           416
BM_MatrixMatrixMultiplyDynamic/6/8/12                  -0.0520         -0.0519           522           495           522           495
BM_MatrixMatrixMultiplyDynamic/6/8/15                  -0.0386         -0.0386           639           614           638           614
BM_MatrixMatrixMultiplyDynamic/6/10/2                  -0.0764         -0.0756           121           111           120           111
BM_MatrixMatrixMultiplyDynamic/6/10/4                  -0.0847         -0.0777           224           205           222           205
BM_MatrixMatrixMultiplyDynamic/6/10/6                  -0.0762         -0.0748           320           295           319           295
BM_MatrixMatrixMultiplyDynamic/6/10/8                  -0.0160         -0.0164           413           407           413           406
BM_MatrixMatrixMultiplyDynamic/6/10/10                 +0.0438         +0.0429           526           549           525           548
BM_MatrixMatrixMultiplyDynamic/6/10/12                 +0.0641         +0.0615           606           645           605           643
BM_MatrixMatrixMultiplyDynamic/6/10/15                 +0.0983         +0.0965           741           814           740           812
BM_MatrixMatrixMultiplyDynamic/6/12/2                  +0.0697         +0.0663           135           144           135           144
BM_MatrixMatrixMultiplyDynamic/6/12/4                  -0.0230         -0.0240           251           245           250           244
BM_MatrixMatrixMultiplyDynamic/6/12/6                  -0.0728         -0.0703           365           338           364           338
BM_MatrixMatrixMultiplyDynamic/6/12/8                  -0.1444         -0.1402           514           440           511           440
BM_MatrixMatrixMultiplyDynamic/6/12/10                 -0.1268         -0.1216           628           548           624           548
BM_MatrixMatrixMultiplyDynamic/6/12/12                 -0.1323         -0.1250           883           766           875           766
BM_MatrixMatrixMultiplyDynamic/6/12/15                 -0.1337         -0.1304           995           862           991           862
BM_MatrixMatrixMultiplyDynamic/6/15/2                  -0.1163         -0.1140           158           140           158           140
BM_MatrixMatrixMultiplyDynamic/6/15/4                  -0.0721         -0.0689           285           265           284           265
BM_MatrixMatrixMultiplyDynamic/6/15/6                  -0.0597         -0.0582           414           389           413           389
BM_MatrixMatrixMultiplyDynamic/6/15/8                  -0.1189         -0.1173           563           496           562           496
BM_MatrixMatrixMultiplyDynamic/6/15/10                 -0.0754         -0.0737           749           693           747           692
BM_MatrixMatrixMultiplyDynamic/6/15/12                 +0.0141         +0.0153           871           883           866           879
BM_MatrixMatrixMultiplyDynamic/6/15/15                 -0.1184         -0.1152          1398          1233          1387          1228
BM_MatrixMatrixMultiplyDynamic/8/2/2                   -0.0232         -0.0242            77            75            77            75
BM_MatrixMatrixMultiplyDynamic/8/2/4                   +0.1114         +0.1085           120           133           119           132
BM_MatrixMatrixMultiplyDynamic/8/2/6                   +0.0794         +0.0760           169           183           169           182
BM_MatrixMatrixMultiplyDynamic/8/2/8                   +0.0833         +0.0780           221           239           221           238
BM_MatrixMatrixMultiplyDynamic/8/2/10                  +0.0037         +0.0037           264           265           264           265
BM_MatrixMatrixMultiplyDynamic/8/2/12                  +0.0114         +0.0115           301           304           301           304
BM_MatrixMatrixMultiplyDynamic/8/2/15                  +0.0034         +0.0030           378           380           378           380
BM_MatrixMatrixMultiplyDynamic/8/4/2                   +0.0197         +0.0198            90            91            90            91
BM_MatrixMatrixMultiplyDynamic/8/4/4                   +0.0231         +0.0230           156           160           156           160
BM_MatrixMatrixMultiplyDynamic/8/4/6                   +0.0233         +0.0235           225           230           225           230
BM_MatrixMatrixMultiplyDynamic/8/4/8                   +0.0352         +0.0349           286           296           286           296
BM_MatrixMatrixMultiplyDynamic/8/4/10                  +0.0569         +0.0551           362           382           362           382
BM_MatrixMatrixMultiplyDynamic/8/4/12                  -0.0180         -0.0181           424           416           424           416
BM_MatrixMatrixMultiplyDynamic/8/4/15                  -0.0807         -0.0763           627           576           623           576
BM_MatrixMatrixMultiplyDynamic/8/6/2                   -0.0030         -0.0029           111           111           111           111
BM_MatrixMatrixMultiplyDynamic/8/6/4                   +0.0053         +0.0051           198           199           198           199
BM_MatrixMatrixMultiplyDynamic/8/6/6                   -0.1261         -0.1233           330           288           329           288
BM_MatrixMatrixMultiplyDynamic/8/6/8                   -0.0760         -0.0755           398           368           398           368
BM_MatrixMatrixMultiplyDynamic/8/6/10                  -0.0497         -0.0487           505           480           505           480
BM_MatrixMatrixMultiplyDynamic/8/6/12                  +0.0090         +0.0091           529           534           529           534
BM_MatrixMatrixMultiplyDynamic/8/6/15                  -0.0778         -0.0757           704           649           702           649
BM_MatrixMatrixMultiplyDynamic/8/8/2                   -0.1332         -0.1305           150           130           149           130
BM_MatrixMatrixMultiplyDynamic/8/8/4                   -0.0903         -0.0878           257           234           257           234
BM_MatrixMatrixMultiplyDynamic/8/8/6                   -0.1177         -0.1165           380           335           379           335
BM_MatrixMatrixMultiplyDynamic/8/8/8                   -0.0799         -0.0786           509           468           508           468
BM_MatrixMatrixMultiplyDynamic/8/8/10                  -0.1098         -0.1057           604           538           601           537
BM_MatrixMatrixMultiplyDynamic/8/8/12                  -0.0676         -0.0662           697           650           696           650
BM_MatrixMatrixMultiplyDynamic/8/8/15                  -0.0707         -0.0696           856           796           855           796
BM_MatrixMatrixMultiplyDynamic/8/10/2                  -0.0429         -0.0417           149           142           149           142
BM_MatrixMatrixMultiplyDynamic/8/10/4                  -0.0652         -0.0640           286           267           286           267
BM_MatrixMatrixMultiplyDynamic/8/10/6                  -0.0259         -0.0253           402           392           402           392
BM_MatrixMatrixMultiplyDynamic/8/10/8                  -0.0131         -0.0129           526           520           526           519
BM_MatrixMatrixMultiplyDynamic/8/10/10                 -0.0873         -0.0865           697           636           696           636
BM_MatrixMatrixMultiplyDynamic/8/10/12                 -0.0130         -0.0127           799           788           798           788
BM_MatrixMatrixMultiplyDynamic/8/10/15                 -0.0441         -0.0438          1018           973          1018           973
BM_MatrixMatrixMultiplyDynamic/8/12/2                  -0.0384         -0.0379           172           166           172           165
BM_MatrixMatrixMultiplyDynamic/8/12/4                  -0.0321         -0.0307           307           297           307           297
BM_MatrixMatrixMultiplyDynamic/8/12/6                  -0.0394         -0.0380           458           440           458           440
BM_MatrixMatrixMultiplyDynamic/8/12/8                  -0.0529         -0.0522           608           576           607           576
BM_MatrixMatrixMultiplyDynamic/8/12/10                 -0.0566         -0.0560           747           705           747           705
BM_MatrixMatrixMultiplyDynamic/8/12/12                 -0.0007         -0.0006          1024          1024          1024          1023
BM_MatrixMatrixMultiplyDynamic/8/12/15                 -0.0422         -0.0420          1163          1114          1162          1113
BM_MatrixMatrixMultiplyDynamic/8/15/2                  -0.0241         -0.0241           197           192           197           192
BM_MatrixMatrixMultiplyDynamic/8/15/4                  -0.0515         -0.0514           352           334           352           333
BM_MatrixMatrixMultiplyDynamic/8/15/6                  -0.0192         -0.0194           506           496           506           496
BM_MatrixMatrixMultiplyDynamic/8/15/8                  -0.0338         -0.0334           674           651           674           651
BM_MatrixMatrixMultiplyDynamic/8/15/10                 -0.0556         -0.0545           922           871           921           871
BM_MatrixMatrixMultiplyDynamic/8/15/12                 -0.0473         -0.0462          1052          1002          1050          1001
BM_MatrixMatrixMultiplyDynamic/8/15/15                 -0.0522         -0.0521          1484          1406          1483          1406
BM_MatrixTransposeMatrixMultiplyDynamic/2/2/2          -0.1216         -0.1203            31            27            31            27
BM_MatrixTransposeMatrixMultiplyDynamic/2/2/4          -0.3827         -0.3818            49            30            49            30
BM_MatrixTransposeMatrixMultiplyDynamic/2/2/6          -0.3901         -0.3888            67            41            67            41
BM_MatrixTransposeMatrixMultiplyDynamic/2/2/8          -0.5469         -0.5458            86            39            86            39
BM_MatrixTransposeMatrixMultiplyDynamic/2/4/2          -0.2362         -0.2365            47            36            47            36
BM_MatrixTransposeMatrixMultiplyDynamic/2/4/4          -0.4470         -0.4469            77            43            77            43
BM_MatrixTransposeMatrixMultiplyDynamic/2/4/6          -0.4545         -0.4546           111            61           111            61
BM_MatrixTransposeMatrixMultiplyDynamic/2/4/8          -0.6093         -0.6093           142            56           142            56
BM_MatrixTransposeMatrixMultiplyDynamic/2/5/2          -0.2345         -0.2348            54            41            54            41
BM_MatrixTransposeMatrixMultiplyDynamic/2/5/4          -0.5111         -0.5107            99            48            99            48
BM_MatrixTransposeMatrixMultiplyDynamic/2/5/6          -0.4944         -0.4946           136            69           136            69
BM_MatrixTransposeMatrixMultiplyDynamic/2/5/8          -0.6354         -0.6354           171            62           171            62
BM_MatrixTransposeMatrixMultiplyDynamic/2/8/2          -0.3370         -0.3369            82            55            82            55
BM_MatrixTransposeMatrixMultiplyDynamic/2/8/4          -0.5062         -0.5064           139            69           139            69
BM_MatrixTransposeMatrixMultiplyDynamic/2/8/6          -0.5422         -0.5421           208            95           208            95
BM_MatrixTransposeMatrixMultiplyDynamic/2/8/8          -0.6903         -0.6896           294            91           294            91
BM_MatrixTransposeMatrixMultiplyDynamic/2/10/2         -0.1791         -0.1811            99            82            99            81
BM_MatrixTransposeMatrixMultiplyDynamic/2/10/4         -0.5062         -0.5061           177            88           177            88
BM_MatrixTransposeMatrixMultiplyDynamic/2/10/6         -0.5110         -0.5110           256           125           256           125
BM_MatrixTransposeMatrixMultiplyDynamic/2/10/8         -0.6632         -0.6632           334           112           333           112
BM_MatrixTransposeMatrixMultiplyDynamic/2/12/2         -0.3272         -0.3269           120            81           120            81
BM_MatrixTransposeMatrixMultiplyDynamic/2/12/4         -0.5019         -0.5019           212           105           212           105
BM_MatrixTransposeMatrixMultiplyDynamic/2/12/6         -0.5365         -0.5365           303           140           303           140
BM_MatrixTransposeMatrixMultiplyDynamic/2/12/8         -0.6856         -0.6856           398           125           398           125
BM_MatrixTransposeMatrixMultiplyDynamic/2/15/2         -0.2425         -0.2425           143           109           143           109
BM_MatrixTransposeMatrixMultiplyDynamic/2/15/4         -0.5891         -0.5871           298           122           296           122
BM_MatrixTransposeMatrixMultiplyDynamic/2/15/6         -0.5790         -0.5782           414           174           413           174
BM_MatrixTransposeMatrixMultiplyDynamic/2/15/8         -0.7173         -0.7173           509           144           509           144
BM_MatrixTransposeMatrixMultiplyDynamic/4/2/2          +0.0482         +0.0489            37            39            37            39
BM_MatrixTransposeMatrixMultiplyDynamic/4/2/4          -0.2428         -0.2433            60            45            60            45
BM_MatrixTransposeMatrixMultiplyDynamic/4/2/6          -0.2921         -0.2917            84            59            84            59
BM_MatrixTransposeMatrixMultiplyDynamic/4/2/8          -0.4632         -0.4630           105            56           105            56
BM_MatrixTransposeMatrixMultiplyDynamic/4/4/2          -0.0305         -0.0301            60            58            60            58
BM_MatrixTransposeMatrixMultiplyDynamic/4/4/4          -0.3008         -0.3007           101            70           101            70
BM_MatrixTransposeMatrixMultiplyDynamic/4/4/6          -0.3708         -0.3700           149            94           149            94
BM_MatrixTransposeMatrixMultiplyDynamic/4/4/8          -0.5160         -0.5159           190            92           189            92
BM_MatrixTransposeMatrixMultiplyDynamic/4/5/2          -0.0187         -0.0185            71            70            71            70
BM_MatrixTransposeMatrixMultiplyDynamic/4/5/4          -0.3064         -0.3054           130            90           130            90
BM_MatrixTransposeMatrixMultiplyDynamic/4/5/6          -0.3762         -0.3753           184           115           184           115
BM_MatrixTransposeMatrixMultiplyDynamic/4/5/8          -0.5845         -0.5838           240           100           240           100
BM_MatrixTransposeMatrixMultiplyDynamic/4/8/2          +0.0517         +0.0521           109           115           109           115
BM_MatrixTransposeMatrixMultiplyDynamic/4/8/4          -0.2895         -0.2889           194           138           194           138
BM_MatrixTransposeMatrixMultiplyDynamic/4/8/6          -0.3138         -0.3136           279           191           279           191
BM_MatrixTransposeMatrixMultiplyDynamic/4/8/8          -0.5429         -0.5421           381           174           380           174
BM_MatrixTransposeMatrixMultiplyDynamic/4/10/2         +0.0612         +0.0620           135           143           135           143
BM_MatrixTransposeMatrixMultiplyDynamic/4/10/4         -0.3269         -0.3263           259           174           258           174
BM_MatrixTransposeMatrixMultiplyDynamic/4/10/6         -0.2955         -0.2961           343           242           343           241
BM_MatrixTransposeMatrixMultiplyDynamic/4/10/8         -0.5484         -0.5475           466           210           465           210
BM_MatrixTransposeMatrixMultiplyDynamic/4/12/2         +0.1234         +0.1239           157           177           157           177
BM_MatrixTransposeMatrixMultiplyDynamic/4/12/4         -0.3002         -0.2997           291           204           291           204
BM_MatrixTransposeMatrixMultiplyDynamic/4/12/6         -0.3419         -0.3415           415           273           415           273
BM_MatrixTransposeMatrixMultiplyDynamic/4/12/8         -0.5604         -0.5600           545           239           544           239
BM_MatrixTransposeMatrixMultiplyDynamic/4/15/2         +0.1730         +0.1712           185           217           185           216
BM_MatrixTransposeMatrixMultiplyDynamic/4/15/4         -0.3099         -0.3097           346           239           346           239
BM_MatrixTransposeMatrixMultiplyDynamic/4/15/6         -0.3743         -0.3741           521           326           521           326
BM_MatrixTransposeMatrixMultiplyDynamic/4/15/8         -0.5411         -0.5409           654           300           654           300
BM_MatrixTransposeMatrixMultiplyDynamic/6/2/2          +0.2546         +0.2547            41            51            41            51
BM_MatrixTransposeMatrixMultiplyDynamic/6/2/4          -0.0940         -0.0942            66            60            66            60
BM_MatrixTransposeMatrixMultiplyDynamic/6/2/6          -0.1584         -0.1585            95            80            95            80
BM_MatrixTransposeMatrixMultiplyDynamic/6/2/8          -0.4333         -0.4329           130            74           130            74
BM_MatrixTransposeMatrixMultiplyDynamic/6/4/2          +0.1951         +0.1952            69            82            69            82
BM_MatrixTransposeMatrixMultiplyDynamic/6/4/4          -0.2034         -0.2034           123            98           123            98
BM_MatrixTransposeMatrixMultiplyDynamic/6/4/6          -0.1998         -0.1995           178           142           178           142
BM_MatrixTransposeMatrixMultiplyDynamic/6/4/8          -0.4348         -0.4347           233           131           233           131
BM_MatrixTransposeMatrixMultiplyDynamic/6/5/2          +0.5517         +0.5521            82           128            82           128
BM_MatrixTransposeMatrixMultiplyDynamic/6/5/4          -0.1427         -0.1427           145           124           145           124
BM_MatrixTransposeMatrixMultiplyDynamic/6/5/6          -0.1846         -0.1846           220           179           220           179
BM_MatrixTransposeMatrixMultiplyDynamic/6/5/8          -0.4871         -0.4873           290           149           290           148
BM_MatrixTransposeMatrixMultiplyDynamic/6/8/2          +0.3469         +0.3473           131           176           131           176
BM_MatrixTransposeMatrixMultiplyDynamic/6/8/4          -0.1013         -0.1018           248           223           248           222
BM_MatrixTransposeMatrixMultiplyDynamic/6/8/6          -0.1652         -0.1670           354           295           353           294
BM_MatrixTransposeMatrixMultiplyDynamic/6/8/8          -0.4302         -0.4299           447           255           447           255
BM_MatrixTransposeMatrixMultiplyDynamic/6/10/2         +0.4005         +0.4001           157           219           157           219
BM_MatrixTransposeMatrixMultiplyDynamic/6/10/4         -0.0439         -0.0441           295           282           294           281
BM_MatrixTransposeMatrixMultiplyDynamic/6/10/6         -0.1031         -0.1074           420           377           420           375
BM_MatrixTransposeMatrixMultiplyDynamic/6/10/8         -0.3655         -0.3679           556           353           555           351
BM_MatrixTransposeMatrixMultiplyDynamic/6/12/2         +0.5654         +0.5604           183           287           183           286
BM_MatrixTransposeMatrixMultiplyDynamic/6/12/4         -0.1118         -0.1116           353           314           353           314
BM_MatrixTransposeMatrixMultiplyDynamic/6/12/6         -0.2045         -0.2053           517           411           516           410
BM_MatrixTransposeMatrixMultiplyDynamic/6/12/8         -0.4662         -0.4660           657           350           656           350
BM_MatrixTransposeMatrixMultiplyDynamic/6/15/2         +0.3582         +0.3588           242           328           241           328
BM_MatrixTransposeMatrixMultiplyDynamic/6/15/4         -0.1403         -0.1407           428           368           428           367
BM_MatrixTransposeMatrixMultiplyDynamic/6/15/6         -0.2424         -0.2421           632           479           632           479
BM_MatrixTransposeMatrixMultiplyDynamic/6/15/8         -0.5094         -0.5092           835           410           834           409
BM_MatrixTransposeMatrixMultiplyDynamic/8/2/2          +0.3930         +0.3925            47            66            47            66
BM_MatrixTransposeMatrixMultiplyDynamic/8/2/4          +0.0226         +0.0215            78            80            78            80
BM_MatrixTransposeMatrixMultiplyDynamic/8/2/6          -0.0428         -0.0427           105           100           105           100
BM_MatrixTransposeMatrixMultiplyDynamic/8/2/8          -0.3418         -0.3437           141            93           141            92
BM_MatrixTransposeMatrixMultiplyDynamic/8/4/2          +0.3927         +0.3924            85           118            85           118
BM_MatrixTransposeMatrixMultiplyDynamic/8/4/4          -0.0040         -0.0039           137           136           136           136
BM_MatrixTransposeMatrixMultiplyDynamic/8/4/6          -0.0342         -0.0339           204           197           204           197
BM_MatrixTransposeMatrixMultiplyDynamic/8/4/8          -0.3575         -0.3577           267           171           267           171
BM_MatrixTransposeMatrixMultiplyDynamic/8/5/2          +0.7014         +0.7033            99           168            99           168
BM_MatrixTransposeMatrixMultiplyDynamic/8/5/4          +0.0952         +0.0952           163           179           163           179
BM_MatrixTransposeMatrixMultiplyDynamic/8/5/6          -0.1164         -0.1163           246           218           246           218
BM_MatrixTransposeMatrixMultiplyDynamic/8/5/8          -0.3550         -0.3565           322           208           322           207
BM_MatrixTransposeMatrixMultiplyDynamic/8/8/2          +0.7074         +0.7072           140           239           140           239
BM_MatrixTransposeMatrixMultiplyDynamic/8/8/4          +0.1072         +0.1075           276           306           276           306
BM_MatrixTransposeMatrixMultiplyDynamic/8/8/6          -0.0771         -0.0768           398           368           398           367
BM_MatrixTransposeMatrixMultiplyDynamic/8/8/8          -0.3614         -0.3612           524           335           524           335
BM_MatrixTransposeMatrixMultiplyDynamic/8/10/2         +0.6979         +0.7004           184           313           184           312
BM_MatrixTransposeMatrixMultiplyDynamic/8/10/4         +0.0967         +0.0955           326           357           325           356
BM_MatrixTransposeMatrixMultiplyDynamic/8/10/6         -0.0248         -0.0239           486           474           485           474
BM_MatrixTransposeMatrixMultiplyDynamic/8/10/8         -0.3432         -0.3437           603           396           603           396
BM_MatrixTransposeMatrixMultiplyDynamic/8/12/2         +0.5977         +0.5985           210           335           210           335
BM_MatrixTransposeMatrixMultiplyDynamic/8/12/4         -0.0530         -0.0484           405           384           403           384
BM_MatrixTransposeMatrixMultiplyDynamic/8/12/6         -0.0557         -0.0561           574           542           574           541
BM_MatrixTransposeMatrixMultiplyDynamic/8/12/8         -0.2835         -0.2849           730           523           730           522
BM_MatrixTransposeMatrixMultiplyDynamic/8/15/2         +0.7117         +0.7085           254           434           254           433
BM_MatrixTransposeMatrixMultiplyDynamic/8/15/4         +0.0630         +0.0602           458           487           458           486
BM_MatrixTransposeMatrixMultiplyDynamic/8/15/6         -0.0321         -0.0330           662           641           662           640
BM_MatrixTransposeMatrixMultiplyDynamic/8/15/8         -0.3974         -0.3978           911           549           910           548

Change-Id: I09d87c1885be86177b93c8fe0e6f89a75eb2f7a1
diff --git a/internal/ceres/benchmarks/macbook-pro-2014-small_blas_gemm_benchmark.json b/internal/ceres/benchmarks/macbook-pro-2014-small_blas_gemm_benchmark.json
index 234c60b..dda3d1f 100644
--- a/internal/ceres/benchmarks/macbook-pro-2014-small_blas_gemm_benchmark.json
+++ b/internal/ceres/benchmarks/macbook-pro-2014-small_blas_gemm_benchmark.json
@@ -1,6 +1,6 @@
 {
   "context": {
-    "date": "2018-02-25 14:13:17",
+    "date": "2018-02-25 15:01:29",
     "num_cpus": 8,
     "mhz_per_cpu": 2200,
     "cpu_scaling_enabled": false,
@@ -9,2158 +9,2158 @@
   "benchmarks": [
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/2/2",
-      "iterations": 24328448,
-      "real_time": 2.7001229960104549e+01,
-      "cpu_time": 2.6995227973440805e+01,
+      "iterations": 24677431,
+      "real_time": 2.7085933013385780e+01,
+      "cpu_time": 2.7083694408871004e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/2/4",
-      "iterations": 16057108,
-      "real_time": 4.0568398555018589e+01,
-      "cpu_time": 4.0563904782853776e+01,
+      "iterations": 17313790,
+      "real_time": 4.2123262151658700e+01,
+      "cpu_time": 4.2103548674207090e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/2/6",
-      "iterations": 11412733,
-      "real_time": 5.7605783036145375e+01,
-      "cpu_time": 5.7495255518551055e+01,
+      "iterations": 12189601,
+      "real_time": 5.7610895552453258e+01,
+      "cpu_time": 5.7605495044505531e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/2/8",
-      "iterations": 10048953,
-      "real_time": 7.0132481659413315e+01,
-      "cpu_time": 7.0131385826961250e+01,
+      "iterations": 9997001,
+      "real_time": 7.1320817710789754e+01,
+      "cpu_time": 7.1316987964690568e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/2/10",
-      "iterations": 8834368,
-      "real_time": 8.3236611607074963e+01,
-      "cpu_time": 8.3227685330744748e+01,
+      "iterations": 8191542,
+      "real_time": 8.4588146774604070e+01,
+      "cpu_time": 8.4571500701577250e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/2/12",
-      "iterations": 7170956,
-      "real_time": 9.3025472478138965e+01,
-      "cpu_time": 9.3010890040323787e+01,
+      "iterations": 7566259,
+      "real_time": 9.2572298006312238e+01,
+      "cpu_time": 9.2567542295340360e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/2/15",
-      "iterations": 6378771,
-      "real_time": 1.1389117981274377e+02,
-      "cpu_time": 1.1388212556933007e+02,
+      "iterations": 6357568,
+      "real_time": 1.1537903991795532e+02,
+      "cpu_time": 1.1535417316810455e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/4/2",
-      "iterations": 21298088,
-      "real_time": 3.2089051371515666e+01,
-      "cpu_time": 3.2088514236583102e+01,
+      "iterations": 21475752,
+      "real_time": 3.3675625559755055e+01,
+      "cpu_time": 3.3656609556675889e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/4/4",
-      "iterations": 12707403,
-      "real_time": 5.0976902201043181e+01,
-      "cpu_time": 5.0969737876417348e+01,
+      "iterations": 13274420,
+      "real_time": 5.1594679393420982e+01,
+      "cpu_time": 5.1588468648724401e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/4/6",
-      "iterations": 10641209,
-      "real_time": 6.9944400492284501e+01,
-      "cpu_time": 6.9905872537603599e+01,
+      "iterations": 9605093,
+      "real_time": 7.0885081700170687e+01,
+      "cpu_time": 7.0873962386413197e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/4/8",
-      "iterations": 7948674,
-      "real_time": 9.0079080605468448e+01,
-      "cpu_time": 9.0070117355422994e+01,
+      "iterations": 7466985,
+      "real_time": 9.0132290486465095e+01,
+      "cpu_time": 9.0119639988562952e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/4/10",
-      "iterations": 6711860,
-      "real_time": 1.0686440435430542e+02,
-      "cpu_time": 1.0685160298337580e+02,
+      "iterations": 6675440,
+      "real_time": 1.0951429793686663e+02,
+      "cpu_time": 1.0950139616264984e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/4/12",
-      "iterations": 5140860,
-      "real_time": 1.2482391058066061e+02,
-      "cpu_time": 1.2475344592149942e+02,
+      "iterations": 5589938,
+      "real_time": 1.2183950879061895e+02,
+      "cpu_time": 1.2183319385653314e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/4/15",
-      "iterations": 4393618,
-      "real_time": 1.5500287622920868e+02,
-      "cpu_time": 1.5499731656234107e+02,
+      "iterations": 4445941,
+      "real_time": 1.6447273231733692e+02,
+      "cpu_time": 1.6437082723319963e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/6/2",
-      "iterations": 17464721,
-      "real_time": 3.8655264633759430e+01,
-      "cpu_time": 3.8637433715660272e+01,
+      "iterations": 18707274,
+      "real_time": 3.8588043617066567e+01,
+      "cpu_time": 3.8572749829825561e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/6/4",
-      "iterations": 11661225,
-      "real_time": 5.9347758743833964e+01,
-      "cpu_time": 5.9292141263031951e+01,
+      "iterations": 11873261,
+      "real_time": 6.0170908897671175e+01,
+      "cpu_time": 6.0165189664406405e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/6/6",
-      "iterations": 7064285,
-      "real_time": 8.9281205389705590e+01,
-      "cpu_time": 8.8694468017640972e+01,
+      "iterations": 8487318,
+      "real_time": 7.9800857586470187e+01,
+      "cpu_time": 7.9795643335149947e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/6/8",
-      "iterations": 5684079,
-      "real_time": 1.1550077136622613e+02,
-      "cpu_time": 1.1540972600838242e+02,
+      "iterations": 6330888,
+      "real_time": 1.1158600405366791e+02,
+      "cpu_time": 1.1143697377050408e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/6/10",
-      "iterations": 4573340,
-      "real_time": 1.4157735199919463e+02,
-      "cpu_time": 1.4134614964118160e+02,
+      "iterations": 4798464,
+      "real_time": 1.4961599421571245e+02,
+      "cpu_time": 1.4777061993171091e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/6/12",
-      "iterations": 4651379,
-      "real_time": 1.5479129457843374e+02,
-      "cpu_time": 1.5460318327102524e+02,
+      "iterations": 4405702,
+      "real_time": 1.5365689804478134e+02,
+      "cpu_time": 1.5364044140979138e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/6/15",
-      "iterations": 3650225,
-      "real_time": 1.8681554480995138e+02,
-      "cpu_time": 1.8676684313980613e+02,
+      "iterations": 3807742,
+      "real_time": 1.9090847490461707e+02,
+      "cpu_time": 1.9077369212514867e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/8/2",
-      "iterations": 16070047,
-      "real_time": 4.2871247793035224e+01,
-      "cpu_time": 4.2842811847407859e+01,
+      "iterations": 13733299,
+      "real_time": 4.2163746601385490e+01,
+      "cpu_time": 4.2157459762581418e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/8/4",
-      "iterations": 10059784,
-      "real_time": 7.0509401894463423e+01,
-      "cpu_time": 7.0497139898829090e+01,
+      "iterations": 10349824,
+      "real_time": 6.8771051949712316e+01,
+      "cpu_time": 6.8767739432090465e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/8/6",
-      "iterations": 6923632,
-      "real_time": 1.0444218150381410e+02,
-      "cpu_time": 1.0411298578549510e+02,
+      "iterations": 7424535,
+      "real_time": 9.7734263487931656e+01,
+      "cpu_time": 9.7718981727475324e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/8/8",
-      "iterations": 4736450,
-      "real_time": 1.3322418096960945e+02,
-      "cpu_time": 1.3310580709180900e+02,
+      "iterations": 5657480,
+      "real_time": 1.2513501400961198e+02,
+      "cpu_time": 1.2513398191420920e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/8/10",
-      "iterations": 4304937,
-      "real_time": 1.6618039660615622e+02,
-      "cpu_time": 1.6593134812425856e+02,
+      "iterations": 4598849,
+      "real_time": 1.5749403644676926e+02,
+      "cpu_time": 1.5746787946288418e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/8/12",
-      "iterations": 3792394,
-      "real_time": 1.8939868882129554e+02,
-      "cpu_time": 1.8928333923110293e+02,
+      "iterations": 3700493,
+      "real_time": 1.8217583630216973e+02,
+      "cpu_time": 1.8217005139585484e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/8/15",
-      "iterations": 2588777,
-      "real_time": 2.4316585980109178e+02,
-      "cpu_time": 2.4288302932234001e+02,
+      "iterations": 3050069,
+      "real_time": 2.2552621563738379e+02,
+      "cpu_time": 2.2548440707406982e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/10/2",
-      "iterations": 14542493,
-      "real_time": 5.0074018744594433e+01,
-      "cpu_time": 5.0041282467868683e+01,
+      "iterations": 14367197,
+      "real_time": 4.7963831704920736e+01,
+      "cpu_time": 4.7961965023518474e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/10/4",
-      "iterations": 8882122,
-      "real_time": 8.2647871982164148e+01,
-      "cpu_time": 8.2555722607727901e+01,
+      "iterations": 9173951,
+      "real_time": 7.8037131557616192e+01,
+      "cpu_time": 7.8023525523517932e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/10/6",
-      "iterations": 6087539,
-      "real_time": 1.1497152165442469e+02,
-      "cpu_time": 1.1483786797916237e+02,
+      "iterations": 6186752,
+      "real_time": 1.0890699125188048e+02,
+      "cpu_time": 1.0889316397360014e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/10/8",
-      "iterations": 4677237,
-      "real_time": 1.4993546295460612e+02,
-      "cpu_time": 1.4979142600642163e+02,
+      "iterations": 4953087,
+      "real_time": 1.4362644912289656e+02,
+      "cpu_time": 1.4360377679616784e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/10/10",
-      "iterations": 3251217,
-      "real_time": 2.0238793840240305e+02,
-      "cpu_time": 2.0218398218267248e+02,
+      "iterations": 3809565,
+      "real_time": 1.9012077020872925e+02,
+      "cpu_time": 1.9004033268890248e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/10/12",
-      "iterations": 3244150,
-      "real_time": 2.2428098669076957e+02,
-      "cpu_time": 2.2418599633185764e+02,
+      "iterations": 3322385,
+      "real_time": 2.1510168507720513e+02,
+      "cpu_time": 2.1508675243838334e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/10/15",
-      "iterations": 2566302,
-      "real_time": 2.7699508865178001e+02,
-      "cpu_time": 2.7672619980033585e+02,
+      "iterations": 2551430,
+      "real_time": 2.6846584385627790e+02,
+      "cpu_time": 2.6836989452973518e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/12/2",
-      "iterations": 13059945,
-      "real_time": 5.2616397765246866e+01,
-      "cpu_time": 5.2606883107088059e+01,
+      "iterations": 13221767,
+      "real_time": 5.2303975178801565e+01,
+      "cpu_time": 5.2301556970411227e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/12/4",
-      "iterations": 8355814,
-      "real_time": 8.6969701821594086e+01,
-      "cpu_time": 8.6938268372177774e+01,
+      "iterations": 8296788,
+      "real_time": 8.7138792509552545e+01,
+      "cpu_time": 8.7133960756861157e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/12/6",
-      "iterations": 5614688,
-      "real_time": 1.2588531437661624e+02,
-      "cpu_time": 1.2575284681891502e+02,
+      "iterations": 5579245,
+      "real_time": 1.2548351182285634e+02,
+      "cpu_time": 1.2543310071524098e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/12/8",
-      "iterations": 4512664,
-      "real_time": 1.5879665094661007e+02,
-      "cpu_time": 1.5876542104619116e+02,
+      "iterations": 4465368,
+      "real_time": 1.5817192537384898e+02,
+      "cpu_time": 1.5815672974769288e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/12/10",
-      "iterations": 3509722,
-      "real_time": 2.0492072419688077e+02,
-      "cpu_time": 2.0477604778953855e+02,
+      "iterations": 3441528,
+      "real_time": 2.0132962594972847e+02,
+      "cpu_time": 2.0126612365205108e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/12/12",
-      "iterations": 2619535,
-      "real_time": 2.9459154811815324e+02,
-      "cpu_time": 2.9425298764857138e+02,
+      "iterations": 2572707,
+      "real_time": 2.7565435436961877e+02,
+      "cpu_time": 2.7564040522298382e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/12/15",
-      "iterations": 2231353,
-      "real_time": 3.2831769783886540e+02,
-      "cpu_time": 3.2781948889305954e+02,
+      "iterations": 2186202,
+      "real_time": 3.2126785631127387e+02,
+      "cpu_time": 3.2122603492266688e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/15/2",
-      "iterations": 11583075,
-      "real_time": 5.7665364427586525e+01,
-      "cpu_time": 5.7596967989934157e+01,
+      "iterations": 12471938,
+      "real_time": 5.8196081470387284e+01,
+      "cpu_time": 5.8190876189409970e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/15/4",
-      "iterations": 7096441,
-      "real_time": 9.7818069636610474e+01,
-      "cpu_time": 9.7767035616866806e+01,
+      "iterations": 7433997,
+      "real_time": 1.0527320767711711e+02,
+      "cpu_time": 1.0524728487245970e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/15/6",
-      "iterations": 4908595,
-      "real_time": 1.3841150938491558e+02,
-      "cpu_time": 1.3835527274097797e+02,
+      "iterations": 5032713,
+      "real_time": 1.3626096780099186e+02,
+      "cpu_time": 1.3597973895988017e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/15/8",
-      "iterations": 4011760,
-      "real_time": 1.7971241873554109e+02,
-      "cpu_time": 1.7959648633018728e+02,
+      "iterations": 3611598,
+      "real_time": 1.9183056778519645e+02,
+      "cpu_time": 1.9142052908435679e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/15/10",
-      "iterations": 2947244,
-      "real_time": 2.3613323430182521e+02,
-      "cpu_time": 2.3602117775114792e+02,
+      "iterations": 2761788,
+      "real_time": 2.4214072366883966e+02,
+      "cpu_time": 2.4204609477628347e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/15/12",
-      "iterations": 2420922,
-      "real_time": 2.8942130351708812e+02,
-      "cpu_time": 2.8925591159070768e+02,
+      "iterations": 2541388,
+      "real_time": 2.7833887899678530e+02,
+      "cpu_time": 2.7831090726799670e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/2/15/15",
-      "iterations": 1673956,
-      "real_time": 4.0673188903671559e+02,
-      "cpu_time": 4.0647962073076991e+02,
+      "iterations": 1693095,
+      "real_time": 3.9401189182355051e+02,
+      "cpu_time": 3.9395958289404615e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/2/2",
-      "iterations": 16207118,
-      "real_time": 4.2180399007642045e+01,
-      "cpu_time": 4.2174123739951725e+01,
+      "iterations": 16474814,
+      "real_time": 4.3384874275044702e+01,
+      "cpu_time": 4.3380884300120570e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/2/4",
-      "iterations": 9962002,
-      "real_time": 7.1164488721782519e+01,
-      "cpu_time": 7.1005305961592839e+01,
+      "iterations": 9513067,
+      "real_time": 6.7922964176697903e+01,
+      "cpu_time": 6.7885467431271508e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/2/6",
-      "iterations": 6828669,
-      "real_time": 9.3274137180082022e+01,
-      "cpu_time": 9.3197078376474238e+01,
+      "iterations": 7479671,
+      "real_time": 9.5339811463415344e+01,
+      "cpu_time": 9.5330930999504716e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/2/8",
-      "iterations": 6143207,
-      "real_time": 1.2033785122027216e+02,
-      "cpu_time": 1.2029319539452227e+02,
+      "iterations": 6046001,
+      "real_time": 1.1761493854293713e+02,
+      "cpu_time": 1.1758896500347922e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/2/10",
-      "iterations": 4586435,
-      "real_time": 1.5808493960560259e+02,
-      "cpu_time": 1.5767366156938886e+02,
+      "iterations": 4997751,
+      "real_time": 1.3986262380768429e+02,
+      "cpu_time": 1.3985110502704075e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/2/12",
-      "iterations": 3855687,
-      "real_time": 1.6396018349765839e+02,
-      "cpu_time": 1.6390438331742271e+02,
+      "iterations": 4330718,
+      "real_time": 1.6158340975002295e+02,
+      "cpu_time": 1.6156720432962894e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/2/15",
-      "iterations": 3507242,
-      "real_time": 2.0467584103165490e+02,
-      "cpu_time": 2.0459038754668018e+02,
+      "iterations": 3337259,
+      "real_time": 1.9656447612482785e+02,
+      "cpu_time": 1.9655741433313767e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/4/2",
-      "iterations": 11435666,
-      "real_time": 5.7481715012807982e+01,
-      "cpu_time": 5.7357481409477970e+01,
+      "iterations": 13051909,
+      "real_time": 5.3480483737200657e+01,
+      "cpu_time": 5.3447124095026908e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/4/4",
-      "iterations": 7962508,
-      "real_time": 9.0951644118849075e+01,
-      "cpu_time": 9.0924241457590881e+01,
+      "iterations": 8417306,
+      "real_time": 8.8835470755012622e+01,
+      "cpu_time": 8.8821173900533324e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/4/6",
-      "iterations": 5639249,
-      "real_time": 1.2987478652216333e+02,
-      "cpu_time": 1.2971656332252897e+02,
+      "iterations": 5776531,
+      "real_time": 1.2063462984831101e+02,
+      "cpu_time": 1.2061564284862287e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/4/8",
-      "iterations": 4329004,
-      "real_time": 1.7769543270624743e+02,
-      "cpu_time": 1.7634333440209309e+02,
+      "iterations": 4380119,
+      "real_time": 1.5673576995963629e+02,
+      "cpu_time": 1.5672017130128205e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/4/10",
-      "iterations": 3379667,
-      "real_time": 1.9393907920862958e+02,
-      "cpu_time": 1.9354066539691607e+02,
+      "iterations": 3610443,
+      "real_time": 1.8809724319996795e+02,
+      "cpu_time": 1.8807968994386596e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/4/12",
-      "iterations": 3055648,
-      "real_time": 2.5145695772522433e+02,
-      "cpu_time": 2.5091535412456076e+02,
+      "iterations": 3082356,
+      "real_time": 2.2239252150549490e+02,
+      "cpu_time": 2.2239319533499801e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/4/15",
-      "iterations": 2371957,
-      "real_time": 3.0714850732292410e+02,
-      "cpu_time": 3.0686138070799842e+02,
+      "iterations": 2155007,
+      "real_time": 3.0156745895641632e+02,
+      "cpu_time": 3.0138277973110945e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/6/2",
-      "iterations": 10459782,
-      "real_time": 6.4046746572889717e+01,
-      "cpu_time": 6.3991869046601821e+01,
+      "iterations": 11422045,
+      "real_time": 6.2586086996940061e+01,
+      "cpu_time": 6.2582313412353137e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/6/4",
-      "iterations": 6678433,
-      "real_time": 1.0639790081386042e+02,
-      "cpu_time": 1.0636387308220344e+02,
+      "iterations": 6455837,
+      "real_time": 1.0691195348531849e+02,
+      "cpu_time": 1.0684191685756636e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/6/6",
-      "iterations": 4686789,
-      "real_time": 1.5510567446903784e+02,
-      "cpu_time": 1.5500655139371577e+02,
+      "iterations": 4487064,
+      "real_time": 1.5306954678926806e+02,
+      "cpu_time": 1.5305553921227684e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/6/8",
-      "iterations": 3216956,
-      "real_time": 2.1105101467533294e+02,
-      "cpu_time": 2.1049122213670501e+02,
+      "iterations": 3288346,
+      "real_time": 1.9994677352065190e+02,
+      "cpu_time": 1.9992512953320431e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/6/10",
-      "iterations": 2432464,
-      "real_time": 2.7447243572430637e+02,
-      "cpu_time": 2.7378575798038474e+02,
+      "iterations": 2833652,
+      "real_time": 2.4715416534095203e+02,
+      "cpu_time": 2.4710444331202152e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/6/12",
-      "iterations": 2473839,
-      "real_time": 2.9723794356943245e+02,
-      "cpu_time": 2.9696637493385890e+02,
+      "iterations": 2459454,
+      "real_time": 2.8427064667612541e+02,
+      "cpu_time": 2.8419031215871615e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/6/15",
-      "iterations": 2080429,
-      "real_time": 3.4362699227420364e+02,
-      "cpu_time": 3.4334985716888161e+02,
+      "iterations": 2060787,
+      "real_time": 3.4508589098301695e+02,
+      "cpu_time": 3.4506234754004259e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/8/2",
-      "iterations": 9012953,
-      "real_time": 7.3893542437202854e+01,
-      "cpu_time": 7.3848493385020561e+01,
+      "iterations": 9993290,
+      "real_time": 7.1798699134122089e+01,
+      "cpu_time": 7.1789670869152744e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/8/4",
-      "iterations": 5828962,
-      "real_time": 1.2508431997542964e+02,
-      "cpu_time": 1.2501385323836281e+02,
+      "iterations": 5585478,
+      "real_time": 1.2155663454754836e+02,
+      "cpu_time": 1.2155235415840848e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/8/6",
-      "iterations": 3908060,
-      "real_time": 1.8515183799439345e+02,
-      "cpu_time": 1.8389482249504454e+02,
+      "iterations": 4100882,
+      "real_time": 1.7116278766453263e+02,
+      "cpu_time": 1.7115586354350256e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/8/8",
-      "iterations": 2699274,
-      "real_time": 2.6652934529683984e+02,
-      "cpu_time": 2.6464671611699515e+02,
+      "iterations": 2788900,
+      "real_time": 2.5293465774587679e+02,
+      "cpu_time": 2.5290580515615693e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/8/10",
-      "iterations": 2214195,
-      "real_time": 3.0090456306917196e+02,
-      "cpu_time": 2.9918096644604708e+02,
+      "iterations": 2469275,
+      "real_time": 2.8549059256928626e+02,
+      "cpu_time": 2.8541899950390479e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/8/12",
-      "iterations": 1942901,
-      "real_time": 3.5083716767621729e+02,
-      "cpu_time": 3.4925866011701538e+02,
+      "iterations": 2047496,
+      "real_time": 3.4921346709233200e+02,
+      "cpu_time": 3.4906588340099728e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/8/15",
-      "iterations": 1424191,
-      "real_time": 4.5181774776794708e+02,
-      "cpu_time": 4.5125759115175293e+02,
+      "iterations": 1663071,
+      "real_time": 4.1588986702002825e+02,
+      "cpu_time": 4.1583191577508495e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/10/2",
-      "iterations": 9068885,
-      "real_time": 8.4637584332552393e+01,
-      "cpu_time": 8.4547659387013312e+01,
+      "iterations": 8863452,
+      "real_time": 8.1121928788604890e+01,
+      "cpu_time": 8.1112076874787917e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/10/4",
-      "iterations": 4810435,
-      "real_time": 1.4305234701113557e+02,
-      "cpu_time": 1.4299205789081478e+02,
+      "iterations": 5086987,
+      "real_time": 1.4136363981395309e+02,
+      "cpu_time": 1.4130525594030391e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/10/6",
-      "iterations": 3220671,
-      "real_time": 2.1650257445460247e+02,
-      "cpu_time": 2.1631951851027560e+02,
+      "iterations": 3464369,
+      "real_time": 2.0603139447343059e+02,
+      "cpu_time": 2.0598642927470922e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/10/8",
-      "iterations": 2565888,
-      "real_time": 2.7960038590799383e+02,
-      "cpu_time": 2.7955974695699467e+02,
+      "iterations": 2573047,
+      "real_time": 2.6917693067204482e+02,
+      "cpu_time": 2.6915365323679720e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/10/10",
-      "iterations": 1902950,
-      "real_time": 3.4968666386543157e+02,
-      "cpu_time": 3.4966184082608828e+02,
+      "iterations": 2023940,
+      "real_time": 3.5260462516637295e+02,
+      "cpu_time": 3.5255145903534753e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/10/12",
-      "iterations": 1697291,
-      "real_time": 4.3619868128100558e+02,
-      "cpu_time": 4.3607313065349626e+02,
+      "iterations": 1619456,
+      "real_time": 4.2032739888907167e+02,
+      "cpu_time": 4.2016022664400805e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/10/15",
       "iterations": 1000000,
-      "real_time": 5.1288339006714523e+02,
-      "cpu_time": 5.1225900000000024e+02,
+      "real_time": 5.0154219893738627e+02,
+      "cpu_time": 5.0151100000000781e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/12/2",
-      "iterations": 7866848,
-      "real_time": 9.4410993079719532e+01,
-      "cpu_time": 9.4363460435488932e+01,
+      "iterations": 7580680,
+      "real_time": 8.9038033922956558e+01,
+      "cpu_time": 8.9029216376367685e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/12/4",
-      "iterations": 4441061,
-      "real_time": 1.6216119414547325e+02,
-      "cpu_time": 1.6206397525275997e+02,
+      "iterations": 4613914,
+      "real_time": 1.5659700633733300e+02,
+      "cpu_time": 1.5658419294334422e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/12/6",
-      "iterations": 2915258,
-      "real_time": 2.2706772091366307e+02,
-      "cpu_time": 2.2700563723690775e+02,
+      "iterations": 2996870,
+      "real_time": 2.3153008173095711e+02,
+      "cpu_time": 2.3149018809624854e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/12/8",
-      "iterations": 2353954,
-      "real_time": 3.1048152807110284e+02,
-      "cpu_time": 3.1035228385941076e+02,
+      "iterations": 2362032,
+      "real_time": 2.9835783128225927e+02,
+      "cpu_time": 2.9832068320835799e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/12/10",
-      "iterations": 1834074,
-      "real_time": 3.8939695127504308e+02,
-      "cpu_time": 3.8917022977262098e+02,
+      "iterations": 1870897,
+      "real_time": 3.8595794902268915e+02,
+      "cpu_time": 3.8587640046459109e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/12/12",
-      "iterations": 1357115,
-      "real_time": 5.4514639949038042e+02,
-      "cpu_time": 5.4468191715513615e+02,
+      "iterations": 1246394,
+      "real_time": 5.7372062119956411e+02,
+      "cpu_time": 5.7218985328876352e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/12/15",
-      "iterations": 1205587,
-      "real_time": 5.9689263404362214e+02,
-      "cpu_time": 5.9667614199556249e+02,
+      "iterations": 977708,
+      "real_time": 6.4467706417034265e+02,
+      "cpu_time": 6.4228583585284139e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/15/2",
-      "iterations": 7004413,
-      "real_time": 9.8893570392951474e+01,
-      "cpu_time": 9.8876665325130858e+01,
+      "iterations": 6943067,
+      "real_time": 9.8658166911243470e+01,
+      "cpu_time": 9.8618809238050872e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/15/4",
-      "iterations": 3538356,
-      "real_time": 1.8658159891355663e+02,
-      "cpu_time": 1.8620737992446558e+02,
+      "iterations": 3911904,
+      "real_time": 1.8119812270862280e+02,
+      "cpu_time": 1.8117469140346921e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/15/6",
-      "iterations": 2673807,
-      "real_time": 2.6344832218313570e+02,
-      "cpu_time": 2.6334698054122748e+02,
+      "iterations": 2637349,
+      "real_time": 2.5648883899554352e+02,
+      "cpu_time": 2.5647307201284036e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/15/8",
-      "iterations": 2085972,
-      "real_time": 3.4868751262563870e+02,
-      "cpu_time": 3.4832298803627111e+02,
+      "iterations": 2098919,
+      "real_time": 3.3669370089050642e+02,
+      "cpu_time": 3.3667235372113043e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/15/10",
-      "iterations": 1541714,
-      "real_time": 4.5423089233254802e+02,
-      "cpu_time": 4.5414194850665564e+02,
+      "iterations": 1534815,
+      "real_time": 4.4564397795792217e+02,
+      "cpu_time": 4.4547127829737769e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/15/12",
-      "iterations": 1309782,
-      "real_time": 5.2382837908381589e+02,
-      "cpu_time": 5.2309239247447090e+02,
+      "iterations": 1394645,
+      "real_time": 4.9851090279234029e+02,
+      "cpu_time": 4.9849746709736365e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/4/15/15",
-      "iterations": 836950,
-      "real_time": 8.3989329353233938e+02,
-      "cpu_time": 8.3809785530795148e+02,
+      "iterations": 979377,
+      "real_time": 7.4883278356499386e+02,
+      "cpu_time": 7.4843599553593924e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/2/2",
-      "iterations": 12043425,
-      "real_time": 5.9082607140950479e+01,
-      "cpu_time": 5.8993932373889457e+01,
+      "iterations": 12690585,
+      "real_time": 5.5689923042470042e+01,
+      "cpu_time": 5.5686164191801161e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/2/4",
-      "iterations": 7417847,
-      "real_time": 9.8062092827626742e+01,
-      "cpu_time": 9.7989484010657364e+01,
+      "iterations": 7749278,
+      "real_time": 9.0937540633810826e+01,
+      "cpu_time": 9.0922922109647317e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/2/6",
-      "iterations": 5296169,
-      "real_time": 1.3302209596804420e+02,
-      "cpu_time": 1.3287944550107986e+02,
+      "iterations": 5323842,
+      "real_time": 1.2913365347896055e+02,
+      "cpu_time": 1.2912028568841805e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/2/8",
-      "iterations": 4048443,
-      "real_time": 1.6685698823795914e+02,
-      "cpu_time": 1.6675003204936152e+02,
+      "iterations": 4195310,
+      "real_time": 1.6213175165344813e+02,
+      "cpu_time": 1.6212198860155567e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/2/10",
-      "iterations": 3321550,
-      "real_time": 2.1639208981400242e+02,
-      "cpu_time": 2.1622194457406991e+02,
+      "iterations": 3400485,
+      "real_time": 2.0596146402703650e+02,
+      "cpu_time": 2.0593709426743700e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/2/12",
-      "iterations": 2874684,
-      "real_time": 2.4334760445298454e+02,
-      "cpu_time": 2.4319890464482134e+02,
+      "iterations": 2854242,
+      "real_time": 2.4049820270707806e+02,
+      "cpu_time": 2.4040428246799442e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/2/15",
-      "iterations": 2449188,
-      "real_time": 2.9918569868530494e+02,
-      "cpu_time": 2.9885415084509543e+02,
+      "iterations": 2435020,
+      "real_time": 2.9219360828584837e+02,
+      "cpu_time": 2.9214092697390771e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/4/2",
-      "iterations": 9699052,
-      "real_time": 7.9328126084386199e+01,
-      "cpu_time": 7.8863068266880006e+01,
+      "iterations": 10100427,
+      "real_time": 7.1792789657422134e+01,
+      "cpu_time": 7.1782113766080343e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/4/4",
-      "iterations": 5063584,
-      "real_time": 1.3045609118139191e+02,
-      "cpu_time": 1.3039815277084276e+02,
+      "iterations": 5638886,
+      "real_time": 1.2653827775931252e+02,
+      "cpu_time": 1.2651222244961058e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/4/6",
-      "iterations": 3888673,
-      "real_time": 1.7541649890723500e+02,
-      "cpu_time": 1.7534490557575521e+02,
+      "iterations": 4154253,
+      "real_time": 1.6877493789034293e+02,
+      "cpu_time": 1.6875837846178700e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/4/8",
-      "iterations": 2973434,
-      "real_time": 2.3648825499885407e+02,
-      "cpu_time": 2.3596151789479816e+02,
+      "iterations": 2990456,
+      "real_time": 2.2844298729841947e+02,
+      "cpu_time": 2.2842870786261670e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/4/10",
-      "iterations": 2174865,
-      "real_time": 2.8912886499412588e+02,
-      "cpu_time": 2.8876872817392706e+02,
+      "iterations": 2461331,
+      "real_time": 2.7473397765346658e+02,
+      "cpu_time": 2.7462255178194425e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/4/12",
-      "iterations": 2013722,
-      "real_time": 3.2543687807079834e+02,
-      "cpu_time": 3.2537758439347630e+02,
+      "iterations": 2182038,
+      "real_time": 3.2980116982258562e+02,
+      "cpu_time": 3.2974952773508159e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/4/15",
-      "iterations": 1461680,
-      "real_time": 4.6852016449020482e+02,
-      "cpu_time": 4.6634625909912381e+02,
+      "iterations": 1617596,
+      "real_time": 4.2933305164705126e+02,
+      "cpu_time": 4.2931115062104402e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/6/2",
-      "iterations": 7691124,
-      "real_time": 9.1343638200642957e+01,
-      "cpu_time": 9.0846669485500172e+01,
+      "iterations": 7852463,
+      "real_time": 8.5734247706899041e+01,
+      "cpu_time": 8.5727879265397434e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/6/4",
-      "iterations": 4712472,
-      "real_time": 1.5259095161047077e+02,
-      "cpu_time": 1.5241809394305153e+02,
+      "iterations": 4584572,
+      "real_time": 1.4878588077851896e+02,
+      "cpu_time": 1.4877070313215489e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/6/6",
-      "iterations": 2831440,
-      "real_time": 2.3450973497452532e+02,
-      "cpu_time": 2.3441323142994682e+02,
+      "iterations": 3113034,
+      "real_time": 2.2415460671582321e+02,
+      "cpu_time": 2.2413728857442828e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/6/8",
-      "iterations": 2419266,
-      "real_time": 2.9609515945178322e+02,
-      "cpu_time": 2.9460299115516727e+02,
+      "iterations": 2480440,
+      "real_time": 2.9233936598502436e+02,
+      "cpu_time": 2.9216147135185611e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/6/10",
-      "iterations": 1877254,
-      "real_time": 3.6024387910698209e+02,
-      "cpu_time": 3.6022775820427580e+02,
+      "iterations": 1826241,
+      "real_time": 3.7124279876044108e+02,
+      "cpu_time": 3.7112133612157419e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/6/12",
-      "iterations": 1752646,
-      "real_time": 4.3411572955674654e+02,
-      "cpu_time": 4.3312055029937608e+02,
+      "iterations": 1693386,
+      "real_time": 4.1333548635467139e+02,
+      "cpu_time": 4.1306471176684664e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/6/15",
-      "iterations": 1315542,
-      "real_time": 5.4214418851129869e+02,
-      "cpu_time": 5.4017887684315644e+02,
+      "iterations": 1441994,
+      "real_time": 5.0016082036079621e+02,
+      "cpu_time": 5.0008391158353641e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/8/2",
-      "iterations": 6841149,
-      "real_time": 1.0596176255902031e+02,
-      "cpu_time": 1.0588338303989703e+02,
+      "iterations": 6992728,
+      "real_time": 9.9423880931306783e+01,
+      "cpu_time": 9.9414134226299609e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/8/4",
-      "iterations": 3793956,
-      "real_time": 2.0189055014003333e+02,
-      "cpu_time": 2.0165494802786179e+02,
+      "iterations": 3990810,
+      "real_time": 1.7861654075256743e+02,
+      "cpu_time": 1.7851964889333033e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/8/6",
-      "iterations": 2597017,
-      "real_time": 2.7023254257189183e+02,
-      "cpu_time": 2.7011683019402676e+02,
+      "iterations": 2694546,
+      "real_time": 2.5425272531897571e+02,
+      "cpu_time": 2.5420683113221585e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/8/8",
-      "iterations": 1812899,
-      "real_time": 3.8103156431162182e+02,
-      "cpu_time": 3.8072501556899010e+02,
+      "iterations": 2049810,
+      "real_time": 3.5523021064495185e+02,
+      "cpu_time": 3.5519487171981825e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/8/10",
-      "iterations": 1607097,
-      "real_time": 4.5053906393599596e+02,
-      "cpu_time": 4.4981230131099846e+02,
+      "iterations": 1654178,
+      "real_time": 4.1579454628120772e+02,
+      "cpu_time": 4.1576359980606782e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/8/12",
-      "iterations": 1174063,
-      "real_time": 5.2198507150437194e+02,
-      "cpu_time": 5.2183145197489205e+02,
+      "iterations": 1451728,
+      "real_time": 4.9483625034818607e+02,
+      "cpu_time": 4.9477037020709042e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/8/15",
-      "iterations": 1168966,
-      "real_time": 6.3851908269395949e+02,
-      "cpu_time": 6.3822215530647225e+02,
+      "iterations": 1148916,
+      "real_time": 6.1384197363439864e+02,
+      "cpu_time": 6.1359577201466686e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/10/2",
-      "iterations": 6066121,
-      "real_time": 1.2056502812954116e+02,
-      "cpu_time": 1.2045077900688199e+02,
+      "iterations": 6477103,
+      "real_time": 1.1135232881351379e+02,
+      "cpu_time": 1.1134360531243580e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/10/4",
-      "iterations": 3167149,
-      "real_time": 2.2350788487136370e+02,
-      "cpu_time": 2.2179979533643595e+02,
+      "iterations": 3416818,
+      "real_time": 2.0457465571371861e+02,
+      "cpu_time": 2.0455523238287645e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/10/6",
-      "iterations": 2205475,
-      "real_time": 3.1970031853583629e+02,
-      "cpu_time": 3.1922012264931499e+02,
+      "iterations": 2302306,
+      "real_time": 2.9534043914496880e+02,
+      "cpu_time": 2.9532955219679945e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/10/8",
-      "iterations": 1658088,
-      "real_time": 4.1332891317829211e+02,
-      "cpu_time": 4.1294430693666283e+02,
+      "iterations": 1774088,
+      "real_time": 4.0670578232732629e+02,
+      "cpu_time": 4.0615854455924273e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/10/10",
-      "iterations": 1234111,
-      "real_time": 5.2593923236295927e+02,
-      "cpu_time": 5.2542113310715956e+02,
+      "iterations": 1231917,
+      "real_time": 5.4897979164380706e+02,
+      "cpu_time": 5.4796629967765796e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/10/12",
-      "iterations": 1108402,
-      "real_time": 6.0568832688842747e+02,
-      "cpu_time": 6.0542023561848180e+02,
+      "iterations": 978296,
+      "real_time": 6.4451409794169001e+02,
+      "cpu_time": 6.4267358754405916e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/10/15",
-      "iterations": 922984,
-      "real_time": 7.4109262892693687e+02,
-      "cpu_time": 7.4046137311155030e+02,
+      "iterations": 821529,
+      "real_time": 8.1396386496760533e+02,
+      "cpu_time": 8.1192386391717207e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/12/2",
-      "iterations": 5129934,
-      "real_time": 1.3503479518615032e+02,
-      "cpu_time": 1.3498770159615975e+02,
+      "iterations": 4649217,
+      "real_time": 1.4444366138347212e+02,
+      "cpu_time": 1.4393219331341544e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/12/4",
-      "iterations": 2747361,
-      "real_time": 2.5112972230050190e+02,
-      "cpu_time": 2.5033805167941270e+02,
+      "iterations": 2666667,
+      "real_time": 2.4535071194191454e+02,
+      "cpu_time": 2.4433684445789632e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/12/6",
-      "iterations": 1852263,
-      "real_time": 3.6481947111278521e+02,
-      "cpu_time": 3.6378905155477486e+02,
+      "iterations": 1887540,
+      "real_time": 3.3825654770458550e+02,
+      "cpu_time": 3.3820316390645485e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/12/8",
-      "iterations": 1000000,
-      "real_time": 5.1421511999797076e+02,
-      "cpu_time": 5.1146799999999359e+02,
+      "iterations": 1557463,
+      "real_time": 4.3993916130806662e+02,
+      "cpu_time": 4.3974913047693741e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/12/10",
-      "iterations": 955736,
-      "real_time": 6.2752596841748550e+02,
-      "cpu_time": 6.2367850536130516e+02,
+      "iterations": 1318168,
+      "real_time": 5.4792919415966696e+02,
+      "cpu_time": 5.4785732926303513e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/12/12",
-      "iterations": 783752,
-      "real_time": 8.8254504493851812e+02,
-      "cpu_time": 8.7498468903428966e+02,
+      "iterations": 955397,
+      "real_time": 7.6576333285689088e+02,
+      "cpu_time": 7.6560005945172998e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/12/15",
-      "iterations": 732838,
-      "real_time": 9.9538949261736070e+02,
-      "cpu_time": 9.9138554496354618e+02,
+      "iterations": 836190,
+      "real_time": 8.6230384005145504e+02,
+      "cpu_time": 8.6215573015704558e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/15/2",
-      "iterations": 4186928,
-      "real_time": 1.5806606038049790e+02,
-      "cpu_time": 1.5763227836733978e+02,
+      "iterations": 4987958,
+      "real_time": 1.3968344219478334e+02,
+      "cpu_time": 1.3966336524886262e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/15/4",
-      "iterations": 2512346,
-      "real_time": 2.8517139079158295e+02,
-      "cpu_time": 2.8412646984131953e+02,
+      "iterations": 2565371,
+      "real_time": 2.6460867804810567e+02,
+      "cpu_time": 2.6456329318449963e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/15/6",
-      "iterations": 1763704,
-      "real_time": 4.1391156509344813e+02,
-      "cpu_time": 4.1302395413289548e+02,
+      "iterations": 1880012,
+      "real_time": 3.8919965622660027e+02,
+      "cpu_time": 3.8898049586917864e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/15/8",
-      "iterations": 1240871,
-      "real_time": 5.6336678265977912e+02,
-      "cpu_time": 5.6228890835548873e+02,
+      "iterations": 1365188,
+      "real_time": 4.9637808856791634e+02,
+      "cpu_time": 4.9635508076545051e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/15/10",
-      "iterations": 904159,
-      "real_time": 7.4939866994760132e+02,
-      "cpu_time": 7.4667287501425676e+02,
+      "iterations": 1086872,
+      "real_time": 6.9286484515403720e+02,
+      "cpu_time": 6.9161686012704547e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/15/12",
-      "iterations": 897620,
-      "real_time": 8.7108301513305560e+02,
-      "cpu_time": 8.6598003609548471e+02,
+      "iterations": 885426,
+      "real_time": 8.8338131022563357e+02,
+      "cpu_time": 8.7919148522857699e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/6/15/15",
-      "iterations": 571345,
-      "real_time": 1.3980239819711849e+03,
-      "cpu_time": 1.3874279113320756e+03,
+      "iterations": 578972,
+      "real_time": 1.2325329030816808e+03,
+      "cpu_time": 1.2275999530201320e+03,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/2/2",
-      "iterations": 9532759,
-      "real_time": 7.6588038155612722e+01,
-      "cpu_time": 7.6506811931359039e+01,
+      "iterations": 9077587,
+      "real_time": 7.4814990481654888e+01,
+      "cpu_time": 7.4654971635085417e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/2/4",
-      "iterations": 5132830,
-      "real_time": 1.1959779341014466e+02,
-      "cpu_time": 1.1945905085498369e+02,
+      "iterations": 5196502,
+      "real_time": 1.3292391227883397e+02,
+      "cpu_time": 1.3242254116327086e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/2/6",
-      "iterations": 3992130,
-      "real_time": 1.6921068251920215e+02,
-      "cpu_time": 1.6911874112316414e+02,
+      "iterations": 3855538,
+      "real_time": 1.8264621382538539e+02,
+      "cpu_time": 1.8196656342124226e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/2/8",
-      "iterations": 3090426,
-      "real_time": 2.2088293523377064e+02,
-      "cpu_time": 2.2077991836723734e+02,
+      "iterations": 2971680,
+      "real_time": 2.3927783945276045e+02,
+      "cpu_time": 2.3801048565121340e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/2/10",
-      "iterations": 2522895,
-      "real_time": 2.6362707683155992e+02,
-      "cpu_time": 2.6359638431245975e+02,
+      "iterations": 2467978,
+      "real_time": 2.6460099280780082e+02,
+      "cpu_time": 2.6458218023013416e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/2/12",
-      "iterations": 2226229,
-      "real_time": 3.0067014175234908e+02,
-      "cpu_time": 3.0060699056565863e+02,
+      "iterations": 2234658,
+      "real_time": 3.0409689759217332e+02,
+      "cpu_time": 3.0406308258356307e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/2/15",
-      "iterations": 1880492,
-      "real_time": 3.7847329581649939e+02,
-      "cpu_time": 3.7842171091394414e+02,
+      "iterations": 1853612,
+      "real_time": 3.7974601157384751e+02,
+      "cpu_time": 3.7954005476874204e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/4/2",
-      "iterations": 7670560,
-      "real_time": 8.9576857897354571e+01,
-      "cpu_time": 8.9551740681251204e+01,
+      "iterations": 7466030,
+      "real_time": 9.1340599224382458e+01,
+      "cpu_time": 9.1327519444740446e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/4/4",
-      "iterations": 4321921,
-      "real_time": 1.5606372860144725e+02,
-      "cpu_time": 1.5606347270113949e+02,
+      "iterations": 4391633,
+      "real_time": 1.5967630902741828e+02,
+      "cpu_time": 1.5964972482901553e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/4/6",
-      "iterations": 3054421,
-      "real_time": 2.2467301333992398e+02,
-      "cpu_time": 2.2456039949961013e+02,
+      "iterations": 3204615,
+      "real_time": 2.2991105204894677e+02,
+      "cpu_time": 2.2982667184669342e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/4/8",
-      "iterations": 2468953,
-      "real_time": 2.8617837240138499e+02,
-      "cpu_time": 2.8617191173748773e+02,
+      "iterations": 2409946,
+      "real_time": 2.9625366916167997e+02,
+      "cpu_time": 2.9617261133651095e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/4/10",
-      "iterations": 1963231,
-      "real_time": 3.6172731581259410e+02,
-      "cpu_time": 3.6160798194404151e+02,
+      "iterations": 1959176,
+      "real_time": 3.8230479498320688e+02,
+      "cpu_time": 3.8153182766632716e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/4/12",
-      "iterations": 1648249,
-      "real_time": 4.2369250155385254e+02,
-      "cpu_time": 4.2359801219354500e+02,
+      "iterations": 1640312,
+      "real_time": 4.1604738977820108e+02,
+      "cpu_time": 4.1593794351318132e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/4/15",
-      "iterations": 1286315,
-      "real_time": 6.2654984738027031e+02,
-      "cpu_time": 6.2332632364545304e+02,
+      "iterations": 1272658,
+      "real_time": 5.7596736510050516e+02,
+      "cpu_time": 5.7574462267161618e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/6/2",
-      "iterations": 5803446,
-      "real_time": 1.1100380757268242e+02,
-      "cpu_time": 1.1097699539204733e+02,
+      "iterations": 6381737,
+      "real_time": 1.1067624566477582e+02,
+      "cpu_time": 1.1065890054698362e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/6/4",
-      "iterations": 3528795,
-      "real_time": 1.9832389414967807e+02,
-      "cpu_time": 1.9828638387891766e+02,
+      "iterations": 3615161,
+      "real_time": 1.9936589627389426e+02,
+      "cpu_time": 1.9928987948254314e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/6/6",
-      "iterations": 2272004,
-      "real_time": 3.2975131822834925e+02,
-      "cpu_time": 3.2867943894465884e+02,
+      "iterations": 2432980,
+      "real_time": 2.8818450954648125e+02,
+      "cpu_time": 2.8814170276781022e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/6/8",
-      "iterations": 1688602,
-      "real_time": 3.9822772741010385e+02,
-      "cpu_time": 3.9776158028949408e+02,
+      "iterations": 1921593,
+      "real_time": 3.6794269025733450e+02,
+      "cpu_time": 3.6771158096433561e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/6/10",
-      "iterations": 1000000,
-      "real_time": 5.0522653991356492e+02,
-      "cpu_time": 5.0460400000000050e+02,
+      "iterations": 1456713,
+      "real_time": 4.8011818731937473e+02,
+      "cpu_time": 4.8001150535484845e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/6/12",
-      "iterations": 1242412,
-      "real_time": 5.2945967839672642e+02,
-      "cpu_time": 5.2930026432456214e+02,
+      "iterations": 1345766,
+      "real_time": 5.3422143369385333e+02,
+      "cpu_time": 5.3410994184726042e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/6/15",
-      "iterations": 1090224,
-      "real_time": 7.0379291685997021e+02,
-      "cpu_time": 7.0213460719997590e+02,
+      "iterations": 1105496,
+      "real_time": 6.4900527548288653e+02,
+      "cpu_time": 6.4898289998334712e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/8/2",
-      "iterations": 4879239,
-      "real_time": 1.4966664762643481e+02,
-      "cpu_time": 1.4918494461943982e+02,
+      "iterations": 5610728,
+      "real_time": 1.2972576554288207e+02,
+      "cpu_time": 1.2971329210754476e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/8/4",
-      "iterations": 2565230,
-      "real_time": 2.5743649772262546e+02,
-      "cpu_time": 2.5671694156079297e+02,
+      "iterations": 2964343,
+      "real_time": 2.3419747378108497e+02,
+      "cpu_time": 2.3417161914123909e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/8/6",
-      "iterations": 1831435,
-      "real_time": 3.7980381071173497e+02,
-      "cpu_time": 3.7910763963775429e+02,
+      "iterations": 2060745,
+      "real_time": 3.3509437949241374e+02,
+      "cpu_time": 3.3492693176495800e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/8/8",
-      "iterations": 1489080,
-      "real_time": 5.0858271013200630e+02,
-      "cpu_time": 5.0768528218766767e+02,
+      "iterations": 1532121,
+      "real_time": 4.6796175300009082e+02,
+      "cpu_time": 4.6777767552301339e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/8/10",
-      "iterations": 1202563,
-      "real_time": 6.0381200073047717e+02,
-      "cpu_time": 6.0093733134979732e+02,
+      "iterations": 1222494,
+      "real_time": 5.3750376856359139e+02,
+      "cpu_time": 5.3744803655475687e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/8/12",
-      "iterations": 985652,
-      "real_time": 6.9749720187981279e+02,
-      "cpu_time": 6.9628935973344653e+02,
+      "iterations": 1095273,
+      "real_time": 6.5036767265456433e+02,
+      "cpu_time": 6.5019223517787964e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/8/15",
-      "iterations": 778262,
-      "real_time": 8.5600023257637031e+02,
-      "cpu_time": 8.5497942852151380e+02,
+      "iterations": 858222,
+      "real_time": 7.9551011743831475e+02,
+      "cpu_time": 7.9550046491463843e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/10/2",
-      "iterations": 4420727,
-      "real_time": 1.4875919503097438e+02,
-      "cpu_time": 1.4855090576730777e+02,
+      "iterations": 4928675,
+      "real_time": 1.4237178633940761e+02,
+      "cpu_time": 1.4235225491638656e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/10/4",
-      "iterations": 2503756,
-      "real_time": 2.8609077362905361e+02,
-      "cpu_time": 2.8560410838755570e+02,
+      "iterations": 2567309,
+      "real_time": 2.6742697975572293e+02,
+      "cpu_time": 2.6731920466137223e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/10/6",
-      "iterations": 1696082,
-      "real_time": 4.0234310137639812e+02,
-      "cpu_time": 4.0208138521605946e+02,
+      "iterations": 1814750,
+      "real_time": 3.9193929416948743e+02,
+      "cpu_time": 3.9191403774623620e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/10/8",
-      "iterations": 1281136,
-      "real_time": 5.2640524185576021e+02,
-      "cpu_time": 5.2621423486652770e+02,
+      "iterations": 1318665,
+      "real_time": 5.1951774250268727e+02,
+      "cpu_time": 5.1943518634377608e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/10/10",
-      "iterations": 1080597,
-      "real_time": 6.9697407262556999e+02,
-      "cpu_time": 6.9635025823688807e+02,
+      "iterations": 1106370,
+      "real_time": 6.3612796990059542e+02,
+      "cpu_time": 6.3612805842531770e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/10/12",
-      "iterations": 928616,
-      "real_time": 7.9869364842174139e+02,
-      "cpu_time": 7.9838275455085102e+02,
+      "iterations": 928591,
+      "real_time": 7.8828917242652858e+02,
+      "cpu_time": 7.8821784833153549e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/10/15",
-      "iterations": 680398,
-      "real_time": 1.0182754357610502e+03,
-      "cpu_time": 1.0176058718573443e+03,
+      "iterations": 713339,
+      "real_time": 9.7335762936537560e+02,
+      "cpu_time": 9.7303806465089531e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/12/2",
-      "iterations": 3926408,
-      "real_time": 1.7213340716668466e+02,
-      "cpu_time": 1.7197193974747250e+02,
+      "iterations": 4181401,
+      "real_time": 1.6552719433652294e+02,
+      "cpu_time": 1.6544789653037117e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/12/4",
-      "iterations": 2318948,
-      "real_time": 3.0735197728527095e+02,
-      "cpu_time": 3.0688312113940168e+02,
+      "iterations": 2348119,
+      "real_time": 2.9748274087983810e+02,
+      "cpu_time": 2.9745681543395926e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/12/6",
-      "iterations": 1614428,
-      "real_time": 4.5847755240719118e+02,
-      "cpu_time": 4.5777204062366889e+02,
+      "iterations": 1645711,
+      "real_time": 4.4043382043276949e+02,
+      "cpu_time": 4.4039202508824968e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/12/8",
-      "iterations": 1078184,
-      "real_time": 6.0787059630700890e+02,
-      "cpu_time": 6.0728688238741495e+02,
+      "iterations": 1209336,
+      "real_time": 5.7572677324886286e+02,
+      "cpu_time": 5.7557204945525234e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/12/10",
-      "iterations": 1011809,
-      "real_time": 7.4740751365040728e+02,
-      "cpu_time": 7.4692555610793761e+02,
+      "iterations": 927890,
+      "real_time": 7.0508588416285829e+02,
+      "cpu_time": 7.0508249900313422e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/12/12",
-      "iterations": 695756,
-      "real_time": 1.0244048171730822e+03,
-      "cpu_time": 1.0236677800838146e+03,
+      "iterations": 681192,
+      "real_time": 1.0237203813687300e+03,
+      "cpu_time": 1.0230595779163575e+03,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/12/15",
-      "iterations": 614445,
-      "real_time": 1.1629133121539439e+03,
-      "cpu_time": 1.1622309563915251e+03,
+      "iterations": 633972,
+      "real_time": 1.1137827491945616e+03,
+      "cpu_time": 1.1133788243013817e+03,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/15/2",
-      "iterations": 3537980,
-      "real_time": 1.9669485469136589e+02,
-      "cpu_time": 1.9661190849015267e+02,
+      "iterations": 3798959,
+      "real_time": 1.9195881056690735e+02,
+      "cpu_time": 1.9188203926391216e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/15/4",
-      "iterations": 1903705,
-      "real_time": 3.5161563688708793e+02,
-      "cpu_time": 3.5154501353939145e+02,
+      "iterations": 2042502,
+      "real_time": 3.3350166459362822e+02,
+      "cpu_time": 3.3348804554414261e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/15/6",
-      "iterations": 1320730,
-      "real_time": 5.0583696665618123e+02,
-      "cpu_time": 5.0575287908960541e+02,
+      "iterations": 1209211,
+      "real_time": 4.9613231846403244e+02,
+      "cpu_time": 4.9596141616311303e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/15/8",
-      "iterations": 1013318,
-      "real_time": 6.7402857739576677e+02,
-      "cpu_time": 6.7375098438987470e+02,
+      "iterations": 1055027,
+      "real_time": 6.5127444604357549e+02,
+      "cpu_time": 6.5121650915097450e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/15/10",
-      "iterations": 835003,
-      "real_time": 9.2200459509810582e+02,
-      "cpu_time": 9.2076196133425333e+02,
+      "iterations": 840619,
+      "real_time": 8.7077990377238814e+02,
+      "cpu_time": 8.7059654849581716e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/15/12",
-      "iterations": 641854,
-      "real_time": 1.0516495808653185e+03,
-      "cpu_time": 1.0499911194757453e+03,
+      "iterations": 704084,
+      "real_time": 1.0018840380008629e+03,
+      "cpu_time": 1.0014714153424787e+03,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixMatrixMultiplyDynamic/8/15/15",
-      "iterations": 452150,
-      "real_time": 1.4838468495879563e+03,
-      "cpu_time": 1.4831493973239428e+03,
+      "iterations": 492670,
+      "real_time": 1.4063833480036617e+03,
+      "cpu_time": 1.4058111920758818e+03,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/2/2",
-      "iterations": 23166688,
-      "real_time": 3.0908356171033486e+01,
-      "cpu_time": 3.0853482379527367e+01,
+      "iterations": 25292855,
+      "real_time": 2.7151044434207272e+01,
+      "cpu_time": 2.7141854883523742e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/2/4",
-      "iterations": 14286676,
-      "real_time": 4.8835590242933613e+01,
-      "cpu_time": 4.8755987746905063e+01,
+      "iterations": 22065592,
+      "real_time": 3.0147460445520789e+01,
+      "cpu_time": 3.0142087282317927e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/2/6",
-      "iterations": 10327226,
-      "real_time": 6.7048685582897946e+01,
-      "cpu_time": 6.6902864331619611e+01,
+      "iterations": 17585686,
+      "real_time": 4.0896115738901862e+01,
+      "cpu_time": 4.0889846435333894e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/2/8",
-      "iterations": 7822890,
-      "real_time": 8.6306467559823034e+01,
-      "cpu_time": 8.6068320019839746e+01,
+      "iterations": 17879173,
+      "real_time": 3.9104480952284604e+01,
+      "cpu_time": 3.9094425676175717e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/4/2",
-      "iterations": 15182867,
-      "real_time": 4.6774265622794047e+01,
-      "cpu_time": 4.6768834897916236e+01,
+      "iterations": 20211470,
+      "real_time": 3.5726134562870051e+01,
+      "cpu_time": 3.5709871671878233e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/4/4",
-      "iterations": 8701597,
-      "real_time": 7.7058777250823880e+01,
-      "cpu_time": 7.7047351193119795e+01,
+      "iterations": 16443041,
+      "real_time": 4.2614241667397437e+01,
+      "cpu_time": 4.2613346278221961e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/4/6",
-      "iterations": 6345523,
-      "real_time": 1.1144365926667264e+02,
-      "cpu_time": 1.1144014449241867e+02,
+      "iterations": 11172114,
+      "real_time": 6.0791242559487927e+01,
+      "cpu_time": 6.0775069069292428e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/4/8",
-      "iterations": 4992404,
-      "real_time": 1.4219013364954284e+02,
-      "cpu_time": 1.4216597855461725e+02,
+      "iterations": 12821452,
+      "real_time": 5.5550041061029674e+01,
+      "cpu_time": 5.5545658947208125e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/5/2",
-      "iterations": 13019138,
-      "real_time": 5.4012483770823920e+01,
-      "cpu_time": 5.4012485312009112e+01,
+      "iterations": 17749604,
+      "real_time": 4.1344189307909765e+01,
+      "cpu_time": 4.1332809453099763e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/5/4",
-      "iterations": 7672494,
-      "real_time": 9.8577637081135052e+01,
-      "cpu_time": 9.8508125258881194e+01,
+      "iterations": 13331302,
+      "real_time": 4.8198646008625467e+01,
+      "cpu_time": 4.8196192689955978e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/5/6",
-      "iterations": 5097694,
-      "real_time": 1.3615404692470352e+02,
-      "cpu_time": 1.3614293050936510e+02,
+      "iterations": 10521411,
+      "real_time": 6.8834705341078177e+01,
+      "cpu_time": 6.8811493059246160e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/5/8",
-      "iterations": 4153415,
-      "real_time": 1.7059790125538956e+02,
-      "cpu_time": 1.7053412673667592e+02,
+      "iterations": 11636025,
+      "real_time": 6.2196941996305029e+01,
+      "cpu_time": 6.2184637795122761e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/8/2",
-      "iterations": 8391072,
-      "real_time": 8.2289985592021822e+01,
-      "cpu_time": 8.2278402568825641e+01,
+      "iterations": 13038781,
+      "real_time": 5.4562157074023844e+01,
+      "cpu_time": 5.4557093949195860e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/8/4",
-      "iterations": 5004540,
-      "real_time": 1.3907148868169401e+02,
-      "cpu_time": 1.3907052396424245e+02,
+      "iterations": 10672359,
+      "real_time": 6.8669581486015318e+01,
+      "cpu_time": 6.8651644870644702e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/8/6",
-      "iterations": 3355206,
-      "real_time": 2.0755993073931194e+02,
-      "cpu_time": 2.0750409959925366e+02,
+      "iterations": 6770481,
+      "real_time": 9.5025799208693442e+01,
+      "cpu_time": 9.5012451847956484e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/8/8",
-      "iterations": 2392811,
-      "real_time": 2.9440564299311592e+02,
-      "cpu_time": 2.9369306643943202e+02,
+      "iterations": 7957168,
+      "real_time": 9.1177169189164204e+01,
+      "cpu_time": 9.1174397725419311e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/10/2",
-      "iterations": 7198610,
-      "real_time": 9.9426971039264146e+01,
-      "cpu_time": 9.9391827033275320e+01,
+      "iterations": 9478031,
+      "real_time": 8.1617647595690258e+01,
+      "cpu_time": 8.1392327161621083e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/10/4",
-      "iterations": 3679621,
-      "real_time": 1.7742026690257489e+02,
-      "cpu_time": 1.7730548879897836e+02,
+      "iterations": 6851259,
+      "real_time": 8.7605171689521143e+01,
+      "cpu_time": 8.7577334326437409e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/10/6",
-      "iterations": 2672286,
-      "real_time": 2.5595225101927144e+02,
-      "cpu_time": 2.5595089747130595e+02,
+      "iterations": 5702276,
+      "real_time": 1.2516309347923458e+02,
+      "cpu_time": 1.2515423665918561e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/10/8",
-      "iterations": 2006202,
-      "real_time": 3.3350259046717514e+02,
-      "cpu_time": 3.3343202728338616e+02,
+      "iterations": 6238748,
+      "real_time": 1.1231960098122468e+02,
+      "cpu_time": 1.1229576831762046e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/12/2",
-      "iterations": 6069697,
-      "real_time": 1.1986262707529080e+02,
-      "cpu_time": 1.1980598043032748e+02,
+      "iterations": 8746392,
+      "real_time": 8.0646409966732648e+01,
+      "cpu_time": 8.0641709175625650e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/12/4",
-      "iterations": 3230049,
-      "real_time": 2.1174781809104439e+02,
-      "cpu_time": 2.1168502397331923e+02,
+      "iterations": 6862543,
+      "real_time": 1.0546842590693944e+02,
+      "cpu_time": 1.0543788213785912e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/12/6",
-      "iterations": 2312276,
-      "real_time": 3.0296995345939638e+02,
-      "cpu_time": 3.0294350674400658e+02,
+      "iterations": 4778516,
+      "real_time": 1.4042540863730284e+02,
+      "cpu_time": 1.4042204734691649e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/12/8",
-      "iterations": 1750919,
-      "real_time": 3.9761328538393502e+02,
-      "cpu_time": 3.9752038786488077e+02,
+      "iterations": 5720216,
+      "real_time": 1.2501864055361801e+02,
+      "cpu_time": 1.2499353171278851e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/15/2",
-      "iterations": 4791764,
-      "real_time": 1.4337153353597270e+02,
-      "cpu_time": 1.4334804468667602e+02,
+      "iterations": 6073700,
+      "real_time": 1.0861085235614615e+02,
+      "cpu_time": 1.0858652880451476e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/15/4",
-      "iterations": 2445398,
-      "real_time": 2.9792727318006075e+02,
-      "cpu_time": 2.9644785838542151e+02,
+      "iterations": 5871498,
+      "real_time": 1.2241918841377142e+02,
+      "cpu_time": 1.2240249421868481e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/15/6",
-      "iterations": 1675415,
-      "real_time": 4.1399307813196413e+02,
-      "cpu_time": 4.1306004780905164e+02,
+      "iterations": 4161613,
+      "real_time": 1.7430472512426471e+02,
+      "cpu_time": 1.7423220275407004e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/2/15/8",
-      "iterations": 1000000,
-      "real_time": 5.0919218396302313e+02,
-      "cpu_time": 5.0907499999999573e+02,
+      "iterations": 4886289,
+      "real_time": 1.4393398548816583e+02,
+      "cpu_time": 1.4392456115468804e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/2/2",
-      "iterations": 19681718,
-      "real_time": 3.7085834732254384e+01,
-      "cpu_time": 3.7055505012315642e+01,
+      "iterations": 18016812,
+      "real_time": 3.8874110807957280e+01,
+      "cpu_time": 3.8869307178206448e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/2/4",
-      "iterations": 11816939,
-      "real_time": 5.9712577852012636e+01,
-      "cpu_time": 5.9641418137133655e+01,
+      "iterations": 15862477,
+      "real_time": 4.5215548997123989e+01,
+      "cpu_time": 4.5128134779957485e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/2/6",
-      "iterations": 8307225,
-      "real_time": 8.3994282324664709e+01,
-      "cpu_time": 8.3933563855560990e+01,
+      "iterations": 11795036,
+      "real_time": 5.9462582224780718e+01,
+      "cpu_time": 5.9451620156140223e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/2/8",
-      "iterations": 6589724,
-      "real_time": 1.0500830004231972e+02,
-      "cpu_time": 1.0495872057767275e+02,
+      "iterations": 12708787,
+      "real_time": 5.6367768219025727e+01,
+      "cpu_time": 5.6361869940849246e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/4/2",
-      "iterations": 11177109,
-      "real_time": 5.9986059999957725e+01,
-      "cpu_time": 5.9945823199900779e+01,
+      "iterations": 12350907,
+      "real_time": 5.8155309809250724e+01,
+      "cpu_time": 5.8143988939435758e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/4/4",
-      "iterations": 6523826,
-      "real_time": 1.0054972220883876e+02,
-      "cpu_time": 1.0052337386067728e+02,
+      "iterations": 9687106,
+      "real_time": 7.0305975790357707e+01,
+      "cpu_time": 7.0296329987511967e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/4/6",
-      "iterations": 5107849,
-      "real_time": 1.4912620027430353e+02,
-      "cpu_time": 1.4892531083044693e+02,
+      "iterations": 7515003,
+      "real_time": 9.3827877381967866e+01,
+      "cpu_time": 9.3817261283857889e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/4/8",
-      "iterations": 3497831,
-      "real_time": 1.8957798046788480e+02,
-      "cpu_time": 1.8948085256262803e+02,
+      "iterations": 7882972,
+      "real_time": 9.1753700129723399e+01,
+      "cpu_time": 9.1736974328972266e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/5/2",
-      "iterations": 9799118,
-      "real_time": 7.1176791315499258e+01,
-      "cpu_time": 7.1137728926219566e+01,
+      "iterations": 10562690,
+      "real_time": 6.9845671415546008e+01,
+      "cpu_time": 6.9821797288379770e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/5/4",
-      "iterations": 4926386,
-      "real_time": 1.2998289760051796e+02,
-      "cpu_time": 1.2979210317664504e+02,
+      "iterations": 7926891,
+      "real_time": 9.0159960321824869e+01,
+      "cpu_time": 9.0150981008822257e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/5/6",
-      "iterations": 3907427,
-      "real_time": 1.8401142747728380e+02,
-      "cpu_time": 1.8372806452942160e+02,
+      "iterations": 6085634,
+      "real_time": 1.1478190375777179e+02,
+      "cpu_time": 1.1476733566297230e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/5/8",
-      "iterations": 2901747,
-      "real_time": 2.4004342245613037e+02,
-      "cpu_time": 2.3965838510386763e+02,
+      "iterations": 7091624,
+      "real_time": 9.9747764261981445e+01,
+      "cpu_time": 9.9746264043329859e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/8/2",
-      "iterations": 6598296,
-      "real_time": 1.0937043698980229e+02,
-      "cpu_time": 1.0931049470954648e+02,
+      "iterations": 6099155,
+      "real_time": 1.1502437060294029e+02,
+      "cpu_time": 1.1500494740664571e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/8/4",
-      "iterations": 3767370,
-      "real_time": 1.9433398100399043e+02,
-      "cpu_time": 1.9415427738713331e+02,
+      "iterations": 4908182,
+      "real_time": 1.3807724183988313e+02,
+      "cpu_time": 1.3806802600229483e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/8/6",
-      "iterations": 2559050,
-      "real_time": 2.7881860655332542e+02,
-      "cpu_time": 2.7861237568629309e+02,
+      "iterations": 3668186,
+      "real_time": 1.9131237210919636e+02,
+      "cpu_time": 1.9124984392830524e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/8/8",
-      "iterations": 1957128,
-      "real_time": 3.8107868164052729e+02,
-      "cpu_time": 3.8039361758657793e+02,
+      "iterations": 3904420,
+      "real_time": 1.7420847347641998e+02,
+      "cpu_time": 1.7418080022128458e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/10/2",
-      "iterations": 4998179,
-      "real_time": 1.3485141248265811e+02,
-      "cpu_time": 1.3473206941968377e+02,
+      "iterations": 5144562,
+      "real_time": 1.4310086088618348e+02,
+      "cpu_time": 1.4308428978016138e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/10/4",
-      "iterations": 2985393,
-      "real_time": 2.5855801428617633e+02,
-      "cpu_time": 2.5823635280180264e+02,
+      "iterations": 3830705,
+      "real_time": 1.7403503404397694e+02,
+      "cpu_time": 1.7398285694147322e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/10/6",
-      "iterations": 2025651,
-      "real_time": 3.4284212629807354e+02,
-      "cpu_time": 3.4259109787421784e+02,
+      "iterations": 2992860,
+      "real_time": 2.4153587806483168e+02,
+      "cpu_time": 2.4115528290665154e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/10/8",
-      "iterations": 1579013,
-      "real_time": 4.6579520371173885e+02,
-      "cpu_time": 4.6466241886544231e+02,
+      "iterations": 3354659,
+      "real_time": 2.1033175116034704e+02,
+      "cpu_time": 2.1028187961876961e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/12/2",
-      "iterations": 4616044,
-      "real_time": 1.5713524697743620e+02,
-      "cpu_time": 1.5704746315243284e+02,
+      "iterations": 3958739,
+      "real_time": 1.7653001295893489e+02,
+      "cpu_time": 1.7650898430031356e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/12/4",
-      "iterations": 2516700,
-      "real_time": 2.9100645371089314e+02,
-      "cpu_time": 2.9072436126674546e+02,
+      "iterations": 3444831,
+      "real_time": 2.0365106328593069e+02,
+      "cpu_time": 2.0359779623441440e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/12/6",
-      "iterations": 1709226,
-      "real_time": 4.1516586810596453e+02,
-      "cpu_time": 4.1491060866145557e+02,
+      "iterations": 2592151,
+      "real_time": 2.7323318430975951e+02,
+      "cpu_time": 2.7321826544827206e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/12/8",
-      "iterations": 1241883,
-      "real_time": 5.4475565329649237e+02,
-      "cpu_time": 5.4405366689133859e+02,
+      "iterations": 2958467,
+      "real_time": 2.3949989975970550e+02,
+      "cpu_time": 2.3940473224815295e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/15/2",
-      "iterations": 3694302,
-      "real_time": 1.8488382948101403e+02,
-      "cpu_time": 1.8476426670044455e+02,
+      "iterations": 3082085,
+      "real_time": 2.1687732267861827e+02,
+      "cpu_time": 2.1638825665093177e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/15/4",
-      "iterations": 2042233,
-      "real_time": 3.4596026115862389e+02,
-      "cpu_time": 3.4580383335299825e+02,
+      "iterations": 2948771,
+      "real_time": 2.3876129002426197e+02,
+      "cpu_time": 2.3872352244375239e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/15/6",
-      "iterations": 1317126,
-      "real_time": 5.2114540600165549e+02,
-      "cpu_time": 5.2072770562571907e+02,
+      "iterations": 2171155,
+      "real_time": 3.2606437403440316e+02,
+      "cpu_time": 3.2593619525090600e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/4/15/8",
-      "iterations": 1135295,
-      "real_time": 6.5425890270691934e+02,
-      "cpu_time": 6.5389964722827540e+02,
+      "iterations": 2349932,
+      "real_time": 3.0022190384820254e+02,
+      "cpu_time": 3.0018528195710189e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/2/2",
-      "iterations": 16592868,
-      "real_time": 4.0970286091986544e+01,
-      "cpu_time": 4.0966757524979869e+01,
+      "iterations": 13825522,
+      "real_time": 5.1403195405703322e+01,
+      "cpu_time": 5.1400590878233182e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/2/4",
-      "iterations": 10590976,
-      "real_time": 6.6239830209506550e+01,
-      "cpu_time": 6.6218543031351629e+01,
+      "iterations": 11294877,
+      "real_time": 6.0011368162106876e+01,
+      "cpu_time": 5.9981175536484614e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/2/6",
-      "iterations": 7059868,
-      "real_time": 9.4544511885896256e+01,
-      "cpu_time": 9.4514090065136926e+01,
+      "iterations": 9024456,
+      "real_time": 7.9565946797724678e+01,
+      "cpu_time": 7.9534544796936245e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/2/8",
-      "iterations": 5719188,
-      "real_time": 1.3004163230229511e+02,
-      "cpu_time": 1.2991616991782993e+02,
+      "iterations": 9776400,
+      "real_time": 7.3689118180278257e+01,
+      "cpu_time": 7.3674563233906738e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/4/2",
-      "iterations": 9752564,
-      "real_time": 6.8525121608589998e+01,
-      "cpu_time": 6.8516751082075046e+01,
+      "iterations": 8511777,
+      "real_time": 8.1897759302636175e+01,
+      "cpu_time": 8.1887836112248166e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/4/4",
-      "iterations": 5726159,
-      "real_time": 1.2255517983877553e+02,
-      "cpu_time": 1.2252558826955074e+02,
+      "iterations": 6867862,
+      "real_time": 9.7630730061988217e+01,
+      "cpu_time": 9.7603009495530586e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/4/6",
-      "iterations": 4103815,
-      "real_time": 1.7795451450251576e+02,
-      "cpu_time": 1.7789447136383765e+02,
+      "iterations": 4939944,
+      "real_time": 1.4240713052458332e+02,
+      "cpu_time": 1.4240343615231149e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/4/8",
-      "iterations": 2821034,
-      "real_time": 2.3261871073233979e+02,
-      "cpu_time": 2.3255657322811186e+02,
+      "iterations": 5379980,
+      "real_time": 1.3146850399296051e+02,
+      "cpu_time": 1.3145643664102354e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/5/2",
-      "iterations": 8639202,
-      "real_time": 8.2352238778858720e+01,
-      "cpu_time": 8.2320218927629014e+01,
+      "iterations": 5508298,
+      "real_time": 1.2778335829977725e+02,
+      "cpu_time": 1.2776632636796474e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/5/4",
-      "iterations": 4912522,
-      "real_time": 1.4484517116014243e+02,
-      "cpu_time": 1.4483008931053411e+02,
+      "iterations": 4931140,
+      "real_time": 1.2417263288413042e+02,
+      "cpu_time": 1.2415729425650493e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/5/6",
-      "iterations": 2973978,
-      "real_time": 2.1997081318013639e+02,
-      "cpu_time": 2.1991083995914832e+02,
+      "iterations": 3716979,
+      "real_time": 1.7937387620793518e+02,
+      "cpu_time": 1.7931766630911591e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/5/8",
-      "iterations": 2499375,
-      "real_time": 2.8963717449177921e+02,
-      "cpu_time": 2.8959319829957741e+02,
+      "iterations": 4704839,
+      "real_time": 1.4856214124854026e+02,
+      "cpu_time": 1.4847288079358418e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/8/2",
-      "iterations": 5430608,
-      "real_time": 1.3098994182538198e+02,
-      "cpu_time": 1.3094224440430938e+02,
+      "iterations": 3828379,
+      "real_time": 1.7642702091929959e+02,
+      "cpu_time": 1.7641252342048074e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/8/4",
-      "iterations": 2820738,
-      "real_time": 2.4762848620729287e+02,
-      "cpu_time": 2.4757031670435043e+02,
+      "iterations": 3178553,
+      "real_time": 2.2254808428582129e+02,
+      "cpu_time": 2.2236533416305690e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/8/6",
-      "iterations": 2004444,
-      "real_time": 3.5363001264824516e+02,
-      "cpu_time": 3.5320867033451810e+02,
+      "iterations": 2289827,
+      "real_time": 2.9522753114424376e+02,
+      "cpu_time": 2.9422965141034393e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/8/8",
-      "iterations": 1560375,
-      "real_time": 4.4702242153842866e+02,
-      "cpu_time": 4.4679003444684560e+02,
+      "iterations": 2563211,
+      "real_time": 2.5471758273481444e+02,
+      "cpu_time": 2.5470669406459896e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/10/2",
-      "iterations": 4387917,
-      "real_time": 1.5672350798426672e+02,
-      "cpu_time": 1.5660369145542728e+02,
+      "iterations": 3320841,
+      "real_time": 2.1948832421445522e+02,
+      "cpu_time": 2.1925470084235141e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/10/4",
-      "iterations": 2460180,
-      "real_time": 2.9458592462737818e+02,
-      "cpu_time": 2.9406506840961958e+02,
+      "iterations": 2595438,
+      "real_time": 2.8164086406031635e+02,
+      "cpu_time": 2.8109436634587809e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/10/6",
-      "iterations": 1591166,
-      "real_time": 4.1999859355506976e+02,
-      "cpu_time": 4.1983237449768080e+02,
+      "iterations": 1901048,
+      "real_time": 3.7669949940506007e+02,
+      "cpu_time": 3.7474172140840068e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/10/8",
-      "iterations": 1256484,
-      "real_time": 5.5584961524630944e+02,
-      "cpu_time": 5.5535207770256011e+02,
+      "iterations": 1935332,
+      "real_time": 3.5268577172852019e+02,
+      "cpu_time": 3.5101057596320084e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/12/2",
-      "iterations": 3639635,
-      "real_time": 1.8330436678902063e+02,
-      "cpu_time": 1.8323430783581640e+02,
+      "iterations": 2465857,
+      "real_time": 2.8694780356075177e+02,
+      "cpu_time": 2.8591398446869033e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/12/4",
-      "iterations": 2131910,
-      "real_time": 3.5329953889419215e+02,
-      "cpu_time": 3.5290467233607779e+02,
+      "iterations": 2424377,
+      "real_time": 3.1380514990839799e+02,
+      "cpu_time": 3.1352673284725660e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/12/6",
-      "iterations": 1418213,
-      "real_time": 5.1685270689378262e+02,
-      "cpu_time": 5.1643723474541241e+02,
+      "iterations": 1699041,
+      "real_time": 4.1115516634758364e+02,
+      "cpu_time": 4.1041622891972924e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/12/8",
-      "iterations": 1078998,
-      "real_time": 6.5661630324613179e+02,
-      "cpu_time": 6.5630705524941425e+02,
+      "iterations": 2015061,
+      "real_time": 3.5049843359947891e+02,
+      "cpu_time": 3.5043802644189248e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/15/2",
-      "iterations": 2989064,
-      "real_time": 2.4169597172119879e+02,
-      "cpu_time": 2.4139730698305644e+02,
+      "iterations": 2223585,
+      "real_time": 3.2827442663816248e+02,
+      "cpu_time": 3.2799870479429626e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/15/4",
-      "iterations": 1608855,
-      "real_time": 4.2763981960940112e+02,
-      "cpu_time": 4.2750527549095267e+02,
+      "iterations": 2032461,
+      "real_time": 3.6764164627581789e+02,
+      "cpu_time": 3.6734136595979533e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/15/6",
-      "iterations": 1173374,
-      "real_time": 6.3219860330892459e+02,
-      "cpu_time": 6.3159487085958642e+02,
+      "iterations": 1454845,
+      "real_time": 4.7894409648555728e+02,
+      "cpu_time": 4.7869841804454478e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/6/15/8",
-      "iterations": 897585,
-      "real_time": 8.3490393447941847e+02,
-      "cpu_time": 8.3421960037211306e+02,
+      "iterations": 1690588,
+      "real_time": 4.0958818113106776e+02,
+      "cpu_time": 4.0942500479121969e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/2/2",
-      "iterations": 13736533,
-      "real_time": 4.7060442110461317e+01,
-      "cpu_time": 4.7051974468373871e+01,
+      "iterations": 11031440,
+      "real_time": 6.5554157024771769e+01,
+      "cpu_time": 6.5520457891264968e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/2/4",
-      "iterations": 9238973,
-      "real_time": 7.8011983154052416e+01,
-      "cpu_time": 7.7935502138600583e+01,
+      "iterations": 9025387,
+      "real_time": 7.9776080069881658e+01,
+      "cpu_time": 7.9611766232295039e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/2/6",
-      "iterations": 6683152,
-      "real_time": 1.0491907426409284e+02,
-      "cpu_time": 1.0489077608888178e+02,
+      "iterations": 6950305,
+      "real_time": 1.0042530103821075e+02,
+      "cpu_time": 1.0040710443642280e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/2/8",
-      "iterations": 4920568,
-      "real_time": 1.4087181701925363e+02,
-      "cpu_time": 1.4072968811729817e+02,
+      "iterations": 7750479,
+      "real_time": 9.2724468376972212e+01,
+      "cpu_time": 9.2359323855981700e+01,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/4/2",
-      "iterations": 8910160,
-      "real_time": 8.4656269364672227e+01,
-      "cpu_time": 8.4596909595334935e+01,
+      "iterations": 6325568,
+      "real_time": 1.1790369006234678e+02,
+      "cpu_time": 1.1779131929337998e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/4/4",
-      "iterations": 4977176,
-      "real_time": 1.3650262335756997e+02,
-      "cpu_time": 1.3637833984572038e+02,
+      "iterations": 5399068,
+      "real_time": 1.3595422061298001e+02,
+      "cpu_time": 1.3584918730417584e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/4/6",
-      "iterations": 3542170,
-      "real_time": 2.0448998072683881e+02,
-      "cpu_time": 2.0431910382618042e+02,
+      "iterations": 3507928,
+      "real_time": 1.9749404777928154e+02,
+      "cpu_time": 1.9739259186620586e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/4/8",
-      "iterations": 2545306,
-      "real_time": 2.6667176673245842e+02,
-      "cpu_time": 2.6664691789513603e+02,
+      "iterations": 4200067,
+      "real_time": 1.7134937180691117e+02,
+      "cpu_time": 1.7126798215361706e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/5/2",
-      "iterations": 7390749,
-      "real_time": 9.8716042580185103e+01,
-      "cpu_time": 9.8542651089893610e+01,
+      "iterations": 3795087,
+      "real_time": 1.6795350276303446e+02,
+      "cpu_time": 1.6785043399533123e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/5/4",
-      "iterations": 4320934,
-      "real_time": 1.6309422362197583e+02,
-      "cpu_time": 1.6302910435567446e+02,
+      "iterations": 3927311,
+      "real_time": 1.7862383165866763e+02,
+      "cpu_time": 1.7855575990798138e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/5/6",
-      "iterations": 2763543,
-      "real_time": 2.4640125807299228e+02,
-      "cpu_time": 2.4632509789065688e+02,
+      "iterations": 3291887,
+      "real_time": 2.1772611665457177e+02,
+      "cpu_time": 2.1768517570622586e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/5/8",
-      "iterations": 2160581,
-      "real_time": 3.2176965132248881e+02,
-      "cpu_time": 3.2174632656681075e+02,
+      "iterations": 3392969,
+      "real_time": 2.0755736404846601e+02,
+      "cpu_time": 2.0703696379189000e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/8/2",
-      "iterations": 4923891,
-      "real_time": 1.4027321543260507e+02,
-      "cpu_time": 1.4025960363460857e+02,
+      "iterations": 2791959,
+      "real_time": 2.3949916669863933e+02,
+      "cpu_time": 2.3945516391894884e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/8/4",
-      "iterations": 2623275,
-      "real_time": 2.7616505664590318e+02,
-      "cpu_time": 2.7585289380638216e+02,
+      "iterations": 2434131,
+      "real_time": 3.0577923577307126e+02,
+      "cpu_time": 3.0552053278975040e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/8/6",
-      "iterations": 1752107,
-      "real_time": 3.9825616243616702e+02,
-      "cpu_time": 3.9796313809601418e+02,
+      "iterations": 1967077,
+      "real_time": 3.6756307764757895e+02,
+      "cpu_time": 3.6740605477060194e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/8/8",
-      "iterations": 1347138,
-      "real_time": 5.2444406957618230e+02,
-      "cpu_time": 5.2388916354524974e+02,
+      "iterations": 2025920,
+      "real_time": 3.3491070525053374e+02,
+      "cpu_time": 3.3465586005372012e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/10/2",
-      "iterations": 3964411,
-      "real_time": 1.8413985961855252e+02,
-      "cpu_time": 1.8353016374941100e+02,
+      "iterations": 2461097,
+      "real_time": 3.1264561532702294e+02,
+      "cpu_time": 3.1207099923328877e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/10/4",
-      "iterations": 2193546,
-      "real_time": 3.2562545942132925e+02,
-      "cpu_time": 3.2532073637843484e+02,
+      "iterations": 2026161,
+      "real_time": 3.5711660968195963e+02,
+      "cpu_time": 3.5638678268904562e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/10/6",
-      "iterations": 1528918,
-      "real_time": 4.8624262317947597e+02,
-      "cpu_time": 4.8519148835972010e+02,
+      "iterations": 1376923,
+      "real_time": 4.7417879790206104e+02,
+      "cpu_time": 4.7359147897156504e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/10/8",
-      "iterations": 1063765,
-      "real_time": 6.0309988758118516e+02,
-      "cpu_time": 6.0305988634705250e+02,
+      "iterations": 1779595,
+      "real_time": 3.9611361237767579e+02,
+      "cpu_time": 3.9577825291708672e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/12/2",
-      "iterations": 3353631,
-      "real_time": 2.0972672545551407e+02,
-      "cpu_time": 2.0961638295923979e+02,
+      "iterations": 2069800,
+      "real_time": 3.3508949754339409e+02,
+      "cpu_time": 3.3507633587785392e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/12/4",
-      "iterations": 1804891,
-      "real_time": 4.0532677377768863e+02,
-      "cpu_time": 4.0329582229617426e+02,
+      "iterations": 1819978,
+      "real_time": 3.8383968815841575e+02,
+      "cpu_time": 3.8376013336425916e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/12/6",
-      "iterations": 1168536,
-      "real_time": 5.7411932446752530e+02,
-      "cpu_time": 5.7363487303773388e+02,
+      "iterations": 1389082,
+      "real_time": 5.4213400067237194e+02,
+      "cpu_time": 5.4144103803809003e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/12/8",
-      "iterations": 899292,
-      "real_time": 7.3023451557405258e+02,
-      "cpu_time": 7.3011324464134782e+02,
+      "iterations": 1455504,
+      "real_time": 5.2323143255664854e+02,
+      "cpu_time": 5.2207551473579053e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/15/2",
-      "iterations": 2784640,
-      "real_time": 2.5370269835112620e+02,
-      "cpu_time": 2.5367911112386562e+02,
+      "iterations": 1486986,
+      "real_time": 4.3426104686888721e+02,
+      "cpu_time": 4.3341564749095130e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/15/4",
-      "iterations": 1499038,
-      "real_time": 4.5798840521274246e+02,
-      "cpu_time": 4.5795303387905744e+02,
+      "iterations": 1374112,
+      "real_time": 4.8682727903993663e+02,
+      "cpu_time": 4.8551355348035122e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/15/6",
-      "iterations": 1062554,
-      "real_time": 6.6175915484215727e+02,
-      "cpu_time": 6.6175272033233023e+02,
+      "iterations": 1079964,
+      "real_time": 6.4053175021590130e+02,
+      "cpu_time": 6.3993984984682413e+02,
       "time_unit": "ns"
     },
     {
       "name": "BM_MatrixTransposeMatrixMultiplyDynamic/8/15/8",
-      "iterations": 802026,
-      "real_time": 9.1052324482760946e+02,
-      "cpu_time": 9.1032086241591992e+02,
+      "iterations": 1148388,
+      "real_time": 5.4868444198163991e+02,
+      "cpu_time": 5.4819364187018891e+02,
       "time_unit": "ns"
     }
   ]
diff --git a/internal/ceres/small_blas.h b/internal/ceres/small_blas.h
index a603437..4f6ebf5 100644
--- a/internal/ceres/small_blas.h
+++ b/internal/ceres/small_blas.h
@@ -221,22 +221,27 @@
   DCHECK_LE(start_row_c + NUM_ROW_C, row_stride_c);
   DCHECK_LE(start_col_c + NUM_COL_C, col_stride_c);
 
-  for (int row = 0; row < NUM_ROW_C; ++row) {
-    for (int col = 0; col < NUM_COL_C; ++col) {
-      double tmp = 0.0;
-      for (int k = 0; k < NUM_ROW_A; ++k) {
-        tmp += A[k * NUM_COL_A + row] * B[k * NUM_COL_B + col];
-      }
+  if (kOperation == 0) {
+    std::fill(C, C + NUM_ROW_C * NUM_COL_C, 0.0);
+  }
 
-      const int index = (row + start_row_c) * col_stride_c + start_col_c + col;
-      if (kOperation > 0) {
-        C[index]+= tmp;
-      } else if (kOperation < 0) {
-        C[index]-= tmp;
-      } else {
-        C[index]= tmp;
+  // Evaluate C op A' * B
+  // as the sum of rank one outer products of the rows of A and B.
+  for (int r = 0; r < NUM_ROW_A; ++r) {
+    double* c_row = C;
+    for (int i = 0; i < NUM_COL_A; ++i) {
+      const double a_value = A[i];
+      for (int j = 0; j < NUM_COL_B; ++j) {
+        if (kOperation >= 0) {
+          c_row[j] += a_value * B[j];
+        } else {
+          c_row[j] -= a_value * B[j];
+        }
       }
+      c_row += NUM_COL_C;
     }
+    A += NUM_COL_A;
+    B += NUM_COL_B;
   }
 }