我开发了一个asp.net核心1.1应用程序,它可以进行一些非常密集的数据处理。我想:
执行分析所需的所有数据都存储在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加速的应用程序。