多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國(guó)內(nèi)最全I(xiàn)T社區(qū)平臺(tái) 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁(yè) > php框架 > 框架設(shè)計(jì) > OpenCL之矩陣乘法實(shí)現(xiàn)

OpenCL之矩陣乘法實(shí)現(xiàn)

來(lái)源:程序員人生   發(fā)布時(shí)間:2015-05-27 08:07:17 閱讀次數(shù):6789次

  • kernel
  • 配置
  • 效果

kernel

在opencl中,1般最優(yōu)價(jià)值的就是kernel,前面寫(xiě)的配置文件基本沒(méi)有很大的差別,主要是kernel寫(xiě)法上。其中矩陣運(yùn)算又是最能體現(xiàn)opencl價(jià)值的地方。先上寫(xiě)的kernel:

__kernel void matrix_mult( const int Ndim, const int Mdim, const int Pdim, __global const float* A, __global const float* B, __global float* C) { int i = get_global_id(0); int j = get_global_id(1); int k; float tmp; if ((i < Ndim) && (j < Mdim)) { tmp = 0.0; for (k = 0; k < Pdim; k++) tmp += A[i*Pdim + k] * B[k*Mdim + j]; C[i*Mdim + j] = tmp; } }

上面的配置文件看起來(lái)簡(jiǎn)單其實(shí)已包括了兩方面的并行,首先是里面的乘法,這里是對(duì)所有的乘法可以進(jìn)行并行。如果是M×P,P×N的矩陣,那末最多可以進(jìn)行:M×N×P次乘法,如果沒(méi)有超過(guò)GPU里面流媒體的處理器個(gè)數(shù)的話那末就能夠同時(shí)履行,否者也只能滿負(fù)荷運(yùn)行。接著計(jì)算完這個(gè)以后就是加法的并行操作。用if是避免越界。

配置

在這里要特別說(shuō)明的就是我們?cè)趥鲾?shù)據(jù)給從機(jī)的時(shí)候我們是傳的1維數(shù)組,再通過(guò)傳矩陣的維度來(lái)還原回2維數(shù)組。

配置文件的說(shuō)明可以參考我之前的博客:請(qǐng)點(diǎn)擊!
直接貼代碼:

#include <CL/cl.h> #include <stdio.h> #include <stdlib.h> #include <time.h> #include <iostream> #include <fstream> using namespace std; #define NWITEMS 6 #pragma comment (lib,"OpenCL.lib") //把文本文件讀入1個(gè) string 中 int convertToString(const char *filename, std::string& s) { size_t size; char* str; std::fstream f(filename, (std::fstream::in | std::fstream::binary)); if (f.is_open()) { size_t fileSize; f.seekg(0, std::fstream::end); size = fileSize = (size_t)f.tellg(); f.seekg(0, std::fstream::beg); str = new char[size + 1]; if (!str) { f.close(); return NULL; } f.read(str, fileSize); f.close(); str[size] = ' 主站蜘蛛池模板: 亚洲国产精品综合久久一线 | 91精品国产综合久久久久久 | 亚洲精品在线视频观看 | avtt天堂网 手机资源 | 中文字幕国产欧美 | 免费网址在线观看 | 亚洲区小说区图片区qvod | 成人精品视频一区二区三区 | 亚洲激情小视频 | 国产精品久久一区二区三区 | 欧美一区二区三区精品 | 亚洲视频在线视频 | 最新中文字幕在线观看 | free性video另类重口 | 国产欧美成人免费观看视频 | 久久国产三级 | 国产成人精品日本亚洲网站 | 国产成人三级经典中文 | 久久www成人看片 | 免费日本毛片 | 一级白嫩美女毛片免费 | 一级做a爰片久久毛片欧美 一级做a爰片久久毛片人呢 | 91精品免费在线观看 | 国产女人在线 | 欧美a色| 九九福利影院 | 77777亚洲午夜久久多人 | 欧美成人毛片一级在线 | 国产高清在线精品一区在线 | 国产成人精品天堂 | 中文字幕免费在线看 | 国产一级淫片a免费播放口欧美 | 亚洲精品一区最新 | 国内交换一区二区三区 | 亚洲产国偷v产偷v自拍涩爱 | 日韩成人精品日本亚洲 | 鸡毛片| 伊人俺去久久涩五月综合 | 波多野结衣一区二区三区88 | 亚洲欧美综合另类图片小说区 | 九色 在线|