Changes between Version 40 and Version 41 of OpenCL_Memo
- Timestamp:
- Dec 12, 2011 10:50:58 PM (13 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
OpenCL_Memo
v40 v41 1 1 = OpenCL Notes = 2 2 == Disable auto vectorization == 3 In the section 6.7.2 (187 page) in the OpenCL Specification Version: 1.1 (Revision: 33), "__attribute__((vec_type_hint(<typen>))" is described. This hint controls the autovectorizer in the compiler for OpenCL C. I tested this feature by dumping the assembly code for a kernel targeted for AVX instructions with Intel SDK (version 1.5).3 In the section 6.7.2 (187 page) in the OpenCL Specification Version: 1.1 (Revision: 33), "__attribute__((vec_type_hint(<typen>))" is described. This hint controls the autovectorizer in the compiler for OpenCL C. I tested this feature by dumping the assembly code for a kernel (using "float8" ) targeted for AVX instructions with Intel SDK (version 1.5). 4 4 5 || || lines||6 || no hint || 1567||7 || with the hint || 333 || 5 || attribute || lines || comment || 6 || no hint || 1567 || vectorized (inner-loop is further unrolled) || 7 || with the hint || 333 || simple translation of the input kernel || 8 8 9 This hint amazingly reduces the size of the generated kernel code. 10 Still working... 9 This hint amazingly reduces the size of the generated assembly code. 10 Without this attribute, the generated code includes two functions: (1) the code without unrolling and (2) the code over unrolled. 11 Due to this, the generated assembly file is large but we don't know which code is really used. 11 12 12 13 == How to use "ioc" command equipped with Intel SDK. ==