#rustlang #gpu #spirv #compiler #rustgpu #programming #opensource
@regionaltantrums
A systems-software guy, who builds software for embedded or bare-metal systems, cryptographic hardware and has an interest in high-performance computing. Uses: rust for (pretty much) everything .. ๐ฆ
#rustlang #gpu #spirv #compiler #rustgpu #programming #opensource
@rust-lang.org @vulkan.org @rusttrending.bsky.social
โข ๐งฉ How simple Rust shaders map to SPIR-V ops
โข ๐ What storage classes, decorations & types mean in SPIR-V
โข ๐งฌ A tour of the rust-gpu source โ how it handles types & functions
โข ๐ง Closing thoughts on optimizations and the SPIR-T effort
youtu.be/BWWQoVHSByQ?...
๐ Part 2 is here! โ Can we get pure Rust running on GPUs?
Picking up from where we left off, this stream dives deeper into how Rust gets compiled down to SPIR-V โ and what the rust-gpu backend is really doing under the hood ๐งต๐ฆโ๏ธ
๐ง Whatโs Inside:
@rusttrending.bsky.social @compiler.news
If you havenโt watched Part 1, check that out first for the foundation - youtu.be/rRgYGBAhKQ0
Curious about where Rust in compiler engineering is headed? Letโs discuss! ๐ฌ
3/3
Pliron is shaping up to be a powerful, all-Rust alternative to MLIR and could play a key role in the future of ๐ต๐ฒ๐๐ฒ๐ฟ๐ผ๐ด๐ฒ๐ป๐ฒ๐ผ๐๐ ๐ต๐ฎ๐ฟ๐ฑ๐๐ฎ๐ฟ๐ฒ, ๐๐ฃ๐จ, ๐ฎ๐ป๐ฑ ๐๐ ๐ฐ๐ผ๐บ๐ฝ๐ถ๐น๐ฒ๐ฟ๐.
youtu.be/d__XhSbFNCM
2/3
๐ช๐ต๐ฎ๐โ๐ ๐๐ป๐๐ถ๐ฑ๐ฒ?
๐ ๏ธ Defining a custom IR dialect in Pliron
๐ก Plironโs interfaces vs. Type-State Programming
โ
Op verification, IR parsing, and printing
๐ Cranelift IR โ Pliron IR: Step-by-step walkthrough
1/3
๐ ๐ก๐ฒ๐ ๐ฉ๐ถ๐ฑ๐ฒ๐ผ ๐๐ฟ๐ผ๐ฝ! ๐
In Part 1, we explored ๐ฃ๐น๐ถ๐ฟ๐ผ๐ป, an all-Rust, MLIR-inspired compiler framework.
Now, in Part 2, letโs get hands-on and implement a custom dialect, using Cranelift IR as an example!
#apple #metal #nvidia @vulkan.org @rusttrending.bsky.social @theembeddedrust.bsky.social
This episode has quite a few insights into GPU debugging, profiling, and performance tuningโall essential skills for graphics and compute programmers.
youtu.be/2rWaAmhnkYw
โก ๐๐๐๐ ๐ฏ๐ฌ. ๐๐ฎ๐ฅ๐ค๐๐ง โ ๐ญ Key differences in philosophy, flexibility, and performance.
๐ ๐๐๐๐ฎ๐ ๐ ๐ข๐ง๐ ๐๐ฎ๐ฅ๐ค๐๐ง ๐จ๐ง ๐ฆ๐๐๐๐ โ ๐ Using MoltenVK to bypass Appleโs lack of native Vulkan support.
๐ ๐๐๐ ๐ฉ๐ซ๐จ๐๐ข๐ฅ๐ข๐ง๐ โ ๐ง Inspect .gputrace files to analyze workloads.
๐ฏ ๐๐ฑ๐๐๐ฎ๐ญ๐ข๐ง๐ ๐๐จ๐ฆ๐ฉ๐ฎ๐ญ๐ ๐๐จ๐ฆ๐ฆ๐๐ง๐๐ฌ โ ๐ How GPUs process work.
If you caught Episode 2, we talked about how GPUs process commands and how Vulkan structures communication between the CPU and GPU. Now, weโre shifting gears to:
1/4
๐ฅ ๐ด ๐๐ฉ๐ข๐ฌ๐จ๐๐ 3 ๐ข๐ฌ ๐ก๐๐ซ๐!
Building on our journey into Vulkan and GPU programming, this episode takes a deeper look at how Vulkan compares to CUDA (and by extension, ROCm and HIP) and explores GPU debugging workflows across platforms.
Help shape the future of the Vulkan developer ecosystem! The 2025 LunarG Ecosystem Survey is now live. A few minutes of your time will help us chart the course and set priorities for the upcoming year. Survey closes on February 19, 2025.
www.surveymonkey.com/r/89LW2R8
3/3
Pliron is still early-stage, but itโs a bold step toward pure Rust compiler frameworks. Check it out to see how Rust + Pliron can redefine compiler engineering!
@rusttrending.bsky.social @theembeddedrust.bsky.social @foundation.rust-lang.org.web.brid.gy
youtu.be/rRgYGBAhKQ0
2/3
Whatโs Inside?
- MLIRโs role in modern compilers
- How Pliron brings MLIRโs concepts to Rustโno C/C++ required
- A brief hands-on look at Plironโs core data structures, ops, types, and interfaces
- Why Rust macros make Pliron a very interesting framework.
1/3
๐ ๐๐๐ฐ ๐๐ข๐๐๐จ ๐๐ซ๐จ๐ฉ! ๐
This time, weโre diving into ๐๐ฅ๐ข๐ซ๐จ๐ง, an all @rustlang
extensible compiler framework inspired by MLIR! If youโre into compilers, Rust, GPU/AI/HPC, or hardware acceleration, this oneโs for you.
@vulkan.org @rusttrending.bsky.social
This episode peels back the layers to show how CPUs command and control GPUs behind the scenes. If youโre curious about GPU programming or love exploring the inner workings of modern hardware, this one is for you!
#rust #gpu #programming #vulkan #compute #hardware #performance
youtu.be/m8XDoYkSJOU
Contd
- ๐๐จ๐ฆ๐ฆ๐๐ง๐ ๐ช๐ฎ๐๐ฎ๐๐ฌ: How GPUs manage tasks with ring buffers.
- ๐๐๐ฆ๐จ: Sending a transfer command to fill a GPU buffer and debug output.
Hereโs a tiny preview:
- ๐๐๐ฒ ๐๐จ๐ฆ๐ฉ๐จ๐ง๐๐ง๐ญ๐ฌ: Application, Vulkan runtime, drivers, command queue.
- ๐๐๐ ๐ฉ๐ซ๐จ๐๐๐ฌ๐ฌ๐๐ฌ: Command processing, decoding, dispatching, scheduling.
- ๐๐๐-๐๐๐ ๐ฌ๐ฒ๐ง๐: Efficient communication and coordination.
If you missed Episode 1, I introduced Vulkanโs modular architecture, walked through setting up Ash (Rust bindings for Vulkanโs C API), and demonstrated how to check Vulkanโs terminal output.
In Episode 2, we explore the software pipeline for GPU communication.
1/4
๐ฅ ๐ด ๐๐ข๐๐๐จ ๐๐ซ๐จ๐ฉ: A new year, a new series
In Part 2 of my new series on GPU programming with Vulkan and Rust, we dive deeper into how applications communicate with GPUs and why Vulkan shines as a modern GPU API.
3/3
In Episode 1, Iโll walk you through Vulkanโs modular architecture, show you how to set up Ash with some code, and wrap up with a demo on checking Vulkanโs terminal output.
@vulkan.org #rust #gpu #programming #api
youtu.be/TCoFGO2Lb4g
2/3
Weโll dive into why GPU programming is about so much more than just writing shader code (i.e., code that runs on the GPU), explore what Vulkan is, how it stands out from other GPU APIs, and introduce Ash, the Rust bindings for Vulkanโs C API.
๐ฅ ๐ด ๐๐ข๐๐๐จ ๐๐ซ๐จ๐ฉ: A new year, a new series
Iโm kicking off a brand-new series on GPU programming with Vulkan and Rustโthis is gonna be fun!
Exposing pointer provenance APIs can address many of the concerns associated with this process, making it safer and more predictable.
In the context of embedded systems, programming MCUs often requires (unsafely) casting integers to pointers and back, especially as part of the initial boot sequence.
Rust 1.84 is out!
This release includes a feature Iโve personally been waiting for:
- Strict Pointer Provenance APIs
blog.rust-lang.org/2025/01/09/R...