http://llvm.org/bugs/show_bug.cgi?id=15247
Bug ID: 15247
Summary: Possible regression of vectorization of Linpack on ARM
Product: libraries
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: enhancement
Priority: P
Component: Loop Optimizer
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected]
Classification: Unclassified
Created attachment 10004
--> http://llvm.org/bugs/attachment.cgi?id=10004&action=edit
result of the runs with clang and GCC
Running Linpack from (http://www.netlib.org/benchmark/linpackc.new) with clang
with and without vectorization, I get 40% of performance boost on Intel but -3%
on ARM.
Looking at the code, the intermixing of ARM and NEON code looks particularly
bad, so it seems some shuffles are not being lowered correctly or are being
generated on a pattern that the back-end instruction combine doesn't recognize.
Nadav said he got 40% boost on ARM too, so this could be a regression, but not
necessarily on the loop vectorizer, since the BB vectorizer uses the same cost
model and is known to abuse of shuffles.
Attached is the CSV with the result of the runs with clang and GCC. The
compilation command lines are below:
GCC:
$ gcc -O3 linpack.c
Clang Vect:
$ clang -O3 linpack.c
Clang No-vect:
$ clang -O3 -fno-vectorize linpack.c
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs