llvm-project icon indicating copy to clipboard operation
llvm-project copied to clipboard

Inconsistencies in branch hop, file HighPerfCodeGen.md

Open dpotop opened this issue 5 years ago • 1 comments
trafficstars

Hello,

The first tiled MLIR example of the matrix multiplication (in section Tiling in MLIR) seems inconsistent:

  • the affine map names are not those used in the code
  • the affine map parameters are not consistent with the tiling described above, or with the matrix sizes (2088x2048). I believe they should read: #map7 = (d0) -> (d064) #map8 = (d0) -> (2088,d064+64)

Comparing code and GFLOPS along the transformations of the tutorial has a minor flaw - at first matrix A has size 2088x2048, but then it seems to change to 2048x2048 (in section Explicit Copying and Packing).

In any case, a hugely useful tutorial to me and my students - this is why I am sending this erratum, so that it may help others.

If I had a wishlist of things that I missed:

  • a good reference for unroll-and-jam
  • a good reference on vectorization
  • a TODO list explaining what has to be programmed into the hop branch of your fork of mlir to perform the tutorial.

Best regards, Dumitru

dpotop avatar Feb 29 '20 12:02 dpotop

is there any update?

ColdCodeCool avatar May 23 '22 00:05 ColdCodeCool