Matrix multiplication. 2D register blocking v.6n benchmark

WebGL2-compute based NxN matrix multiplication C = A x B Shader v.6 benchmark. Fixed random A, B 4096x4096 buffers are used for calculations, therefore You can set new N value (up to N=4096, multiple of 128). Tile size TS = 128 and work-per-thread = 8. FLOPS = 2 N3 / Tmin.

calculating
N= it=

GeForce RTX 2070, OpenGL backend, Windows 10, 64 bit     5.6 TFLOPS (N=4096).

"Semi-quantitative" plot. I re-run all programs many times (press "Run" button). Unfortunately the shader has long warming up (up to 50 iterations), e.g. for N = 2048
  T(ms)= 33.7   33.8   33.2   32.3   34   20.4   5.4   5.2   5.2   5.2
Therefore it = 100 and "highest reproducible numbers" are used :)
Set N = 128 to see overheads (minimal value 1.4 - 0.5 ms).

D3D11 backend has higher overheads for big N than OpenGL one (therefore you need to set Nmax = N in the script).


GEMM tests on RTX 2070     updated 19 July 2019