VB.NET 中的 ILGPU 基本内存缓冲区分配

ILGPU in VB.NET basic memory buffer allocation

我正在尝试让 ILGPU 与 VB.NET 一起工作,但即使使用教程中的基本变量声明我也很吃力。

这是内存缓冲区的 C# 声明。这很简单。

 // Gets array of 1000 doubles on host.
 double[] doubles = new double[1000];
 // Gets MemoryBuffer on device with same size and contents as doubles.
 MemoryBuffer<double> doublesOnDevice = accelerator.Allocate<double>(doubles);

在 VB.NET 我有以下内容:

 Dim context As New ILGPU.Context
 Dim accel As ILGPU.Runtime.Accelerator = New CPUAccelerator(context)
 Dim dataArray As Double() = {0, 1, 2, 4, 5, 6, 7, 8, 9}
 Dim dataArrayDevice = accel.Allocate(Of Double)(dataArray)

我在最后一行收到一条错误消息,提示“是不受支持的类型”。 我试过这样拆分它:

Dim dataArrayDevice As MemoryBuffer(Of Double)
dataArrayDevice = accel.Allocate(Of Double, dataArray)

但这并没有帮助。我在“double”的第一行收到错误,还说“不支持的类型”

有没有人有关于如何在 ILGPU 中使用 VB.NET 分配缓冲区的基本示例?

谢谢

PS: 我已将项目设置为 x64

经过更多阅读,我得出的结论是 ILGPU 与 VB.NET 不兼容。

我的问题的解决方案是在我的 VB 项目中添加一个 c# 库,我只处理 ILGPU。

我确认 ILGPU 与 VB.NET 不兼容。您需要编写一个使用 ILGPU 的 C# 项目并在您的 VB 项目中引用 C# 项目。

您还可以使用该项目: https://github.com/MPSQUARK/DataScience

它为任何 .NET 语言提供功能。它使用 ILGPU 提供具有各种性能优化的快速即插即用解决方案。然而这是一个WIP。

寻求社区的帮助:

不和谐:https://discord.gg/X6RBCff

网站:https://www.ilgpu.net/