Описание тега directcompute

Microsoft DirectCompute - это интерфейс прикладного программирования (API), который поддерживает вычисления общего назначения на графических процессорах в Microsoft Windows Vista, Windows 7 и Windows 8.
1 ответ

Как я могу связать ресурс буфера, который находится на GPU, с ассемблером ввода (IA)?

Я использую вычислительные шейдеры, чтобы вычислить список треугольников и сохранить его в RWStructuredBuffer, Для тестирования я читаю этот буфер и передаю его в IA через context.InputAssembler.SetVertexBuffers (…), Этот подход работает, но действи…
24 ноя '13 в 15:21
2 ответа

Как передать результаты вычисления шейдера в вершинный шейдер без использования буфера вершин?

Прежде чем углубляться в детали, я хочу обрисовать проблему: Я использую RWStructuredBuffers для хранения вывода моих вычислительных шейдеров (CS). Поскольку вершинные и пиксельные шейдеры не могут читать из RWStructuredBuffers, я сопоставляю Struct…
1 ответ

Компилятор HLSL, пропускающий важные утверждения

У меня есть этот вычислительный шейдер, который проходит через двоичное дерево. Он хорошо работал с отдельно установленным DirectX SDK (июнь), с компилятором № 43. Однако в компиляторах № 46 и № 47 (из Windows SDK 8.0 и 8.1 соответственно), по-видим…
02 июн '18 в 13:52
2 ответа

Вычислить шейдер с numthreads (1,1,1) работает очень медленно

Я только начинаю изучать программирование DirectX, используя F# и SharpDX в качестве оболочки.NET. В качестве тестового примера я отображаю множество Мандельброта. Вычисление выполняется с использованием 2 вычислительных шейдеров. Первый шейдер вычи…
08 ноя '13 в 13:47
1 ответ

DirectX 11 - вычислительный шейдер: запись в выходной ресурс

Я только начал использовать этап шейдера Compute в DirectX 11 и столкнулся с некоторым нежелательным поведением при записи в выходной ресурс в шейдере Compute. Кажется, я получаю только нули в качестве вывода, что, насколько я понимаю, означает, что…
0 ответов

"D3D12 ОШИБКА: ID3D12Device::CreateComputePipelineState: корневая подпись не соответствует Compute Shader..." где ошибка в моем коде?

Полная ошибка в выводе отладки: "ОШИБКА D3D12: ID3D12Device::CreateComputePipelineState: корневая подпись не соответствует Compute Shader: диапазон дескриптора SRV шейдера (RegisterSpace=0, NumDescriptors=1, BaseShaderRegister=0) не полностью связан…
05 фев '19 в 22:33
1 ответ

Можно ли записать в выровненный по 4 байта адрес с помощью вычислительного шейдера HLSL?

Я пытаюсь преобразовать существующее ядро ​​OpenCL в вычислительный шейдер HLSL. Ядро OpenCL производит выборку каждого пикселя в RGBA-текстуре и записывает каждый цветовой канал в плотно упакованный массив. Так что в основном мне нужно написать в п…
1 ответ

Как развернуть эту рекурсивную функцию в цикл?

Я пишу простой трассировщик диффузного пути в DirectCompute для образования. DirectCompute не допускает рекурсивные функции, поэтому мне нужно выяснить, как превратить этот рекурсивный оператор в цикл: intersectCode() { // ... intersection code if(h…
31 май '12 в 21:06
1 ответ

Unity Compute Shader, индексирование массива через SV_DispatchThreadID

У меня проблема с индексацией массива на GPU в Compute Shader, и я застрял с ней на несколько недель. Я пытаюсь использовать значение x SV_DispatchThreadID в качестве индекса моего массива частиц (как это показано в некоторых примерах в Интернете). …
3 ответа

DirectCompute информация

Я пытался использовать графический процессор как часть моего проекта. Я изучал как CUDA, так и OpenCL, но отсутствие информации, показывающей, как внедрить их в проект, просто шокирует. Даже их специализированные форумы мертвы. Итак, теперь я смотрю…
03 мар '12 в 20:44
1 ответ

Понимание ошибки "индекс массива сэмплера должен быть буквальным выражением" в ComputeShaders

Допустим, у меня есть вычислительный шейдер, который извлекает данные из Texture2DArray с использованием идентификатора группы следующим образом: Texture2DArray<float4> gTextureArray[2]; [numthreads(32, 1, 1)] void Kernel(uint3 GroupID : SV_Gr…
24 апр '14 в 20:37
1 ответ

Ошибка компиляции при попытке доступа к StructuredBuffer

Я хочу получить доступ к StructuredBuffer<int>в вычислительном шейдере, но я получаю ошибку: Ошибка шейдера в Particle.compute: массив, матрица, вектор или индексируемый тип объекта, ожидаемый в выражении индекса в Particle.compute(28) (на d3d…
05 июн '17 в 17:59
1 ответ

Использование HLSL для невидимого напряжения видеокарты - Как увеличить нагрузку на память?

Я разработал немного невидимый (читай: не производит никакого визуального вывода) стрессор, чтобы проверить возможности моей видеокарты (и как исследование DirectCompute в целом, с которым я довольно новичок). У меня сейчас есть следующий код, котор…
27 сен '12 в 17:08
2 ответа

DirectX на геометрии WPF

У меня просто вопрос: мне нужно нарисовать некоторые геометрии WPF на холсте, и поверхность каждой геометрии - сложная Texture2D в Direct3D 11. Я использую SharpDX и просто конвертирую Texture2D в MemoryStream, а затем преобразую в WPF ImageSource, …
08 янв '14 в 06:39
1 ответ

Сверточный фильтр выводит неправильные значения цвета

Я только начал изучать DirectCompute и для целей обучения хочу создать простой свёрточный фильтр, который размывает текстуру. Я написал следующий вычислительный шейдер для размытия текстуры: Texture2D<float4> inputTex; RWTexture2D<float4&gt…
1 ответ

DirectCompute шейдерный ввод / вывод данных

Я учусь DirectCompute, и я застрял с StructuredBufferes. Дело в том, что я узнал, что для подачи данных в шейдер мне нужно использовать View - SRV или UAV, в зависимости от того, чего я пытаюсь достичь. Но примеры кода с сайта Microsoft не объясняют…
16 сен '15 в 16:15
5 ответов

OpenCL против DirectCompute?

Я ищу сравнения между OpenCL и DirectCompute, но ничего не нашел. Преимущества OpenCL в кроссплатформенности и наличии более широкого спектра поддерживаемых графических процессоров для меня не имеют значения. Я в порядке с кодированием на Windows то…
03 июл '10 в 17:16
1 ответ

Почему рассылки начались последовательно, занимают разное время?

У меня есть эта программа: for (int i = 0; i < STEPS; ++i) { context->CSSetShader(computeShader, NULL, 0); ID3D11UnorderedAccessView *aUAViews[1] = {bufferOut_UAV}; context->CSSetUnorderedAccessViews(0, 1, aUAViews, NULL); context->Dispa…
15 апр '13 в 15:39
0 ответов

DirectCompute из фона C

Заинтересованы в разработке алгоритма анализа изображений. Будучи новичком в вычислениях на GPU, я был много лет назад исследователем физики, который использовал программирование на C, работая только на алгоритме, а не на стороне GUI, используя прос…
24 июл '16 в 16:53
3 ответа

DirectCompute против OpenCL для программирования на GPU?

У меня есть некоторые (финансовые) задачи, которые должны хорошо соответствовать вычислениям на GPU, но я не совсем уверен, стоит ли мне использовать OpenCL или DirectCompute. Я занимался на GPU, но это было очень давно (3 года). Я сделал это через …
26 май '10 в 17:34