asp.net核心应用程序中的CUDA / OpenCL加速

时间:2017-03-02 14:44:19

标签: asp.net asp.net-core opencl cudafy.net

我开发了一个asp.net核心1.1应用程序,它可以进行一些非常密集的数据处理。我想:

  1. GPU加速数据处理(最好是opencl over cuda,因为我的开发笔记本电脑没有nvidia gpu,但这不是一个显示停止)
  2. 将数据处理卸载到另一台服务器,以免Web服务器陷入困境。
  3. 坚持使用C#语言,尽可能避免使用C ++ / C.
  4. 在linux box / VMs上运行所有内容
  5. 执行分析所需的所有数据都存储在PostgreSQL数据库中(我使用npgsql来访问它),但计算结果保存在内存中。应用程序输出动态创建的切片作为Bing地图图层添加,因此如果我执行#2(卸载数据处理),它还需要处理切片的Web请求,因为我希望该部分也是GPU加速的。 / p>

    是否有建议的方向来完成此操作?我查看了Cudafy.Net,但它与.Net Core 1.1(或者我能说的1.0)不兼容。所以我认为使用Mono的linux上的asp.net可能是最好的行动方案吗?我真的不知道......我只是一个程序员的黑客。

    更新

    第1项和第3项是可能的。创建一个面向.NET Framework的ASP.NET核心Web应用程序,并通过NuGet添加Cudafy.NET。安装您选择的CUDA / OpenCL驱动程序。

    使用AMD APP SDK 3.0在Ubuntu VM上成功运行OpenCL测试时,上半部分是可能的。然而,后半部分存在问题,因为从VM访问GPU似乎非常困难(需要PCI-Passthrough)。当没有GPU可用时,AMD驱动程序使用CPU,所以至少我有CPU加速。我想当我弄清楚如何做第2项时,我最好不要尝试虚拟化GPU加速的应用程序。

0 个答案:

没有答案