opencl(十)----標量、向量類型的相關運算


OpenCL operators

參考:https://www.khronos.org/registry/OpenCL/sdk/1.0/docs/man/xhtml/

int4 vec = (int4)(1, 2, 3, 4);

vec += 4//每一個元素加上4
vec &= (int4)(-1, -1, 0, -1);  //按位與

vec.s01 = vec.s23 < 7;  // true -1 , false 0

數據傳輸轉換操作

相同類型的數據直接使用"="進行賦值。

// 將標量數組 保存到 向量中
// 函數vload
// vector vloadn(size_t offset, const __(g|c|l|p) scalar *mem)
// offset*向量大小 為在標量數組中的偏置位置
// float array[10]={0,1,2,3,4,5,6,7,8,9} float4 vec = vload4(1, array); // offset 表示vector在array 中的索引,結果4,5,6,7 vec = vload4(0,array); //結果 0 1 2 3 vec = vload(1,array+2); //結果 2 3 4 5

 

// 將向量 保存到 標量數組中
// 函數 vstoren
// void vstoren(vector vec, size_t offset, __(g|l|p) scalar *mem)
// offset*向量大小 為 在 數組中的偏置位置

浮點型計算的相關內置函數

算數運算函數

詳情可以參考:https://www.khronos.org/registry/OpenCL/sdk/1.0/docs/man/xhtml/          OpenCL Compiler--->Built-in Functions--->Math Functions

比較函數

 

 指數和對數運算函數

 

 三角函數

 

 一些常量

 

 其他浮點函數

 

 整型加減函數

 

 整型乘法函數

 

 其他整型函數


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM