cuda 編程可以通過 C/C++ 使用 GPU,使用 cuda 編程首先確保要有 cuda 環境,
但是使用時不能直接操作 gpu 數據,只能得到 gpu 上的一個指針,再把數據拷貝到對應位置。
具體使用
使用 cmake 構建項目可以使用宏
#ifdef USE_CUDA
#endif
添加頭文件
#ifdef USE_CUDA
#include "cuda_runtime.h"
#endif
cudaMalloc 申請 GPU 內存
uint8_t *dst;
cudaMalloc((void **)&dst, bytes);
cudaMemcpy 拷貝
cudaMemcpy(gpu_data, src.data(), bytes, cudaMemcpyHostToDevice);
cudaMemcpyHostToDevice 內存 To 顯存
cudaMemcpyDeviceToHost 顯存 To 內存
cudaMemcpyDeviceToDevice 內存 To 顯存
cudaMemcpyHostToHost 內存 To 內存
cudaFree 釋放 GPU 內存
cudaFree(dst);