【发布时间】:2021-11-18 15:18:49
【问题描述】:
我正在尝试使用 ILGPU 来处理我的 GPU 上的 CUDA。
当我尝试加载 内核 并向其传递一些数据时:
var krnl = gpu.LoadAutoGroupedStreamKernel<Index1, ArrayView<byte>, int[]>(krnCopyStringToCard);
我收到以下错误,这确实令人困惑:
类型 'int[]' 必须是不可为空的值类型才能将其用作参数...
查看 nullable 文档(对我来说是新的),int can 似乎是 nullable 但前提是您如此声明.我绝对不会那样做,那有什么用呢?
【问题讨论】:
-
您想要解释错误,还是想要修复实际问题?如果是后者,则需要提供相关代码
-
我理解解释后的错误。不幸的是,除非您可以帮助解决以下问题,即我无法复制数组(通过一次传输 1 个字节/int/等找到了一种解决方法——尽管这似乎非常低效),我拥有所有我现在需要!谢谢。
标签: c# integer nullable nullable-reference-types