【问题标题】:CUDAfying a struct that is a dependent of a class?CUDAfing 一个依赖于类的结构?
【发布时间】:2016-02-26 13:11:25
【问题描述】:

我有一个要进行 CUDAfied 的结构“DDReal”,它依赖于一个类“Base”,该类具有要 CUDAfied 的静态方法 - 两者都在同一个项目的单独文件中。它们被编译成一个 DLL 程序集,由发生 CUDAfying 的主程序调用。

在主程序中,如果我这样做:

 var km = ...Cudafy(typeof(Base));

编译成功。

但是如果我做 var

  var km = ...Cudafy(typeof(Base), typeof(DDReal));

由于 DDReal 在 Base 之前被翻译,导致编译器错误(由 .cu 文件证明)。

'Base' 需要先翻译'DDReal'。

我是否可以强制执行此操作,以便类“Base”的静态方法的 C 定义出现在生成的 CUDAFYSOURCTEMP.cu 文件中结构“DDReal”的定义之前?

【问题讨论】:

  • 我正在回答我自己的问题!

标签: c# cudafy.net


【解决方案1】:

唉,Cudafy 不适合这种情况:Cudafy 将所有结构定义放在输出源代码 .cu 文件中的类方法原型声明之前。

所以我修改了 Cudafy 源代码以解决我的问题。我在属性“Cudafy”的类中添加了一个 2 参数构造函数,这样第二个参数可以指定默认行为或类方法的预结构原型声明。所有 Cudafy 的单元测试和示例都检查了 OK 以及我自己的单元测试。

如果有人感兴趣,我可以将源码+DLL上传到github。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-10
    • 1970-01-01
    • 1970-01-01
    • 2012-08-11
    • 2023-03-21
    • 2012-03-19
    • 2016-07-18
    • 1970-01-01
    相关资源
    最近更新 更多