這節我們學習一個矩陣相乘的例子,矩陣是一個二維的4X4數組。計算時,16個數位同時計算,每個數位都進行四次乘法和四次加法的運算。
其實我們不難發現矩陣乘法其實就是行列式的點乘計算。在OpenCL裡内置有dot運算符,通過這個運算符我們可以減少每一數位的運算次數,把四次乘法和四次加法合并成一次點乘計算。當然,我們必須把之前的int類型先轉變成float數據類型,另外把之前B的數組先轉置。下面我們來看代碼。
matrix_mult.cl源碼
main.cpp源碼:
運算結果:
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!