[PATCH] D118979: [AArch64] Set maximum VF with shouldMaximizeVectorBandwidth

Dave Green via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 7 01:29:26 PST 2022


dmgreen added a comment.

Hello. This option makes a lot of sense to me, for the way AArch64 lowers vectors with extensions in them. I have a downstream set of benchmarks which, whilst not amazing, do show changes in vectorization quite well. There are some great improvements, but some things are not looking so healthy. I will send you some details. We may need to work through improving some of them, either by fixing the costs or improving the codegen for larger than legal types.



================
Comment at: llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h:139
+  bool shouldMaximizeVectorBandwidth() const {
+    if (ST->hasSVE())
+      return false;
----------------
It's generally best if fixed length vectorization doesn't start behaving differently just because SVE is available (unless it can be better, of course). If we expect MaximizeVectorBandwidth to be better, but doesn't work for scalable vectors well, can we just try to disable the scalable VFs from being widened?


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D118979/new/

https://reviews.llvm.org/D118979



More information about the llvm-commits mailing list