[llvm-dev] Questions on LLVM vectorization diagnostics

Dangeti Tharun kumar via llvm-dev llvm-dev at lists.llvm.org
Thu Jun 23 08:20:05 PDT 2016

Dear LLVM Community,

I am D Tharun Kumar, masters student at Indian Institute of Technology
Hyderabad, working in a team to improve current vectorizer in LLVM. As an
initial study, we are studying various benchmarks to analyze and compare
vectorizing capabilities of LLVM, GCC and ICC. We found that vectorization
remarks given by LLVM are vague and brief, comparatively GCC and ICC are
giving detailed diagnostics.

   - I am interested to know why the LLVM diagnostics are brief and not
   intuitive (making them less helpful)?

   - In our analysis we never seen llvm trying to vectorize outer loops. Is
   this well known? Is outer loop vectorization implemented in LLVM as in GCC?
   (http://dl.acm.org/citation.cfm?id=1454119) If not, is someone working
   on it?

   - On the TSVC benchmark suite, out of a total of 151 loops, LLVM, GCC
   and ICC vectorized 70, 82 and 112 loops respectively. Is the cause for lag
   of LLVM the inability of LLVM’s vectorizer, or are there any (enabling)
   optimization passes running before GCC’s vectorizer that are helping GCC
   perform better?

   - Loop peeling to enhance vectorization is present in GCC and ICC, but,
   the LLVM remarks don’t say anything about alignment. Does LLVM has this
   functionality and the vectorizer doesn’t remark about it, or it doesn’t it
   have the functionality at all?

Finally, we appreciate suggestions and directions for improving the
vectorization framework of LLVM.

I would also like to know if anyone worked or is working on improving
vectorization remarks.


Dangeti Tharun kumar
M.TECH Computer Science
IIT Hyderabad
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160623/2b0d66c8/attachment.html>

More information about the llvm-dev mailing list