标签: algorithm opencl fft convolution
我正在尝试使用OpenCL为GPU编写卷积函数。
基准测试表明,GPU的数据加载指令非常昂贵,运行时间与LD指令总数呈线性关系,表明GPU很少或没有缓存。
这导致中小型内核(~48)的卷积效率非常低(约为峰值GFLOPS的1%)。
是否有特定的卷积算法或FFT算法可最大化寄存器中的数据重用(最多可提供64个float4寄存器)并针对内存访问进行了优化?
更新:首选浮点。