commit | 656f9efbd3a7ba280ca1098b6f1ab4003d426eb6 | [log] [tgz] |
---|---|---|
author | Sameer Agarwal <sameeragarwal@google.com> | Sun Feb 25 14:48:27 2018 -0800 |
committer | Keir Mierle <mierle@gmail.com> | Mon Feb 26 00:17:51 2018 +0000 |
tree | 95ace0366e255b3d9d115cbdc2295e0b46ef369e | |
parent | 22fa21c6f824ebefae12a9a2fa459714907acc57 [diff] |
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
Ceres Solver is an open source C++ library for modeling and solving large, complicated optimization problems. It is a feature rich, mature and performant library which has been used in production at Google since 2010. Ceres Solver can solve two kinds of problems.
Please see ceres-solver.org for more information.
Ceres development happens on Gerrit, including both repository hosting and code reviews. The GitHub Repository is a continuously updated mirror which is primarily meant for issue tracking. Please see our Contributing to Ceres Guide for more details.
The upstream Gerrit repository is
https://ceres-solver.googlesource.com/ceres-solver