[llvm] [Matrix] Use tiled loops automatically for large kernels. (PR #179325)

Nathan Corbyn via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 10 02:06:49 PST 2026


================
@@ -68,9 +68,10 @@ static cl::opt<unsigned> TileSize(
     "fuse-matrix-tile-size", cl::init(4), cl::Hidden,
     cl::desc(
         "Tile size for matrix instruction fusion using square-shaped tiles."));
-static cl::opt<bool> TileUseLoops("fuse-matrix-use-loops", cl::init(false),
-                                  cl::Hidden,
-                                  cl::desc("Generate loop nest for tiling."));
+static cl::opt<unsigned>
+    TileLoopsThreshold("fuse-matrix-loops-threshold", cl::init(200), cl::Hidden,
+                       cl::desc("Generate loop nests for tiling when expected "
+                                "number of operations exceeds threshold."));
----------------
cofibrant wrote:

Not very important but I'm wondering if we should use `0` to disable--i.e., fuse no loops--and `1` as the 'always on' value. Having to set `-fuse-matrix-loops-threshold=9999...` to disable feels a bit messy. I would also be in favour of keeping the original flag as a mechanism to disable.

https://github.com/llvm/llvm-project/pull/179325


More information about the llvm-commits mailing list