[llvm] [LAA] Increase vectorize memory check threshold to 192 (PR #228382)

Igor Kirillov via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 2 03:26:32 PDT 2026


https://github.com/igogo-x86 created https://github.com/llvm/llvm-project/pull/228382

Together with the proposed switch to
-stencil-runtime-check-merge=auto in #228373, it allows two of the three hot loops in 709.cactus (SPEC2026) to vectorize.

In testing with stencil merging enabled and a threshold above 180, the 709.cactus_r score improved by approximately 16% on Neoverse-V2.

>From 037d7d106f2a7c9d8d955a8fd534d657223e0e28 Mon Sep 17 00:00:00 2001
From: Igor Kirillov <igor.kirillov at arm.com>
Date: Fri, 2 Oct 2026 10:11:32 +0000
Subject: [PATCH] [LAA] Increase vectorize memory check threshold to 192

Together with the proposed switch to
-stencil-runtime-check-merge=auto in #228373, it allows two of the
three hot loops in 709.cactus (SPEC2026) to vectorize.

In testing with stencil merging enabled and a threshold above 180, the
709.cactus_r score improved by approximately 16% on Neoverse-V2.
---
 llvm/lib/Analysis/LoopAccessAnalysis.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/llvm/lib/Analysis/LoopAccessAnalysis.cpp b/llvm/lib/Analysis/LoopAccessAnalysis.cpp
index 367616e8e1e74..a7b0929ff49bc 100644
--- a/llvm/lib/Analysis/LoopAccessAnalysis.cpp
+++ b/llvm/lib/Analysis/LoopAccessAnalysis.cpp
@@ -99,7 +99,7 @@ static cl::opt<unsigned, true> VectorizeMemoryCheckThreshold(
     "vectorize-memory-check-threshold", cl::Hidden,
     cl::desc("The maximum allowed number of runtime memory checks"),
     cl::location(VectorizerParams::VectorizeMemoryCheckThreshold),
-    cl::init(128));
+    cl::init(192));
 unsigned VectorizerParams::VectorizeMemoryCheckThreshold;
 
 /// The maximum iterations used to merge memory checks



More information about the llvm-commits mailing list