在操作系统上安装OpenCL:
-
Windows系统:
- 打开命令提示符,输入以下命令:
mex -DCL_VERSION=1.2. -I"C:\Program Files\nvcc\nvcc.3.1-gcc-6.3.4\bin" -I"C:\Program Files\nvcc\nvcc.3.1-gcc-6.3.4\include\include\NVIDIA\include -DUSE_CUBEMM -DUSE bodily -DUSE_MKL -DUSEguidetk -DUSEUSEOpenCL -DUSEUSE/opencl -DUSEUSEopencl --output="C:/path/your/file.c" -o yourfile.c "matrix_mult.c" - 点击运行,运行编译器,得到编译好的二进制文件。
- 打开编译好的二进制文件,执行以下命令:
cd /path/to/your/path ./matrix_mult
- 打开命令提示符,输入以下命令:
-
Mac系统:
- 使用
-m x86_64选项:mex -DCL_VERSION=1.2. -I"C:\Program Files\nvcc\nvcc.3.1-gcc-6.3.4\bin" -I"C:\Program Files\nvcc\nvcc.3.1-gcc-6.3.4\include\include\NVIDIA\include -DUSE_CUBEMM -DUSE bodily -DUSE_MKL -DUSEguidetk -DUSEUSEOpenCL -DUSEUSE/opencl -DUSEUSEopencl -DUSEUSEopencl --output="C:/path/your/file.c" -o yourfile.c "matrix_mult.c"
- 使用
-
Linux系统:
- 使用
-m &&选项:mex -DCL_VERSION=1.2. -m && -I"C:/Program Files/nvcc/nvcc.3.1-gcc-6.3.4/bin" -I"C:/Program Files/nvcc/nvcc.3.1-gcc-6.3.4/include/NVIDIA/Include -DUSE_CUBEMM -DUSE_BODILY -DUSE_MKL -DUSE_GUIDETK -DUSEUSEOpenCL -DUSEUSE/opencl -DUSEUSEopencl -DUSEUSEopencl -DUSEUSEopencl --output="C:/path/your/file.c" -o yourfile.c "matrix_mult.c"
- 使用
配置OpenCL环境
在安装后,需要为OpenCL环境配置:
-
创建一个OpenCL项目:
- 打开终端,输入以下命令创建一个空项目:
clinit -v - 系统会提示你是否接受许可,通常默认是接受的。
- 打开终端,输入以下命令创建一个空项目:
-
设置OpenCL路径:
- 在项目文件夹中,创建一个文件
config.json:{ "version": "1.2.", "USE_CUBEMM": true, "USE_BODILY": true, "USE_MKL": true, "USE_GUIDETK": true, "USEOpenCL": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USEUSE": true, "USE
- 在项目文件夹中,创建一个文件




