Presentation is loading. Please wait.

Presentation is loading. Please wait.

Compilation Techniques for Multimedia Processors Andreas Krall and Sylvain Lelait Technische Universitat Wien.

Similar presentations


Presentation on theme: "Compilation Techniques for Multimedia Processors Andreas Krall and Sylvain Lelait Technische Universitat Wien."— Presentation transcript:

1 Compilation Techniques for Multimedia Processors Andreas Krall and Sylvain Lelait Technische Universitat Wien

2 Motivation High processing power needed by multimedia applications Special instruction sets for multimedia data Implemented by special processors Multimedia instruction set extensions Visual instruction set(VIS) of UltraSPARC Altivec extension of PowerPC MMX extension of Pentium MAX-2 instruction set of HP PA-RISC

3 Problems and Solutions New functionality has not been exploited properly Have to code in assembly language Use provided system libraries Call macros in high-level language Compile a program coded in high-level language into multimedia instructions Classic vectorization Vectorization by loop unrolling

4 Classic Vectorization Loop analysis Loop normalization Scalar expansion Dependence analysis Vectorization Alignment management Strip mining Constant expansion Lower iteration space Lower alignment Instruction selection and register allocation

5 Classic Vectorization Loop analysis Loop normalization Scalar expansion Dependence analysis Vectorization Alignment management Strip mining Constant expansion Lower iteration space Lower alignment Instruction selection and register allocation

6 Classic Vectorization Loop analysis Loop normalization Scalar expansion Dependence analysis Vectorization Alignment management Strip mining Constant expansion Lower iteration space Lower alignment Instruction selection and register allocation

7 Classic Vectorization Loop analysis Loop normalization Scalar expansion Dependence analysis Vectorization Alignment management Strip mining Constant expansion Lower iteration space Lower alignment Instruction selection and register allocation

8 Vectorization by Loop Unrolling Loop analysis Compute unrolling degree Loop unrolling Dependence analysis Dependence verification Generation of vector instructions Alignment management Lower iteration space Lower alignment Instruction selection and register allocation

9 Vectorization by Loop Unrolling Loop analysis Compute unrolling degree Loop unrolling Dependence analysis Dependence verification Generation of vector instructions Alignment management Lower iteration space Lower alignment Instruction selection and register allocation

10 Vectorization by Loop Unrolling Loop analysis Compute unrolling degree Loop unrolling Dependence analysis Dependence verification Generation of vector instructions Alignment management Lower iteration space Lower alignment Instruction selection and register allocation

11 Experimental Results


Download ppt "Compilation Techniques for Multimedia Processors Andreas Krall and Sylvain Lelait Technische Universitat Wien."

Similar presentations


Ads by Google