[llvm-dev] KNL Vectorization with larger vector width
Hal Finkel via llvm-dev
llvm-dev at lists.llvm.org
Thu Jul 12 12:40:33 PDT 2018
On 07/12/2018 02:32 PM, hameeza ahmed via llvm-dev wrote:
> Hello,
>
> If we pass march=knl, the llvm vectorizer (O3) generates max 16xi32
> vector width instruction and 8xi32 or 4xi32 in recursive manner.
>
> I am working on a target with larger vector widths like 32,64...
> Now how to enable the vectorizer (O3) to automatically generate larger
> vector size instructions recursively by specifying the new target.
> Which files have the code for this?
I believe that the thing that you're trying to affect is this:
> LoopVectorizationCostModel::computeFeasibleMaxVF(bool OptForSize,
> unsigned
> ConstTripCount) {
> ...
> unsigned WidestRegister = TTI.getRegisterBitWidth(true);
and so your target's TargetTransformInfo class should return an
appropriate value from getRegisterBitWidth.
-Hal
>
>
> Please help
>
> Thank You
> Regards
>
>
>
>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
--
Hal Finkel
Lead, Compiler Technology and Programming Languages
Leadership Computing Facility
Argonne National Laboratory
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20180712/2a49316e/attachment.html>
More information about the llvm-dev
mailing list