Comments (11)
[[vk::binding(0,0)]] RWTexture2D<uint64_t> tex[];
[shader("compute")]
[numthreads(1, 1, 1)]
void main()
{
imageAtomicAdd(tex[0], int2(0,0), uint64_t(0));
}
This is a repro for the crash.
It does not happen when the images are not in an array.
This does not cause a crash:
[[vk::binding(0,0)]] RWTexture2D<uint64_t> tex;
[shader("compute")]
[numthreads(1, 1, 1)]
void main()
{
imageAtomicAdd(tex, int2(0,0), uint64_t(0));
}
from slang.
import glsl;
is another (preferred) way to use glsl flavored intrinsics. But we should look into the crash.
from slang.
InterlockedAdd
for 64bit types with images looks to only have a hlsl implementation:
[ForceInline]
void InterlockedAdd(__ref int64_t dest, int64_t value)
{
__target_switch
{
case hlsl: __intrinsic_asm "InterlockedAdd";
}
}
For now the glsl syntax variant of the operation should work as a workaround if only a spir-v/glsl target is needed: imageAtomicAdd
from slang.
How would i use imageAtomicAdd in the example code i have above? I dont understand.
from slang.
I believe the following should work: imageAtomicAdd(tex, ivec2(0,0), uint64_t(0));
from slang.
slang does not recognize imageAromicAdd nor ivec2. Do i need to import a specific module for this to work?
from slang.
the compiler flag -allow-glsl
should enable GLSL syntax to work along-side HLSL syntax
from slang.
slang crashes when i try to use glsl syntax 😨
from slang.
That is not the expected result.
from slang.
This probably should be broken into 2 issues:
1 for the crash
1 for merging glsl.meta<->hlsl.meta image atomic operations
from slang.
I ll make another issue for the crash
from slang.
Related Issues (20)
- Compilation Warnings Related to Uninitialized Struct Fields
- Matrix layout modifiers ignored HOT 1
- Resource variables used in a global initializer function do not hoist correctly
- Error not propagated from failed DXC compile
- `tests\autodiff\reverse-while-loop-3.slang` has incorrect results
- `kIROp_MakeStruct` differentiates when it should not be differentiating
- Uninitialized variable check will infinitely loop if pointer to a specialized IR object is used
- `DifferentialType` `ownedScope` does not track an associated `ContainerDecl`
- Problem with exported matrices in DxcLinker
- Support generic type constraints that are dependent on another generic type parameter.
- Initial precompiled SPIR-V support (-embed-spirv)
- Autodiff Usability: CLI and API methods to extract per-instruction context overhead information HOT 1
- Reflection API: Add features needed for slangpy
- Auto documentation code does not correctly exclude synthesized decl's from documentation
- Support `where` clause for defining generic constraints.
- Implement autodiff support for Tuple types.
- Implement `IFunc` proposal.
- Emit valid WGSL for all compute tests
- `tests\autodiff\generic-jvp.slang` test is incorrect
- Document rules for initializer lists
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from slang.