[llvm] r179480 - Document the SLP infrastructure.

Hal Finkel hfinkel at anl.gov
Sun Apr 14 01:11:46 PDT 2013


----- Original Message -----
> From: "Nadav Rotem" <nrotem at apple.com>
> To: llvm-commits at cs.uiuc.edu
> Sent: Sunday, April 14, 2013 2:42:26 AM
> Subject: [llvm] r179480 - Document the SLP infrastructure.
> 
> Author: nadav
> Date: Sun Apr 14 02:42:25 2013
> New Revision: 179480
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=179480&view=rev
> Log:
> Document the SLP infrastructure.
> 
> Modified:
>     llvm/trunk/docs/Vectorizers.rst
> 
> Modified: llvm/trunk/docs/Vectorizers.rst
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/Vectorizers.rst?rev=179480&r1=179479&r2=179480&view=diff
> ==============================================================================
> --- llvm/trunk/docs/Vectorizers.rst (original)
> +++ llvm/trunk/docs/Vectorizers.rst Sun Apr 14 02:42:25 2013
> @@ -329,3 +329,33 @@ into vector operations.
>    }
>  
>  
> +.. _slp-vectorizer:
> +
> +The SLP Vectorizer
> +==========================
> +
> +The SLP vectorizer (superword-level parallelism) is a new
> experimental
> +infrastructure for vectorizing code and rolling loops.
> +A major focus of the work on the SLP vectorizer is to make it fast
> and
> +flexible. It is designed as a library that can be used by other
> passes.
> +
> +The SLP vectorizer is in early development stages but can already
> vectorize
> +and accelerate many programs in the LLVM test suite.
> +
> +=======================   ============
> +Benchmark Name              Gain
> +=======================   ============
> +Misc/flops-7               -32.70%
> +Misc/matmul_f64_4x4        -23.23%
> +Olden/power                -21.45%
> +Misc/flops-4               -14.90%
> +ASC_Sequoia/AMGmk          -13.85%
> +TSVC/LoopRerolling-flt     -11.76%
> +Misc/flops-6               -9.70%
> +Misc/flops-5               -8.54%
> +Misc/flops                 -8.12%
> +TSVC/NodeSplitting-dbl     -6.96%
> +Misc-C++/sphereflake       -6.74%
> +Ptrdist/yacr2              -6.31%
> +=======================   ============
> +

This is great! We should probably change the Clang flags around sooner rather than later to avoid confusing the users. Currently -fslp-vectorize == bb-vectorize, but should probably map to this pass by default instead. Maybe -fslp-vectorize-aggressive for bb-vectorize?

Thanks again,
Hal

> 
> 
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
> 



More information about the llvm-commits mailing list