2016-07-13 1 views
1

FWIW, это гипотетично, так как у меня на самом деле нет конкретного бинарного генератора шейдеров GCN. Я работаю над чем-то, связанным с этим, но я понимаю, что у меня в голове много идей, которые туманны и неопределенны, поэтому я возвращаюсь к основам и пытаюсь исправить любые заблуждения, которые у меня могут быть.Если у меня есть реальный двоичный файл шейдера GCN, какой процесс я могу пройти, чтобы заставить совместимый AMD GPU запустить его?

Предположим, что у меня был такой двоичный файл, что я хотел, чтобы мой графический процессор работал (скажем, я хочу сделать это на C#), какие шаги мне нужно пройти/есть там особенно поучительные/соответствующие примеры там GitHub?

Второй вопрос; предположим, что у меня есть бинарник directX, который я успешно выполняю как вычислительный шейдер на моем графическом процессоре AMD ... есть ли способ получить бинарный файл GCN, в который скомпилирован двоичный файл directX?

+0

Вот презентация того, кто это делает. удачи, я рад, что могу подавать свои GCN isa непосредственно на PS4 и Xbox One, это не так жизнеспособно на ПК для реального приложения ^^: https://onedrive.live.com/view.aspx?resid = EBE7DEDA70D06DA0! 107 и приложение = PowerPoint & authkey! = AD-O3oq3Ung7pzk – galop1n

ответ

0

Пять месяцев поздно, но, возможно, это может помочь. Этот проект делает то, что вы хотите, и находится в C#: https://www.codeproject.com/Articles/872477/Assembler-for-AMD-s-GCN-GPU

Что делает этот проект, он занимает пустое ядро ​​и затем свопирует в альтернативные двоичные байты, а затем запускает его. Этот проект ...

1) принимает GCN сборка затем преобразует его в массив байтов (не нужна эта часть)

2) принимает этот массив байтов, а затем исправляет его в

3) запускает двоичный код

Возможно, вы, возможно, измените проект, так как вам не нужна часть ASU GPU.

Для второго вопроса о преобразовании двоичного кода DirectX для графического процессора AMD в исходный источник GCN, который должен быть возможен. Вам просто нужно выяснить, где фактическое начало кода GCN. Я думаю, что есть шаблон, который вы можете искать, например, над проектом, который вы используете. После того, как вы найдете начало, вам нужно найти дизассемблер, чтобы преобразовать его в видимую сборку ... или вы можете сделать это болезненным способом и использовать руководство AMD GCN ISA для поиска битовых шаблонов. Надеюсь, это поможет.

Смежные вопросы