yum-mirror/slang

Making it easier to work with shaders

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

Harsh Aggarwal (NVIDIA)Updated support to enable batch3 (#8219)e0c20a076

master
817 B25 linesraw
1//TEST(compute, vulkan):COMPARE_COMPUTE_EX:-vk -compute -shaderobj -output-using-type
2//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -shaderobj -output-using-type
3//TEST(compute):COMPARE_COMPUTE_EX:-slang -compute -shaderobj -output-using-type -cuda
4
5//TEST_INPUT:ubuffer(data=[0 0 0 0], stride=4):out,name=outputBuffer
6RWStructuredBuffer<float> outputBuffer;
7
8[BackwardDifferentiable]
9float diffDeterminant(float2x2 x)
10{
11    return determinant(x);
12}
13
14[numthreads(1, 1, 1)]
15void computeMain(uint3 dispatchThreadID: SV_DispatchThreadID)
16{
17    {
18        var dpx = diffPair(float2x2(1.0, 2.0, 3.0, 4.0));
19        __bwd_diff(diffDeterminant)(dpx, 1.0);
20        outputBuffer[0] = dpx.d[0][0];
21        outputBuffer[1] = dpx.d[0][1];
22        outputBuffer[2] = dpx.d[1][0];
23        outputBuffer[3] = dpx.d[1][1];
24    }
25}