C# 将计算偏移到GPU

C# 将计算偏移到GPU,c#,opengl,opentk,gpu,C#,Opengl,Opentk,Gpu,我正在进行大量的计算。每个计算都是相互独立的,换句话说,任务可以并行化,我想把任务转移到GPU上 具体来说,我正在为OpenGL应用程序创建光/影贴图,计算是一系列向量数学、点积、平方根等 我的选择是什么?OpenGL本机是否支持类似的功能,或者我是否应该寻找外部库/模块?计算着色器是CUDA的通用工具,类似于nVidia的增强计算。注意,您不需要使用这两种方法,您可以使用顶点->几何体流进行计算,或者渲染到像素着色器。只要可以将结果表示为一组值(顶点缓冲区或纹理),就可以使用渲染管道进行计算

我正在进行大量的计算。每个计算都是相互独立的,换句话说,任务可以并行化,我想把任务转移到GPU上

具体来说,我正在为OpenGL应用程序创建光/影贴图,计算是一系列向量数学、点积、平方根等


我的选择是什么?OpenGL本机是否支持类似的功能,或者我是否应该寻找外部库/模块?

计算着色器是CUDA的通用工具,类似于nVidia的增强计算。注意,您不需要使用这两种方法,您可以使用顶点->几何体流进行计算,或者渲染到像素着色器。只要可以将结果表示为一组值(顶点缓冲区或纹理),就可以使用渲染管道进行计算

计算着色器是CUDA的通用着色器,它类似于nVidia的增强计算。注意,您不需要使用这两种方法,您可以使用顶点->几何体流进行计算,或者渲染到像素着色器。只要可以将结果表示为一组值(顶点缓冲区或纹理),就可以使用渲染管道进行计算

我不知道OpenGL,但我知道CUDA支持它。您是否针对特定的平台?如果是这样,并且它已启用CUDA,您可能需要查看它。有一些.NET解决方案,这将是一个开始寻找的好地方。它甚至支持到OpenCL的翻译,尽管我从未尝试过。我为Windows和MacOS编写,并且给人的印象是CUDA只使用Nvidia卡。我会查出来的。抱歉搞混了,我说的平台是指视频卡。它确实只适用于Nvidia卡,这就是我提到它的原因。它应该会转换成OpenCL,它可以在所有平台上运行,但我没有尝试过。我不知道OpenGL,但我知道CUDA支持它。您是否针对特定的平台?如果是这样,并且它已启用CUDA,您可能需要查看它。有一些.NET解决方案,这将是一个开始寻找的好地方。它甚至支持到OpenCL的翻译,尽管我从未尝试过。我为Windows和MacOS编写,并且给人的印象是CUDA只使用Nvidia卡。我会查出来的。抱歉搞混了,我说的平台是指视频卡。它确实只适用于Nvidia卡,这就是我提到它的原因。它应该会转化为OpenCL,它可以在所有平台上运行,但我没有尝试过。我整个晚上都在追求这个想法,你是对的,我认为这是一条路。我整个晚上都在追求这个想法,你是对的,我认为这是一条路要走。