Вопрос

Я начал использовать DirectX 11 Compute Shader Технология для программирования GP-GPU. Я написал довольно сложную программу на HLSL, и когда я хотел отладить ее, я понял, что Пиксель Утилита от DX SDK August 2009 не поддерживает Compute Shaders ... Я знаю, что Nvidia собирается выпустить Nexus Для Visual Studio, которая будет поддерживать прямую вычислительную отладку, но только на следующем поколении графических процессоров NVIDIA, которые еще не выпущены :( Compute Shader Technology выглядит очень многообещающе, из -за независимости устройства, но ее было бы очень сложно использовать без отладки. поддерживать.

Знаете ли вы какие -либо инструменты или подходы, которые можно использовать для вычислительной отладки шейдеров, доступных сейчас или запланированных для выпуска в ближайшем будущем?

Это было полезно?

Решение

Я жду Nvidia nexus стать широко доступным. Возможно, Microsoft могла бы придумать что -то, что работает с эталонным Rasterizer, но я бы сказал, что важно получить жесткую интеграцию с аппаратным обеспечением: в таком случае только поставщики могут предоставить необходимые инструменты.

Кто -то может знать, планирует ли AMD добавить поддержку для вычислительных шейдеров в Графический процессор Perfstudio.

Другие советы

Эффективный способ разработки и отладки комплекса HLSL Compute Shader - составить его с C ++. После того, как вы достигли, что вы можете использовать свои функции отладки IDE, которые вы обычно используете с C ++, например, памятью и поиск переменных и т. Д. Ниже приведены подтверждение концептуального демонстрационного проекта, показывающего, как отладить образец DirectX HLSL Compute Shader:

https://github.com/cezbloch/shaderator

После того, как ваш код работает, и исправить, вы выполняете его на графическом процессоре - версия C ++ предназначена только для помощи в разработке.

Извините, но на этот вопрос нет тривиального ответа на этот вопрос.

Может быть, попытаться зарегистрироваться в бета -программу NVIDIA Nexus:http://supportcenteronline.com/ics/support/default.asp?deptid=4639

Где ты читал Nexus Нужен графический процессор на основе Ферми? Я думал, что требования, в которых рабочая станция, способная SLI, с 2 Recents Nvidia GPU, или 2 рабочих станциями на основе NVIDIA (а затем отладки целевыми удаленно).

К сожалению, отладка вычислительных шейдеров очень похожа на отладку вершин и пиксельных шейдеров ... Лучшим способом, который я обнаружил, является выполнение небольших изменений и значений выходных тестов во временном ресурсе текстуры. Затем вы можете представить ресурс текстуры на экране вашего приложения (или даже сохранено в файле) и использовать его для извлечения информации о том, что происходит в шейдере.

Это действительно ужасная ситуация, но именно так ситуация с инструментами сейчас ...

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top