Previous | Next --- Slide 23 of 79
Back to Lecture Thumbnails
bob_sacamano

Are there any other situations apart from independent loop iterations that can benefit significantly with SIMD?

EggyLv999

Although this is a fictitious data-parallel language, what are some compilers that are actually capable of compiling code in this way?

cuiwei

Seems Intel C++ Compilers are smart enough to analyze your loops and try to do vectorization whenever possible, if you compile with the default optimization or higher. You can read this article:

https://software.intel.com/sites/default/files/m/4/8/8/2/a/31848-CompilerAutovectorizationGuide.pdf

tcm

Also, stay tuned for tomorrow's lecture. :-)

BBB

Not exactly a compiler, but related. High-level synthesis tools, such as Vivado HLS, which generate hardware designs from C/C++ code allow designers to unroll loops through pragmas. Unrolling the loop allows the generated hardware to work through separate iterations in parallel.