Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如果我有有效的GCN着色器二进制文件,我可以通过什么过程使我的兼容AMD GPU运行它?_C#_Directx_Amd Gpu - Fatal编程技术网

C# 如果我有有效的GCN着色器二进制文件,我可以通过什么过程使我的兼容AMD GPU运行它?

C# 如果我有有效的GCN着色器二进制文件,我可以通过什么过程使我的兼容AMD GPU运行它?,c#,directx,amd-gpu,C#,Directx,Amd Gpu,FWIW,这是假设的,因为实际上我还没有运行特定的GCN计算着色器二进制文件。我正在做一些与此相关的事情,但我意识到我脑子里有很多模糊和不确定的想法,所以我要回到基础上来,试图修正我可能有的任何误解 因此,假设我确实有一个二进制文件,我希望我的GPU能够运行(假设我想在C#中运行),那么我需要执行哪些步骤/github中是否有特别有启发性/相关的示例 第二个问题;假设我有一个directX二进制文件,我正在AMD GPU上作为计算着色器成功运行。。。有什么方法可以得到directX二进制文件正在

FWIW,这是假设的,因为实际上我还没有运行特定的GCN计算着色器二进制文件。我正在做一些与此相关的事情,但我意识到我脑子里有很多模糊和不确定的想法,所以我要回到基础上来,试图修正我可能有的任何误解

因此,假设我确实有一个二进制文件,我希望我的GPU能够运行(假设我想在C#中运行),那么我需要执行哪些步骤/github中是否有特别有启发性/相关的示例


第二个问题;假设我有一个directX二进制文件,我正在AMD GPU上作为计算着色器成功运行。。。有什么方法可以得到directX二进制文件正在编译成的GCN二进制文件吗?

五个月后,但这可能会有所帮助。这个项目做你想做的,并且是C#:

这个项目所做的是,它获取一个空内核,然后交换备用二进制字节,然后运行它。 这个项目

1) 获取GCN程序集,然后将其转换为字节数组(您不需要此部件)

2) 获取该字节数组,然后将其修补

3) 运行二进制文件

您可能会修改项目,因为您不需要GPU asm部件

关于将AMD GPU的DirectX二进制文件转换为原始GCN源文件的第二个问题,这应该是可能的。您只需要找出GCN代码的实际起始位置。我认为有一个模式,你可以寻找像上面的项目使用。找到起点后,需要找到反汇编程序将其转换为可视部件。。。或者,您也可以用痛苦的方式,使用AMD GCN ISA手册查找位模式。
希望这有帮助。

晚了五个月,但这可能会有所帮助。这个项目做你想做的,并且是C#:

这个项目所做的是,它获取一个空内核,然后交换备用二进制字节,然后运行它。 这个项目

1) 获取GCN程序集,然后将其转换为字节数组(您不需要此部件)

2) 获取该字节数组,然后将其修补

3) 运行二进制文件

您可能会修改项目,因为您不需要GPU asm部件

关于将AMD GPU的DirectX二进制文件转换为原始GCN源文件的第二个问题,这应该是可能的。您只需要找出GCN代码的实际起始位置。我认为有一个模式,你可以寻找像上面的项目使用。找到起点后,需要找到反汇编程序将其转换为可视部件。。。或者,您也可以用痛苦的方式,使用AMD GCN ISA手册查找位模式。
希望这能有所帮助。

这里有一个关于某人做这件事的演示。祝你好运,我很高兴能够直接在PS4和Xbox One上提供我的GCN isa,这在PC上对于真正的应用程序来说是不可行的^^:这里是一个演示某人在做这件事。祝你好运,我很高兴能够在PS4和Xbox One上直接提供我的GCN isa,对于真正的应用程序来说,这在PC上是不可行的^: