techhub.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
A hub primarily for passionate technologists, but everyone is welcome

Administered by:

Server stats:

4.6K
active users

#spirv

0 posts0 participants0 posts today
David Neto<p><span class="h-card" translate="no"><a href="https://mastodon.social/@pervognsen" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>pervognsen</span></a></span> </p><p>We're probably on the same page about formal methods.</p><p>I wanted to point out a cool example I helped with: formalizing the structured control flow rules for SPIR-V.</p><p><a href="https://dl.acm.org/doi/10.1145/3571253" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">dl.acm.org/doi/10.1145/3571253</span><span class="invisible"></span></a></p><p>This was a really nice blend of theory and practice to nail the details on a gnarly bit of the GPU intermediate language we know and love. And in the end the (prose) rules are easier to understand too.</p><p><a href="https://mastodon.gamedev.place/tags/spirv" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>spirv</span></a></p>
David Neto<p>There are now 48 registered SPIR-V generator tools.</p><p>Woohoo.</p><p><a href="https://github.com/KhronosGroup/SPIRV-Headers/blob/main/include/spirv/spir-v.xml#L100" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/KhronosGroup/SPIRV-</span><span class="invisible">Headers/blob/main/include/spirv/spir-v.xml#L100</span></a></p><p><a href="https://mastodon.gamedev.place/tags/spirv" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>spirv</span></a> <a href="https://mastodon.gamedev.place/tags/khronosgroup" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>khronosgroup</span></a></p>
Giuseppe Bilotta<p>I'm getting the material ready for my upcoming <a href="https://fediscience.org/tags/GPGPU" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GPGPU</span></a> course that starts on March. Even though I most probably won't get to it,I also checked my trivial <a href="https://fediscience.org/tags/SYCL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SYCL</span></a> programs. Apparently the 2025.0 version of the <a href="https://fediscience.org/tags/Intel" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Intel</span></a> <a href="https://fediscience.org/tags/OneAPI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OneAPI</span></a> <a href="https://fediscience.org/tags/DPCPP" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>DPCPP</span></a> runtime doesn't like any <a href="https://fediscience.org/tags/OpenCL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OpenCL</span></a> platform except Intel's own (I have two other platforms that support <a href="https://fediscience.org/tags/SPIRV" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SPIRV</span></a>, so why aren't they showing up? From the documentation I can find online this should be sufficient, but apparently it's not&nbsp;…)</p>
Ben Ashbaugh<p>I've been writing quite a few SPIR-V modules by hand for testing lately. It's tolerable, but only barely.</p><p>My primary complaints are:</p><p>1. Verbosity. A test for a single instruction tends to be at least 20 lines and sometimes much more.<br>2. SSA is great for compilers, not so much for humans.<br>3. Getting all of the type declarations and capabilities right is annoying.</p><p>Is there a better way? <a href="https://mastodon.gamedev.place/tags/spirv" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>spirv</span></a></p>
David Neto<p>Vulkan 1.4:</p><p>Glslang, Shaderc, and SPIRV-Tools updates have landed to be able to target Vulkan 1.4.<br>No major changes to Vulkan SPIR-V, so this is mostly about being able to specify Vulkan 1.4 in options lists.</p><p>These will be rolled into the next Vulkan SDK.</p><p><a href="https://mastodon.gamedev.place/tags/vulkan" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>vulkan</span></a> <a href="https://mastodon.gamedev.place/tags/spirv" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>spirv</span></a></p>
Khronos Group<p>Khronos' OpenCL Working Group has issued a Request for Proposal (<a href="https://fosstodon.org/tags/RFP" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>RFP</span></a>) for OpenCL LLVM SPIR-V Backend. The goal of this project is to address and integrate specific functionalities that are currently available in the translator project but missing from the backend. All bids are due December 6, 2024. </p><p>Learn more: <a href="https://www.khronos.org/rfp/khronos-opencl-llvm-spir-v-backend" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">khronos.org/rfp/khronos-opencl</span><span class="invisible">-llvm-spir-v-backend</span></a><br><a href="https://fosstodon.org/tags/LLVM" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>LLVM</span></a> <a href="https://fosstodon.org/tags/SPIRV" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SPIRV</span></a> <a href="https://fosstodon.org/tags/SPIR" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SPIR</span></a></p>
Siebencorgie<p>The rust-gpu project now has two more maintainers. Happy to see the project gaining speed!</p><p>I'm using rust-gpu for most my Vulkan experiments these days. It's one of the enablers of my SDF-compiler toolchain. It lets you define linking points, which in turn allows me to link my SDF generated SPIR-V code into rust-gpu generated SPIR-V modules.</p><p><a href="https://rust-gpu.github.io/blog/2024/11/06/new-maintainers/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">rust-gpu.github.io/blog/2024/1</span><span class="invisible">1/06/new-maintainers/</span></a></p><p><a href="https://mastodon.gamedev.place/tags/gamedev" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>gamedev</span></a> <a href="https://mastodon.gamedev.place/tags/cc" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cc</span></a> <a href="https://mastodon.gamedev.place/tags/compilers" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>compilers</span></a> <a href="https://mastodon.gamedev.place/tags/spirv" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>spirv</span></a> <a href="https://mastodon.gamedev.place/tags/vulkan" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>vulkan</span></a> <a href="https://mastodon.gamedev.place/tags/rustlang" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>rustlang</span></a> <a href="https://mastodon.gamedev.place/tags/rust" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>rust</span></a></p>
Lukas<p>DirectX is adopting SPIR-V 🤯</p><p><a href="https://devblogs.microsoft.com/directx/directx-adopting-spir-v/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">devblogs.microsoft.com/directx</span><span class="invisible">/directx-adopting-spir-v/</span></a></p><p><a href="https://swiss.social/tags/directx" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>directx</span></a> <a href="https://swiss.social/tags/spirv" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>spirv</span></a> <a href="https://swiss.social/tags/khronos" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>khronos</span></a> <a href="https://swiss.social/tags/gamedev" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>gamedev</span></a></p>
alia<p>Finally got <a href="https://sunny.garden/tags/HLSL" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>HLSL</span></a> -&gt; <a href="https://sunny.garden/tags/spirv" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>spirv</span></a> -&gt; running in <a href="https://sunny.garden/tags/bevy" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>bevy</span></a>! Just a simple compute shader for slope/normal/ocean detection at the moment. The spirv inpsector at <a href="https://www.khronos.org/spir/visualizer/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="">khronos.org/spir/visualizer/</span><span class="invisible"></span></a> was a life saver! also, this is the first time ive use the build.rs in <a href="https://sunny.garden/tags/rust" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>rust</span></a> suuuper handy for automatically recompiling the hlsl. Feels like bevy's Dx12 backend might need some love since i had to switch back to vulcan but so happy to have actually got it running.</p>
David Neto<p>I think people get tied up in knots when trying to parse SPIR-V with structured control flow.</p><p>You gotta do it in reverse structured post-order.</p><p>Once you lay out the basic blocks in that order, the nested control constructs map to *intervals* over that list. (:galaxy brain:)</p><p>For details, see Tint's SPIR-V to WGSL translator.</p><p><a href="https://dawn.googlesource.com/dawn/+/refs/heads/main/src/tint/lang/spirv/reader/ast_parser/function.cc#72" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">dawn.googlesource.com/dawn/+/r</span><span class="invisible">efs/heads/main/src/tint/lang/spirv/reader/ast_parser/function.cc#72</span></a></p><p><a href="https://mastodon.gamedev.place/tags/spirv" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>spirv</span></a> <a href="https://mastodon.gamedev.place/tags/vulkan" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>vulkan</span></a> <a href="https://mastodon.gamedev.place/tags/wgsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wgsl</span></a> <a href="https://mastodon.gamedev.place/tags/webgpu" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>webgpu</span></a></p>
David Neto<p><span class="h-card" translate="no"><a href="https://fosstodon.org/@ypujante" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>ypujante</span></a></span> <br>(And, those would be one of the unit tests of the SPIR-V to WGSL translator, converted to an end-to-end test so we can check the right thing will be emitted on all the backend languages.)</p><p><a href="https://mastodon.gamedev.place/tags/webgpu" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>webgpu</span></a> <a href="https://mastodon.gamedev.place/tags/tint" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>tint</span></a> <a href="https://mastodon.gamedev.place/tags/spirv" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>spirv</span></a> <a href="https://mastodon.gamedev.place/tags/wgsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wgsl</span></a> <a href="https://mastodon.gamedev.place/tags/da" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>da</span></a></p>
Julien Barnoin<p>I know SPIR-V is not meant for human readability and all that, but damn. Is there not any way that the variables were named anything closer to useful than %13525? I understand that it's not a one-to-one match with my glsl variables, but like... This feels like it's actively trying to obfuscate the code 🥲</p><p>Maybe there's some glslang option I don't know about that tries to make them a bit clearer?</p><p><a href="https://mastodon.gamedev.place/tags/glsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>glsl</span></a> <a href="https://mastodon.gamedev.place/tags/spirv" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>spirv</span></a> <a href="https://mastodon.gamedev.place/tags/vulkan" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>vulkan</span></a> <a href="https://mastodon.gamedev.place/tags/programming" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>programming</span></a> <a href="https://mastodon.gamedev.place/tags/gamedev" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>gamedev</span></a></p>
Vulkan<p>The SPIR Working Group developed 2 new SPIR-V extensions to provide shader authors with more guarantees about the execution model of shaders: SPV_KHR_maximal_reconvergence and VK_KHR_shader_quad_control.</p><p>Learn more: <a href="https://www.khronos.org/blog/khronos-releases-maximal-reconvergence-and-quad-control-extensions-for-vulkan-and-spir-v" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">khronos.org/blog/khronos-relea</span><span class="invisible">ses-maximal-reconvergence-and-quad-control-extensions-for-vulkan-and-spir-v</span></a><br><a href="https://fosstodon.org/tags/SPIRV" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SPIRV</span></a> <a href="https://fosstodon.org/tags/Vulkan" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Vulkan</span></a> <a href="https://fosstodon.org/tags/Shaders" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Shaders</span></a></p>
Siebencorgie<p>My small SDF language is working now!</p><p>It currently compiles this code in ~5ms into a new SPIR-V module that is linked into the sphere-tracing shader. </p><p>The `offset` parameter is wired to a push constant. So you can move the sphere/torus in this example without having to recompile the SDF.</p><p><a href="https://mastodon.gamedev.place/tags/compilers" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>compilers</span></a> <a href="https://mastodon.gamedev.place/tags/spirv" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>spirv</span></a> <a href="https://mastodon.gamedev.place/tags/langdev" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>langdev</span></a> <a href="https://mastodon.gamedev.place/tags/vulkan" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>vulkan</span></a> <a href="https://mastodon.gamedev.place/tags/sdf" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>sdf</span></a></p>
blake shaw 🇵🇸<p>wow this project is so cool, a sophisticated <a href="https://functional.cafe/tags/shader" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>shader</span></a> IDE with its own <a href="https://functional.cafe/tags/SPIRV" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SPIRV</span></a> virtual machine<br><a href="https://shadered.org/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">shadered.org/</span><span class="invisible"></span></a><br><a href="https://github.com/dfranx/SPIRV-VM" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="">github.com/dfranx/SPIRV-VM</span><span class="invisible"></span></a></p><p><a href="https://functional.cafe/tags/glsl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>glsl</span></a></p>
Pekka Jääskeläinen<p>chipStar 1.0 released! It's a tool for compiling and running CUDA/HIP applications on SPIR-V-supported OpenCL or LevelZero platforms. v1.0 can already run various HPC applications correctly. See: <a href="https://github.com/CHIP-SPV/chipStar/releases/tag/v1.0" rel="nofollow noopener" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/CHIP-SPV/chipStar/r</span><span class="invisible">eleases/tag/v1.0</span></a> <br><a href="https://fosstodon.org/tags/opencl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>opencl</span></a> <a href="https://fosstodon.org/tags/levelzero" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>levelzero</span></a> <a href="https://fosstodon.org/tags/spirv" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>spirv</span></a> <a href="https://fosstodon.org/tags/cuda" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cuda</span></a> <a href="https://fosstodon.org/tags/hip" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>hip</span></a></p>
Juan Fumero<p>I am giving a talk later today at the <a href="https://mastodon.online/tags/oneAPI" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>oneAPI</span></a> SIG Hardware Group about <a href="https://mastodon.online/tags/TornadoVM" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>TornadoVM</span></a> and how it connects with <a href="https://mastodon.online/tags/SPIRV" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SPIRV</span></a> and <a href="https://mastodon.online/tags/LevelZero" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>LevelZero</span></a> from the oneAPI software stack. </p><p>This is an opportunity for academics and Industry to motivate new changes for the LevelZero SPEC.</p>
David Neto<p><span class="h-card"><a href="https://mastodon.gamedev.place/@sascha" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>sascha</span></a></span> <span class="h-card"><a href="https://mastodon.gamedev.place/@wbrbr" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>wbrbr</span></a></span> <br>Yes, that's right.<br>DXC was Stadia's production HLSL compiler, running on Linux, targeting Vulkan SPIR-V.</p><p>Nice demo! Yay for flexibility in shader langauges <a href="https://mastodon.gamedev.place/tags/spirv" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>spirv</span></a></p>
Fabian Wahlster<p><span class="h-card"><a href="https://androiddev.social/@romainguy" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>romainguy</span></a></span> with support for <a href="https://mastodon.gamedev.place/tags/spirv" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>spirv</span></a> shaders :)</p>
David Neto<p>Forwarded from @afd_icl@twitter.com</p><p>Check out the camera-ready version of our <a href="https://mastodon.gamedev.place/tags/popl2023" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>popl2023</span></a> paper on using formal technique to improve the <a href="https://mastodon.gamedev.place/tags/SPIRV" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>SPIRV</span></a> programming language. Joint with Vasileios Klimis, Jack Clark, @wicko3, Alan Baker and <span class="h-card"><a href="https://mastodon.gamedev.place/@dneto" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>dneto</span></a></span>.</p><p>@thekhronosgroup @VulkanAPI</p><p><a href="https://t.co/uUIF9kxlKX" rel="nofollow noopener" target="_blank"><span class="invisible">https://</span><span class="">t.co/uUIF9kxlKX</span><span class="invisible"></span></a></p>