yum-mirror/slang

Making it easier to work with shaders

git clone https://git.yummers.dev/yum-mirror/slang

James Helferty (NVIDIA)render-test: Change D3D12 default to sm_6_5 (#8320)f02b08490

master
1.3 KiB34 linesraw
1//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=BUF):-dx12 -compute -output-using-type
2//TEST(compute, vulkan):COMPARE_COMPUTE_EX(filecheck-buffer=BUF):-vk -compute -output-using-type
3//TEST(compute, vulkan):COMPARE_COMPUTE_EX(filecheck-buffer=BUF):-vk -compute -output-using-type -emit-spirv-directly
4//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=BUF):-cuda -compute -output-using-type
5
6//TEST_INPUT:ubuffer(data=[0 0 0 0 0], stride=4):out,name=outputBuffer
7RWStructuredBuffer<float> outputBuffer;
8
9// To check that our counter-initialization works correctly, set the initial
10// counter to 6 instead of 8, so we'll start reading from 6.0 downwards
11//TEST_INPUT:set consumeBuffer = ubuffer(data=[1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0], stride=4, counter=6)
12ConsumeStructuredBuffer<float> consumeBuffer;
13
14[numthreads(4, 1, 1)]
15void computeMain(uint i : SV_GroupIndex)
16{
17    uint size, stride;
18    consumeBuffer.GetDimensions(size, stride);
19
20    if(i == 0)
21        outputBuffer[0] = size;
22
23    outputBuffer[i+1] = consumeBuffer.Consume();
24
25    // BUF: type: float
26    // The total size of the ConsumeStructuredBuffer (from GetDimensions)
27    // BUF: 8.0
28
29    // The values from consumeBuffer in any order
30    // BUF-DAG: 6.0
31    // BUF-DAG: 4.0
32    // BUF-DAG: 5.0
33    // BUF-DAG: 3.0
34}