From 8ef161d28940564be66bdc97765da29ec56f4cdd Mon Sep 17 00:00:00 2001 From: keptsecret Date: Fri, 20 Jun 2025 14:55:45 +0700 Subject: [PATCH 01/34] first draft of subgroup scan article --- .../index.md | 201 ++++++++++++++++++ blog/authors.yml | 11 +- 2 files changed, 211 insertions(+), 1 deletion(-) create mode 100644 blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md diff --git a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md new file mode 100644 index 0000000..39f97d9 --- /dev/null +++ b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md @@ -0,0 +1,201 @@ +--- +title: 'Nvidia SPIR-V Compiler Bug or Do Subgroup Shuffle Operations Not Imply Reconvergence?' +slug: 'subgroup-shuffle-reconvergence-on-nvidia' +description: "A look at the behavior behind Nabla's subgroup scan" +date: '2025-06-19' +authors: ['keptsecret'] +tags: ['nabla', 'vulkan', 'article'] +last_update: + date: '2025-06-19' + author: keptsecret +--- + +Reduce and scan operations are core building blocks in the world of parallel computing, and now Nabla has a new release with those operations made even faster for Vulkan at the subgroup and workgroup levels. + +This article takes a brief look at the Nabla implementation for reduce and scan on the GPU in Vulkan, and then a discussion on expected reconvergence behavior after subgroup operations. + + + +## Reduce and Scan + +Let's give a quick introduction, or recap for those already familiar, to reduce and scan operations. + +A reduction takes a binary associative operator $\bigoplus$ and an array of $n$ elements + +$\left[x_0, x_1,...,x_{n-1}\right]$, + +and returns + +$x_0 \bigoplus x_1 \bigoplus ... \bigoplus x_{n-1}$. + +In other words, when $\bigoplus$ is an addition, a reduction of the array $X$ is then the sum of all elements of array $X$. + +``` +Input: 4 6 2 3 7 1 0 5 +Reduction: 28 +``` + +A scan is a generalization of reduction, and takes a binary associative operator $\bigoplus$ with identity $I$ and an array of $n$ elements. +Then, for each element, performs the reduction from the first element to the current element. +An _exclusive_ scan does so for all elements before the current element. + +$\left[I, x_0, (x_0 \bigoplus x_1), ..., (x_0 \bigoplus x_1 \bigoplus ... \bigoplus x_{n-2})\right]$. + +An _inclusive_ scan then includes the current element as well. + +$\left[x_0, (x_0 \bigoplus x_1), ..., (x_0 \bigoplus x_1 \bigoplus ... \bigoplus x_{n-1})\right]$. + +Notice the last element of the inclusive scan is the same as the reduction. + +``` +Input: 4 6 2 3 7 1 0 5 +Exclusive: 0 4 10 12 15 22 23 23 +Inclusive: 4 10 12 15 22 23 23 28 +``` + +## Nabla's subgroup scans + +We start with the most basic of building blocks: doing a reduction or a scan in the local subgroup of a Vulkan device. +Pretty simple actually, since Vulkan already has subgroup arithmetic operations supported via SPIRV, and it's all available in Nabla. + +```cpp +nbl::hlsl::glsl::groupAdd(T value) +nbl::hlsl::glsl::groupInclusiveAdd(T value) +nbl::hlsl::glsl::groupExclusiveAdd(T value) +etc... +``` + +But wait, the SPIRV-provided operations all require your Vulkan physical device to have support the `GroupNonUniformArithmetic` capability. +So, Nabla provides emulated versions for that too, and it's all compiled into a single templated struct call. + +```cpp +template +struct inclusive_scan; + +template +struct exclusive_scan; + +template +struct reduction; +``` + +The implementation of emulated subgroup scans make use of subgroup shuffle operations to access partial sums from other invocations in the subgroup. + +```cpp +T inclusive_scan(T value) +{ + rhs = shuffleUp(value, 1) + value = value + (firstInvocation ? identity : rhs) + + for (i = 1; i < SubgroupSizeLog2; i++) + { + nextLevelStep = 1 << i + rhs = shuffleUp(value, nextLevelStep) + value = value + (nextLevelStep out of bounds ? identity : rhs) + } + return value +} +``` + +In addition, Nabla also supports passing vectors into these subgroup operations, so you can perform reduce or scans on up to subgroup size * 4 (for `vec4`) elements per call. +Note that it expects the elements in the vectors to be consecutive and in the same order as the input array. + +You can find all the implementations on the [Nabla repository](https://github.com/Devsh-Graphics-Programming/Nabla/blob/master/include/nbl/builtin/hlsl/subgroup2/arithmetic_portability_impl.hlsl) + +## An issue with subgroup sync and reconvergence + +Now, onto a pretty significant, but strangely obscure, problem that I ran into during unit testing this prior to release. +Nabla also has implementations for workgroup reduce and scans that make use of the subgroup scans above, and one such section looks like this. + +```cpp +... workgroup scan code ... + +for (idx = 0; idx < VirtualWorkgroupSize / WorkgroupSize; idx++) +{ + value = getValueFromDataAccessor(memoryIdx) + + value = subgroup::inclusive_scan(value) + + setValueToDataAccessor(memoryIdx) + + if (lastSubgroupInvocation) + { + setValueToSharedMemory(smemIdx) + } +} +control_barrier() + +... workgroup scan code ... +``` + +At first glance, it looks fine, and it does produce the expected results for the most part... except in some very specific cases. +And from some more testing and debugging to try and identify the cause, I've found the conditions to be: + +* using an Nvidia GPU +* using emulated versions of subgroup operations +* a decent number of iterations in the loop (in this case at least 8). + +I tested this on an Intel GPU, to be sure, and the workgroup scan ran correctly. +That was very baffling initially. And the results produced on an Nvidia device looked like a sync problem. + +It was even more convincing when I moved the control barrier inside the loop and it immediately produced correct scan results. + +```cpp +... workgroup scan code ... + +for (idx = 0; idx < VirtualWorkgroupSize / WorkgroupSize; idx++) +{ + value = getValueFromDataAccessor(memoryIdx) + + value = subgroup::inclusive_scan(value) + + setValueToDataAccessor(memoryIdx) + + if (lastSubgroupInvocation) + { + setValueToSharedMemory(smemIdx) + } + control_barrier() +} + +... workgroup scan code ... +``` + +Ultimately, we came to the conclusion that each subgroup invocation was probably somehow not in sync as each loop went on. +Particularly, the last invocation that spends some extra time writing to shared memory may have been lagging behind. +It is a simple fix to the emulated subgroup reduce and scan. A memory barrier was enough. + +```cpp +T inclusive_scan(T value) +{ + memory_barrier() + + rhs = shuffleUp(value, 1) + value = value + (firstInvocation ? identity : rhs) + + for (i = 1; i < SubgroupSizeLog2; i++) + { + nextLevelStep = 1 << i + rhs = shuffleUp(value, nextLevelStep) + value = value + (nextLevelStep out of bounds ? identity : rhs) + } + return value +} +``` + +As a side note, using the `SPV_KHR_maximal_reconvergence` extension doesn't resolve this issue surprisingly. + +However, this was only a problem on Nvidia devices. +And as the title of this article states, it's unclear whether this is a bug in Nvidia's SPIRV compiler or subgroup shuffle operations just do not imply reconvergence in the spec. + +------------------- + +P.S. you may note in the source code that the memory barrier contains the workgroup memory mask, despite us only needing sync in the subgroup scope. + +```cpp +spirv::memoryBarrier(spv::ScopeSubgroup, spv::MemorySemanticsWorkgroupMemoryMask | spv::MemorySemanticsAcquireMask); +``` + +This is because unfortunately, the subgroup memory mask doesn't seem to count as a storage class, at least according to the Vulkan SPIRV validator. +Only the next step up in memory level is valid. +I feel like there's possibly something missing here. diff --git a/blog/authors.yml b/blog/authors.yml index f7e1c12..50e704d 100644 --- a/blog/authors.yml +++ b/blog/authors.yml @@ -32,4 +32,13 @@ fletterio: image_url: https://avatars.githubusercontent.com/u/40742817?v=4 page: true socials: - github: Fletterio \ No newline at end of file + github: Fletterio + +keptsecret: + name: Sorakrit Chonwattanagul + title: Junior Developer @ DevSH GP + url: https://github.com/keptsecret/ + image_url: https://avatars.githubusercontent.com/u/27181108?v=4 + page: true + socials: + github: keptsecret \ No newline at end of file From ceabcdc1322f48ba536f33067cbdf35ddd104bcd Mon Sep 17 00:00:00 2001 From: rtarun9 Date: Sun, 22 Jun 2025 09:53:56 +0530 Subject: [PATCH 02/34] Added rtarun9 to the froglist --- static/webring/froglist.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/static/webring/froglist.json b/static/webring/froglist.json index 863aa42..ca55d24 100644 --- a/static/webring/froglist.json +++ b/static/webring/froglist.json @@ -70,5 +70,11 @@ "url": "https://edward.delaporte.us/", "displayName": "Edward Delaporte", "description": "Interactive JavaScript art, example code, and reference links." + }, + { + "name": "rtarun9", + "url": "https://rtarun9.github.io/", + "displayName": "Tarun R", + "description": "Personal site with projects and blogs that are rarely updated" } ] From dc0a64df24b94d4040058ea52ddff1ab1b6c41d8 Mon Sep 17 00:00:00 2001 From: keptsecret Date: Mon, 23 Jun 2025 14:59:02 +0700 Subject: [PATCH 03/34] some corrections --- .../index.md | 25 ++++++------------- 1 file changed, 8 insertions(+), 17 deletions(-) diff --git a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md index 39f97d9..dad08a7 100644 --- a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md +++ b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md @@ -66,7 +66,7 @@ etc... ``` But wait, the SPIRV-provided operations all require your Vulkan physical device to have support the `GroupNonUniformArithmetic` capability. -So, Nabla provides emulated versions for that too, and it's all compiled into a single templated struct call. +So, Nabla provides emulated versions for that too, and both versions are compiled into a single templated struct call. ```cpp template @@ -129,7 +129,7 @@ control_barrier() ``` At first glance, it looks fine, and it does produce the expected results for the most part... except in some very specific cases. -And from some more testing and debugging to try and identify the cause, I've found the conditions to be: +And from some more testing and debugging to try and identify the cause, I've found the conditions to be: * using an Nvidia GPU * using emulated versions of subgroup operations @@ -163,12 +163,12 @@ for (idx = 0; idx < VirtualWorkgroupSize / WorkgroupSize; idx++) Ultimately, we came to the conclusion that each subgroup invocation was probably somehow not in sync as each loop went on. Particularly, the last invocation that spends some extra time writing to shared memory may have been lagging behind. -It is a simple fix to the emulated subgroup reduce and scan. A memory barrier was enough. +It is a simple fix to the emulated subgroup reduce and scan. A subgroup barrier was enough. ```cpp T inclusive_scan(T value) { - memory_barrier() + control_barrier() rhs = shuffleUp(value, 1) value = value + (firstInvocation ? identity : rhs) @@ -185,17 +185,8 @@ T inclusive_scan(T value) As a side note, using the `SPV_KHR_maximal_reconvergence` extension doesn't resolve this issue surprisingly. -However, this was only a problem on Nvidia devices. -And as the title of this article states, it's unclear whether this is a bug in Nvidia's SPIRV compiler or subgroup shuffle operations just do not imply reconvergence in the spec. - -------------------- - -P.S. you may note in the source code that the memory barrier contains the workgroup memory mask, despite us only needing sync in the subgroup scope. - -```cpp -spirv::memoryBarrier(spv::ScopeSubgroup, spv::MemorySemanticsWorkgroupMemoryMask | spv::MemorySemanticsAcquireMask); -``` +However, this problem was only observed on Nvidia devices. +And as the title of this article states, it's unclear whether this is a bug in Nvidia's SPIRV compiler or subgroup shuffle operations just do not imply reconvergence in the Vulkan specification. -This is because unfortunately, the subgroup memory mask doesn't seem to count as a storage class, at least according to the Vulkan SPIRV validator. -Only the next step up in memory level is valid. -I feel like there's possibly something missing here. +---------------------------- +_This issue was observed happening inconsistently on Nvidia driver version 576.80, released 17th June 2025._ From 8f6ade82f3d4b0e31401fea0a9b2b4e39d27f2a9 Mon Sep 17 00:00:00 2001 From: keptsecret Date: Tue, 24 Jun 2025 16:53:41 +0700 Subject: [PATCH 04/34] much more info, discussion on topic --- .../index.md | 81 ++++++++++++++++--- blog/authors.yml | 13 ++- 2 files changed, 79 insertions(+), 15 deletions(-) diff --git a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md index dad08a7..fefc919 100644 --- a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md +++ b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md @@ -3,16 +3,17 @@ title: 'Nvidia SPIR-V Compiler Bug or Do Subgroup Shuffle Operations Not Imply R slug: 'subgroup-shuffle-reconvergence-on-nvidia' description: "A look at the behavior behind Nabla's subgroup scan" date: '2025-06-19' -authors: ['keptsecret'] +authors: ['keptsecret', 'devshgraphicsprogramming'] tags: ['nabla', 'vulkan', 'article'] last_update: date: '2025-06-19' author: keptsecret --- -Reduce and scan operations are core building blocks in the world of parallel computing, and now Nabla has a new release with those operations made even faster for Vulkan at the subgroup and workgroup levels. +Reduce and scan operations are core building blocks in the world of parallel computing, and now [Nabla has a new release](https://github.com/Devsh-Graphics-Programming/Nabla/tree/v0.6.2-alpha1) with those operations made even faster for Vulkan at the subgroup and workgroup levels. -This article takes a brief look at the Nabla implementation for reduce and scan on the GPU in Vulkan, and then a discussion on expected reconvergence behavior after subgroup operations. +This article takes a brief look at the Nabla implementation for reduce and scan on the GPU in Vulkan. +Then, I discuss a missing reconvergence behavior that was expected after subgroup shuffle operations that was only observed on Nvidia devices. @@ -56,7 +57,8 @@ Inclusive: 4 10 12 15 22 23 23 28 ## Nabla's subgroup scans We start with the most basic of building blocks: doing a reduction or a scan in the local subgroup of a Vulkan device. -Pretty simple actually, since Vulkan already has subgroup arithmetic operations supported via SPIRV, and it's all available in Nabla. +Pretty simple actually, since Vulkan already has subgroup arithmetic operations supported. +Nabla exposes this via the [GLSL compatibility header](https://github.com/Devsh-Graphics-Programming/Nabla/blob/v0.6.2-alpha1/include/nbl/builtin/hlsl/glsl_compat/subgroup_arithmetic.hlsl) built of [HLSL SPIR-V inline intrinsics](https://github.com/Devsh-Graphics-Programming/Nabla/blob/v0.6.2-alpha1/include/nbl/builtin/hlsl/spirv_intrinsics/subgroup_arithmetic.hlsl). ```cpp nbl::hlsl::glsl::groupAdd(T value) @@ -65,7 +67,7 @@ nbl::hlsl::glsl::groupExclusiveAdd(T value) etc... ``` -But wait, the SPIRV-provided operations all require your Vulkan physical device to have support the `GroupNonUniformArithmetic` capability. +But wait, the SPIR-V-provided operations all require your Vulkan physical device to have support the `GroupNonUniformArithmetic` capability. So, Nabla provides emulated versions for that too, and both versions are compiled into a single templated struct call. ```cpp @@ -80,6 +82,8 @@ struct reduction; ``` The implementation of emulated subgroup scans make use of subgroup shuffle operations to access partial sums from other invocations in the subgroup. +This is based on the [Kogge–Stone adder (KSA)](https://developer.nvidia.com/gpugems/gpugems3/part-vi-gpu-computing/chapter-39-parallel-prefix-sum-scan-cuda), using $\log_2 n$ steps where $n$ is the subgroup size with all lanes active. +It should also be noted that in cases like this where the SIMD/SIMT processor pays for all lanes regardless of whether or not they're active, the KSA design is faster than more theoretically work-efficient parallel scans like the Blelloch (which we use at the workgroup granularity). ```cpp T inclusive_scan(T value) @@ -99,8 +103,9 @@ T inclusive_scan(T value) In addition, Nabla also supports passing vectors into these subgroup operations, so you can perform reduce or scans on up to subgroup size * 4 (for `vec4`) elements per call. Note that it expects the elements in the vectors to be consecutive and in the same order as the input array. +This is because we've found through benchmarking that the instructing the GPU to do a vector load/store results in faster performance than any attempt at coalesced load/store. -You can find all the implementations on the [Nabla repository](https://github.com/Devsh-Graphics-Programming/Nabla/blob/master/include/nbl/builtin/hlsl/subgroup2/arithmetic_portability_impl.hlsl) +You can find all the implementations on the [Nabla repository](https://github.com/Devsh-Graphics-Programming/Nabla/blob/v0.6.2-alpha1/include/nbl/builtin/hlsl/subgroup2/arithmetic_portability_impl.hlsl) ## An issue with subgroup sync and reconvergence @@ -110,6 +115,7 @@ Nabla also has implementations for workgroup reduce and scans that make use of t ```cpp ... workgroup scan code ... +debug_barrier() for (idx = 0; idx < VirtualWorkgroupSize / WorkgroupSize; idx++) { value = getValueFromDataAccessor(memoryIdx) @@ -123,11 +129,13 @@ for (idx = 0; idx < VirtualWorkgroupSize / WorkgroupSize; idx++) setValueToSharedMemory(smemIdx) } } -control_barrier() +workgroup_execution_and_memory_barrier() ... workgroup scan code ... ``` +_I should note that `memoryIdx` is unique and per-invocation, and also that shared memory is only written to in this step to be accessed in later steps._ + At first glance, it looks fine, and it does produce the expected results for the most part... except in some very specific cases. And from some more testing and debugging to try and identify the cause, I've found the conditions to be: @@ -143,6 +151,7 @@ It was even more convincing when I moved the control barrier inside the loop and ```cpp ... workgroup scan code ... +debug_barrier() for (idx = 0; idx < VirtualWorkgroupSize / WorkgroupSize; idx++) { value = getValueFromDataAccessor(memoryIdx) @@ -155,20 +164,20 @@ for (idx = 0; idx < VirtualWorkgroupSize / WorkgroupSize; idx++) { setValueToSharedMemory(smemIdx) } - control_barrier() + workgroup_execution_and_memory_barrier() } ... workgroup scan code ... ``` Ultimately, we came to the conclusion that each subgroup invocation was probably somehow not in sync as each loop went on. -Particularly, the last invocation that spends some extra time writing to shared memory may have been lagging behind. -It is a simple fix to the emulated subgroup reduce and scan. A subgroup barrier was enough. +Particularly, the effect we're seeing is a shuffle done as if `value` is not in lockstep at the call site. +We tested using a subgroup execution barrier and maximal reconvergence, and found out a memory barrier is enough. ```cpp T inclusive_scan(T value) { - control_barrier() + memory_barrier() rhs = shuffleUp(value, 1) value = value + (firstInvocation ? identity : rhs) @@ -183,10 +192,56 @@ T inclusive_scan(T value) } ``` +However, this problem was only observed on Nvidia devices. + As a side note, using the `SPV_KHR_maximal_reconvergence` extension doesn't resolve this issue surprisingly. +I feel I should point out that many presentations and code listings seem to give an impression subgroup shuffle operations execute in lockstep based on the very simple examples provided. +For instance, [the example in this presentation](https://vulkan.org/user/pages/09.events/vulkanised-2025/T08-Hugo-Devillers-SaarlandUniversity.pdf) correctly demonstrates where invocations in a tangle are reading and storing to SSBO, but may mislead readers into not considering the Availability and Visibility for other scenarios that need it. +Specifically, it does not have an intended read-after write if invocations in a tangle execute in lockstep. +(With that said, since subgroup operations are SSA and take arguments "by copy", this discussion of Memory Dependencies and availability-visibility is not relevant to our problem, but just something to be aware of.) -However, this problem was only observed on Nvidia devices. -And as the title of this article states, it's unclear whether this is a bug in Nvidia's SPIRV compiler or subgroup shuffle operations just do not imply reconvergence in the Vulkan specification. +### A minor detour onto the performance of native vs. emulated on Nvidia devices + +I think this observation warrants a small discussion section of its own. +The table below are some numbers from our benchmark measured through Nvidia's Nsight Graphics profiler of a subgroup inclusive scan using native SPIR-V instructions and our emulated version. + +_Native_ + +| Workgroup size | SM throughput (%) | CS warp occupancy (%) | # registers | Dispatch time (ms) | +| :------------: | :---------------: | :-------------------: | :---------: | :----------------: | +| 256 | 41.6 | 90.5 | 16 | 27 | +| 512 | 41.4 | 89.7 | 16 | 27.15 | +| 1024 | 40.5 | 59.7 | 16 | 27.74 | + +_Emulated_ + +| Workgroup size | SM throughput (%) | CS warp occupancy (%) | # registers | Dispatch time (ms) | +| :------------: | :---------------: | :-------------------: | :---------: | :----------------: | +| 256 | 37.9 | 90.7 | 16 | 12.22 | +| 512 | 37.7 | 90.3 | 16 | 12.3 | +| 1024 | 37.1 | 60.5 | 16 | 12.47 | + +These numbers are baffling to say the least, particularly the fact that our emulated subgroup scans are twice as fast than the native solution. +It should be noted that this is with the subgroup barrier in place, not that we saw any marked decrease in performance compared to earlier versions without it. + +An potential explanation for this may be that Nvidia has to consider any inactive invocations in a subgroup, having them behave as if they contribute the identity $I$ element to the scan. +Our emulated scan instead requires people call the arithmetic in subgroup uniform fashion. +If that is not the case, this seems like a cause for concern for Nvidia's SPIR-V compiler. + +### What could cause this behavior on Nvidia? — The Independent Program Counter + +We think a potential culprit for this could be Nvidia's Independent Program Counter (IPC) that was introduced with the Volta architecture. + +Prior to Volta, all threads in a subgroup share the same program counter, which handles scheduling of instructions across all those threads. +This means all threads in the same subgroup execute the same instruction at any given time. +Therefore, when you have a branch in the program flow across threads in the same subgroup, all execution paths generally have to be executed and mask off threads that should not be active for that path. + +With Volta up to now, each thread has its own program counter that allows it to execute independently of other threads in the same subgroup. +This also provides a new possibility on Nvidia devices, where you can now synchronize threads in the same subgroup. +In CUDA, this is exposed through `__syncwarp()`, and we can do similar in Vulkan using subgroup control barriers. +It's entirely possible that each subgroup shuffle operation does not run in lockstep, with the branching introduced in the loop, which would be why that is our solution to the problem for now. + +In the end, it's unclear whether this is a bug in Nvidia's SPIR-V compiler or subgroup shuffle operations just do not imply reconvergence in the Vulkan specification. ---------------------------- _This issue was observed happening inconsistently on Nvidia driver version 576.80, released 17th June 2025._ diff --git a/blog/authors.yml b/blog/authors.yml index 50e704d..58fa4d8 100644 --- a/blog/authors.yml +++ b/blog/authors.yml @@ -36,9 +36,18 @@ fletterio: keptsecret: name: Sorakrit Chonwattanagul - title: Junior Developer @ DevSH GP + title: Associate Developer @ DevSH GP url: https://github.com/keptsecret/ image_url: https://avatars.githubusercontent.com/u/27181108?v=4 page: true socials: - github: keptsecret \ No newline at end of file + github: keptsecret + +devshgraphicsprogramming: + name: Mateusz Kielan + title: CTO of DevSH GP + url: https://github.com/devshgraphicsprogramming + image_url: https://avatars.githubusercontent.com/u/6894321?v=4 + page: true + socials: + github: devshgraphicsprogramming From b29b0c815513c014eaf6969456419d7c14e5f99e Mon Sep 17 00:00:00 2001 From: keptsecret Date: Tue, 24 Jun 2025 16:56:34 +0700 Subject: [PATCH 05/34] added devsh to froglist --- static/webring/froglist.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/static/webring/froglist.json b/static/webring/froglist.json index ca55d24..de4e856 100644 --- a/static/webring/froglist.json +++ b/static/webring/froglist.json @@ -76,5 +76,11 @@ "url": "https://rtarun9.github.io/", "displayName": "Tarun R", "description": "Personal site with projects and blogs that are rarely updated" + }, + { + "name": "devsh", + "url": "https://www.devsh.eu/", + "displayName": "DevSH Graphics Programming", + "description": "Homepage of DevSH Graphics Programming: Computer Graphics, Computer Geometry & Vision and High Performance Computing Consultancy" } ] From 786dcbce74fd34090ae068b3585c479069059cb8 Mon Sep 17 00:00:00 2001 From: keptsecret Date: Wed, 25 Jun 2025 13:30:59 +0700 Subject: [PATCH 06/34] last section of blog post --- .../index.md | 61 ++++++++++++++++++- 1 file changed, 60 insertions(+), 1 deletion(-) diff --git a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md index fefc919..eac93c3 100644 --- a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md +++ b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md @@ -241,7 +241,66 @@ This also provides a new possibility on Nvidia devices, where you can now synchr In CUDA, this is exposed through `__syncwarp()`, and we can do similar in Vulkan using subgroup control barriers. It's entirely possible that each subgroup shuffle operation does not run in lockstep, with the branching introduced in the loop, which would be why that is our solution to the problem for now. -In the end, it's unclear whether this is a bug in Nvidia's SPIR-V compiler or subgroup shuffle operations just do not imply reconvergence in the Vulkan specification. +In the end, it's unclear whether this is a bug in Nvidia's SPIR-V compiler or subgroup shuffle operations actually do not imply reconvergence in the Vulkan specification. +Unfortunately, I couldn't find anything explicit mention in the SPIR-V specification that confirmed this, even with hours of scouring the spec. + +## What does this implication mean for subgroup operations? + +Consider what it means if subgroup convergence doesn't guarantee that active tangle invocations execute a subgroup operation in lockstep. + +Subgroup ballot and ballot arithmetic are two where you don't have to consider lockstepness, because it is expected that the return value of ballot to be uniform in a tangle and it is known exactly what it should be. +Similarly, for subgroup broadcasts, first the value being broadcast needs to computed, say from invocation K. +Even if other invocations don't run in lockstep, they can't read the value until invocation K broadcasts it if they want to read the same value (uniformity) and you know what value should be read (broadcasting invocation can check it got the same value back). + +On the flip side, reductions will always produce a uniform return value for all invocations, even if you reduce a stale or out-of-lockstep input value. + +Meanwhile, subgroup operations that don't return tangle-uniform values, such as shuffles and scans, would only produce the expected result only if performed on constants or variables written with an execution and memory dependency. +These operations can give different results per invocation so there's no implied uniformity, which means there's no reason to expect any constraints on their apparent lockstepness being implied transitively through the properties of the return value. + +The important consideration then is how a subgroup operation is implemented. +When a subgroup operation doesn't explicitly state that they all have to execute at the same time by all invocations, we can imagine a scenario where a shuffle may be as simple as the receiving invocation snooping another's register without requiring any action on the latter's part. +And that comes with obvious IPC dangers, as snooping it before it gets written or after it gets overwritten if there are no other execution dependencies will surely provide inconsistent results. + +This leads to code listings like the following becoming undefined behavior simply by changing the `Broadcast` into a `Shuffle`. + +```cpp +// Broadcasting after computation +// OK, only counts active invocations in tangle (doesn't change) +int count = subgroupBallotBitCount(true); +// OK, done on a constant +int index = subgroupExclusiveAdd(1); +int base, base_slot; +if (subgroupElect()) + base_slot = atomicAdd(dst.size,count); +// NOT OK, `base_slot` not available, visible or other invocations may even have raced ahead of the elected one +// Not every invocation will see the correct value of `base_slot` in the elected one memory dependency not ensured +base = subgroupBroadcastFirst(base_slot); +``` + +Similarly again, with [this example from the Khronos blog on maximal reconvergence](https://www.khronos.org/blog/khronos-releases-maximal-reconvergence-and-quad-control-extensions-for-vulkan-and-spir-v) + +```cpp +// OK, thanks to subgroup uniform control flow, no wiggle room here (need to know all invcocation values) +if (subgroupAny(needs_space)) { + // OK, narrowly because `subgroupBallot` returns a ballot thats uniform in a tangle + uvec4 mask = subgroupBallot(needs_space); + // OK, because `mask` is tangle-uniform + uint size = subgroupBallotBitCount(mask); + uint base = 0; + if (subgroupElect()) + base = atomicAdd(b.free, size); + + // NOT OK if replaced Broadcast with Shuffle, non-elected invocations could race ahead or not see (visibility) the `base` value in the elected invocation before that one would excecute a shuffle + base = subgroupBroadcastFirst(base); + // OK, but only because `mask` is tangle-uniform + uint offset = subgroupBallotExclusiveBitCount(mask); + + if (needs_space) + b.data[base + offset] = ...; +} +``` + +With all that said, it needs to be noted that one can't expect every instruction to run in lockstep, as that would negate the advantages of Nvidia's IPC. ---------------------------- _This issue was observed happening inconsistently on Nvidia driver version 576.80, released 17th June 2025._ From 516505e41d561b5259f53d9426e3b3b9757bd214 Mon Sep 17 00:00:00 2001 From: keptsecret Date: Thu, 26 Jun 2025 12:16:20 +0700 Subject: [PATCH 07/34] possible final set of additions/changes to post --- .../index.md | 66 +++++++++++++----- .../pascal_simt_model.png | Bin 0 -> 68027 bytes .../volta_scheduling_model.png | Bin 0 -> 76301 bytes blog/authors.yml | 4 +- 4 files changed, 50 insertions(+), 20 deletions(-) create mode 100644 blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/pascal_simt_model.png create mode 100644 blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/volta_scheduling_model.png diff --git a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md index eac93c3..2a8f34e 100644 --- a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md +++ b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md @@ -1,6 +1,6 @@ --- -title: 'Nvidia SPIR-V Compiler Bug or Do Subgroup Shuffle Operations Not Imply Reconvergence?' -slug: 'subgroup-shuffle-reconvergence-on-nvidia' +title: 'Nvidia SPIR-V Compiler Bug or Do Subgroup Shuffle Operations Not Imply Execution Dependency?' +slug: 'subgroup-shuffle-execution-dependency-on-nvidia' description: "A look at the behavior behind Nabla's subgroup scan" date: '2025-06-19' authors: ['keptsecret', 'devshgraphicsprogramming'] @@ -13,7 +13,8 @@ last_update: Reduce and scan operations are core building blocks in the world of parallel computing, and now [Nabla has a new release](https://github.com/Devsh-Graphics-Programming/Nabla/tree/v0.6.2-alpha1) with those operations made even faster for Vulkan at the subgroup and workgroup levels. This article takes a brief look at the Nabla implementation for reduce and scan on the GPU in Vulkan. -Then, I discuss a missing reconvergence behavior that was expected after subgroup shuffle operations that was only observed on Nvidia devices. + +Then, I discuss a missing excution dependency expected for a subgroup shuffle operation, which was only a problem on Nvidia devices in some test cases. @@ -91,6 +92,7 @@ T inclusive_scan(T value) rhs = shuffleUp(value, 1) value = value + (firstInvocation ? identity : rhs) + [unroll] for (i = 1; i < SubgroupSizeLog2; i++) { nextLevelStep = 1 << i @@ -110,6 +112,7 @@ You can find all the implementations on the [Nabla repository](https://github.co ## An issue with subgroup sync and reconvergence Now, onto a pretty significant, but strangely obscure, problem that I ran into during unit testing this prior to release. +[See the unit tests.](https://github.com/Devsh-Graphics-Programming/Nabla-Examples-and-Tests/blob/master/23_Arithmetic2UnitTest/app_resources/testSubgroup.comp.hlsl) Nabla also has implementations for workgroup reduce and scans that make use of the subgroup scans above, and one such section looks like this. ```cpp @@ -134,17 +137,17 @@ workgroup_execution_and_memory_barrier() ... workgroup scan code ... ``` -_I should note that `memoryIdx` is unique and per-invocation, and also that shared memory is only written to in this step to be accessed in later steps._ +_I should note that this is the first level of scans for the workgroup scope. It is only one step of the algorithm and the data accesses are completely independent. Thus, `memoryIdx` is unique and per-invocation, and also that shared memory is only written to in this step to be accessed in later steps._ At first glance, it looks fine, and it does produce the expected results for the most part... except in some very specific cases. -And from some more testing and debugging to try and identify the cause, I've found the conditions to be: +After some more testing and debugging to try and identify the cause, I've found the conditions to be: * using an Nvidia GPU * using emulated versions of subgroup operations * a decent number of iterations in the loop (in this case at least 8). I tested this on an Intel GPU, to be sure, and the workgroup scan ran correctly. -That was very baffling initially. And the results produced on an Nvidia device looked like a sync problem. +This was very baffling initially. And the results produced on an Nvidia device looked like a sync problem. It was even more convincing when I moved the control barrier inside the loop and it immediately produced correct scan results. @@ -172,7 +175,8 @@ for (idx = 0; idx < VirtualWorkgroupSize / WorkgroupSize; idx++) Ultimately, we came to the conclusion that each subgroup invocation was probably somehow not in sync as each loop went on. Particularly, the effect we're seeing is a shuffle done as if `value` is not in lockstep at the call site. -We tested using a subgroup execution barrier and maximal reconvergence, and found out a memory barrier is enough. +We tested using a subgroup execution barrier and maximal reconvergence. +Strangely enough, just a memory barrier also fixed it, which it shouldn't have as subgroup shuffles are magical intrinsics that take arguments by copy and don't really deal with accessing any memory locations (SSA form). ```cpp T inclusive_scan(T value) @@ -182,9 +186,11 @@ T inclusive_scan(T value) rhs = shuffleUp(value, 1) value = value + (firstInvocation ? identity : rhs) + [unroll] for (i = 1; i < SubgroupSizeLog2; i++) { nextLevelStep = 1 << i + memory_barrier() rhs = shuffleUp(value, nextLevelStep) value = value + (nextLevelStep out of bounds ? identity : rhs) } @@ -196,16 +202,21 @@ However, this problem was only observed on Nvidia devices. As a side note, using the `SPV_KHR_maximal_reconvergence` extension doesn't resolve this issue surprisingly. I feel I should point out that many presentations and code listings seem to give an impression subgroup shuffle operations execute in lockstep based on the very simple examples provided. + For instance, [the example in this presentation](https://vulkan.org/user/pages/09.events/vulkanised-2025/T08-Hugo-Devillers-SaarlandUniversity.pdf) correctly demonstrates where invocations in a tangle are reading and storing to SSBO, but may mislead readers into not considering the Availability and Visibility for other scenarios that need it. -Specifically, it does not have an intended read-after write if invocations in a tangle execute in lockstep. + +Such simple examples are good enough to demonstrate the purpose of the extension, but fail to elaborate on specific details. +If it did have a read-after-write between subgroup invocations, subgroup scope memory dependencies would have been needed. + (With that said, since subgroup operations are SSA and take arguments "by copy", this discussion of Memory Dependencies and availability-visibility is not relevant to our problem, but just something to be aware of.) ### A minor detour onto the performance of native vs. emulated on Nvidia devices +Since all recent Nvidia GPUs support subgroup arithmetic SPIR-V capability, why were we using emulation with shuffles? I think this observation warrants a small discussion section of its own. The table below are some numbers from our benchmark measured through Nvidia's Nsight Graphics profiler of a subgroup inclusive scan using native SPIR-V instructions and our emulated version. -_Native_ +#### Native | Workgroup size | SM throughput (%) | CS warp occupancy (%) | # registers | Dispatch time (ms) | | :------------: | :---------------: | :-------------------: | :---------: | :----------------: | @@ -213,7 +224,7 @@ _Native_ | 512 | 41.4 | 89.7 | 16 | 27.15 | | 1024 | 40.5 | 59.7 | 16 | 27.74 | -_Emulated_ +#### Emulated | Workgroup size | SM throughput (%) | CS warp occupancy (%) | # registers | Dispatch time (ms) | | :------------: | :---------------: | :-------------------: | :---------: | :----------------: | @@ -222,11 +233,11 @@ _Emulated_ | 1024 | 37.1 | 60.5 | 16 | 12.47 | These numbers are baffling to say the least, particularly the fact that our emulated subgroup scans are twice as fast than the native solution. -It should be noted that this is with the subgroup barrier in place, not that we saw any marked decrease in performance compared to earlier versions without it. +It should be noted that this is with the subgroup barrier before every shuffle, we did not see any marked decrease in performance. An potential explanation for this may be that Nvidia has to consider any inactive invocations in a subgroup, having them behave as if they contribute the identity $I$ element to the scan. Our emulated scan instead requires people call the arithmetic in subgroup uniform fashion. -If that is not the case, this seems like a cause for concern for Nvidia's SPIR-V compiler. +If that is not the case, this seems like a cause for concern for Nvidia's SPIR-V to SASS compiler. ### What could cause this behavior on Nvidia? — The Independent Program Counter @@ -236,25 +247,39 @@ Prior to Volta, all threads in a subgroup share the same program counter, which This means all threads in the same subgroup execute the same instruction at any given time. Therefore, when you have a branch in the program flow across threads in the same subgroup, all execution paths generally have to be executed and mask off threads that should not be active for that path. +
+ ![Pascal and prior SIMT model](pascal_simt_model.png "Pascal and prior SIMT model") +
Thread scheduling under the SIMT warp execution model of Pascal and earlier NVIDIA GPUs. Taken from [NVIDIA TESLA V100 GPU ARCHITECTURE](https://images.nvidia.com/content/volta-architecture/pdf/volta-architecture-whitepaper.pdf)
+
+ With Volta up to now, each thread has its own program counter that allows it to execute independently of other threads in the same subgroup. This also provides a new possibility on Nvidia devices, where you can now synchronize threads in the same subgroup. +The active invocations still have to execute the same instruction, but it can be at different locations in the program (e.g. different iterations of a loop). + +
+ ![Volta Independent Thread Scheduling model](volta_scheduling_model.png "Volta Independent Thread Scheduling model") +
Independent thread scheduling in Volta architecture onwards interleaving execution from divergent branches, using an explicit sync to reconverge threads. Taken from [NVIDIA TESLA V100 GPU ARCHITECTURE](https://images.nvidia.com/content/volta-architecture/pdf/volta-architecture-whitepaper.pdf)
+
+ In CUDA, this is exposed through `__syncwarp()`, and we can do similar in Vulkan using subgroup control barriers. -It's entirely possible that each subgroup shuffle operation does not run in lockstep, with the branching introduced in the loop, which would be why that is our solution to the problem for now. +It's entirely possible that each subgroup shuffle operation does not run in lockstep with the branching introduced, which would be why that is our solution to the problem for now. + +Unfortunately, I couldn't find anything explicit mention in the SPIR-V specification that confirmed whether subgroup shuffle operations actually imply execution dependency, even with hours of scouring the spec. -In the end, it's unclear whether this is a bug in Nvidia's SPIR-V compiler or subgroup shuffle operations actually do not imply reconvergence in the Vulkan specification. -Unfortunately, I couldn't find anything explicit mention in the SPIR-V specification that confirmed this, even with hours of scouring the spec. +So then we either have... -## What does this implication mean for subgroup operations? +## This is a gray area of the Subgroup Shuffle Spec and allowed Undefined Behaviour Consider what it means if subgroup convergence doesn't guarantee that active tangle invocations execute a subgroup operation in lockstep. -Subgroup ballot and ballot arithmetic are two where you don't have to consider lockstepness, because it is expected that the return value of ballot to be uniform in a tangle and it is known exactly what it should be. +Subgroup ballot and ballot arithmetic are two where you don't have to consider lockstepness, because it is expected that the return value of ballot to be uniform in a tangle, and as a corollary, it is known exactly what it should be. + Similarly, for subgroup broadcasts, first the value being broadcast needs to computed, say from invocation K. Even if other invocations don't run in lockstep, they can't read the value until invocation K broadcasts it if they want to read the same value (uniformity) and you know what value should be read (broadcasting invocation can check it got the same value back). On the flip side, reductions will always produce a uniform return value for all invocations, even if you reduce a stale or out-of-lockstep input value. -Meanwhile, subgroup operations that don't return tangle-uniform values, such as shuffles and scans, would only produce the expected result only if performed on constants or variables written with an execution and memory dependency. +Meanwhile, subgroup operations that don't return tangle-uniform values, such as shuffles and scans, would only produce the expected result only if performed on constants or variables written with an execution dependency. These operations can give different results per invocation so there's no implied uniformity, which means there's no reason to expect any constraints on their apparent lockstepness being implied transitively through the properties of the return value. The important consideration then is how a subgroup operation is implemented. @@ -302,5 +327,10 @@ if (subgroupAny(needs_space)) { With all that said, it needs to be noted that one can't expect every instruction to run in lockstep, as that would negate the advantages of Nvidia's IPC. +## Or a bug in Nvidia's SPIR-V to SASS compiler + +And crucially, it's impossible to know (or discuss in the case of a signed NDA) what's happening for the bug or performance regression with Nvidia. +Unlike AMD's RDNA ISAs where we can verify that the compiler is doing what it should be doing using Radeon GPU Analyzer, the generated SASS is inaccessible and neither is the compiler public. + ---------------------------- _This issue was observed happening inconsistently on Nvidia driver version 576.80, released 17th June 2025._ diff --git a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/pascal_simt_model.png b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/pascal_simt_model.png new file mode 100644 index 0000000000000000000000000000000000000000..d6f47000926a8ad868dbeac0deaeea27c586ce30 GIT binary patch literal 68027 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⋘6$TxvNfkgKfyw*m(0Y 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 z z11Co=hXn-%b>#Lt6j%wA#K*^XOsc1Cxp3ja$*NM<$**~BT##LzPE1TZy?@KS0p(Qq@>&ns^f|6U1cwTKPcV}4-a$m z3kW1;XCE}g!&d%OBmR)e$DJ(Mk7bGP%@2S5`lZmkHf|Mex~JXs)LyPFwC`J6_rApc zDI|n*UN@CB4Udj)(ZhdzI_r{xlB~9Ob#j+4#bhlg(;efaJOR)yk+?cO^l65k(*jyRFHsjaPT@@5o8&n71qm%I&l zZQ0~wvUU`^)Y$r)cjF&E5{$a|i$Z8m4*ARUm?imy>YLbu`20 l6S$6S2MU%=|Nk%aq9}f$c0GrZI*`0l@wn=-%%kV7{x1MzO6mXr literal 0 HcmV?d00001 diff --git a/blog/authors.yml b/blog/authors.yml index 58fa4d8..d8db3db 100644 --- a/blog/authors.yml +++ b/blog/authors.yml @@ -45,8 +45,8 @@ keptsecret: devshgraphicsprogramming: name: Mateusz Kielan - title: CTO of DevSH GP - url: https://github.com/devshgraphicsprogramming + title: CTO of DevSH Graphics Programming Sp. z O.O. + url: https://www.devsh.eu/ image_url: https://avatars.githubusercontent.com/u/6894321?v=4 page: true socials: From d18d705eb2e4cc0c20f414450f9d2cc6ad01d7c4 Mon Sep 17 00:00:00 2001 From: keptsecret Date: Thu, 26 Jun 2025 12:41:51 +0700 Subject: [PATCH 08/34] changed memory barrier to subgroup execution barrier in pseudocode --- .../index.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md index 2a8f34e..0ccf8a6 100644 --- a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md +++ b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md @@ -181,8 +181,7 @@ Strangely enough, just a memory barrier also fixed it, which it shouldn't have a ```cpp T inclusive_scan(T value) { - memory_barrier() - + subgroup_execution_barrier() rhs = shuffleUp(value, 1) value = value + (firstInvocation ? identity : rhs) @@ -190,7 +189,7 @@ T inclusive_scan(T value) for (i = 1; i < SubgroupSizeLog2; i++) { nextLevelStep = 1 << i - memory_barrier() + subgroup_execution_barrier() rhs = shuffleUp(value, nextLevelStep) value = value + (nextLevelStep out of bounds ? identity : rhs) } From 2fa6f6a5f127080a13e81adbe748a87628f8c1e0 Mon Sep 17 00:00:00 2001 From: keptsecret Date: Thu, 26 Jun 2025 14:18:20 +0700 Subject: [PATCH 09/34] add another use case of ipc arch --- .../index.md | 37 ++++++++++++++++-- .../linked_list_lock.png | Bin 0 -> 41155 bytes 2 files changed, 34 insertions(+), 3 deletions(-) create mode 100644 blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/linked_list_lock.png diff --git a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md index 0ccf8a6..9803e1b 100644 --- a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md +++ b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md @@ -14,7 +14,7 @@ Reduce and scan operations are core building blocks in the world of parallel com This article takes a brief look at the Nabla implementation for reduce and scan on the GPU in Vulkan. -Then, I discuss a missing excution dependency expected for a subgroup shuffle operation, which was only a problem on Nvidia devices in some test cases. +Then, I discuss a missing execution dependency expected for a subgroup shuffle operation, which was only a problem on Nvidia devices in some test cases. @@ -105,7 +105,9 @@ T inclusive_scan(T value) In addition, Nabla also supports passing vectors into these subgroup operations, so you can perform reduce or scans on up to subgroup size * 4 (for `vec4`) elements per call. Note that it expects the elements in the vectors to be consecutive and in the same order as the input array. -This is because we've found through benchmarking that the instructing the GPU to do a vector load/store results in faster performance than any attempt at coalesced load/store. +This is because we've found through benchmarking that the instructing the GPU to do a vector load/store results in faster performance than any attempt at coalesced load/store with striding. + +We also found shuffles and vector arithmetic to be very expensive, and so having the least amount of data exchange between invocations and pre-scanning up to 4 elements within an invocation was significantly faster. You can find all the implementations on the [Nabla repository](https://github.com/Devsh-Graphics-Programming/Nabla/blob/v0.6.2-alpha1/include/nbl/builtin/hlsl/subgroup2/arithmetic_portability_impl.hlsl) @@ -261,7 +263,36 @@ The active invocations still have to execute the same instruction, but it can be In CUDA, this is exposed through `__syncwarp()`, and we can do similar in Vulkan using subgroup control barriers. -It's entirely possible that each subgroup shuffle operation does not run in lockstep with the branching introduced, which would be why that is our solution to the problem for now. + +The IPC also enables starvation-free algorithms on CUDA, along with the use of mutexes where a thread that attempts to acquire a mutex is guaranteed to eventually succeed. Consider the example in the Volta whitepaper of a doubly linked list: + +```cpp +__device__ void insert_after(Node* a, Node* b) +{ + Node* c; + lock(a); + lock(a->next); + c = a->next; + + a->next = b; + b->prev = a; + + b->next = c; + c->prev = b; + + unlock(c); + unlock(a); +} +``` + +The diagram shows how, with IPC, even if thread K holds the lock for node A, another thread J in the same subgroup (warp in the case of CUDA) can wait for the lock to become available and not affect K's progress. + +
+ ![Doubly Linked List lock](linked_list_lock.png "Doubly Linked List lock") +
Locks are acquired for nodes A and C, shown on the left, before the threads inserts node B shown on the right. Taken from [NVIDIA TESLA V100 GPU ARCHITECTURE](https://images.nvidia.com/content/volta-architecture/pdf/volta-architecture-whitepaper.pdf)
+
+ +In our case however, it's entirely possible that each subgroup shuffle operation does not run in lockstep with the branching introduced, which would be why subgroup execution barriers are our solution to the problem for now. Unfortunately, I couldn't find anything explicit mention in the SPIR-V specification that confirmed whether subgroup shuffle operations actually imply execution dependency, even with hours of scouring the spec. diff --git a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/linked_list_lock.png b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/linked_list_lock.png new file mode 100644 index 0000000000000000000000000000000000000000..6ecf59e4821324b22466f71889741bd61c5481ea GIT binary patch literal 41155 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≦owJnN^XN|6@;6sa~3SG_nu45aYKd!NIbJadhAomjCTtOY0h+Wbe5c@vAP5hySZNh15 z{xq{jGbgO^NbdeAgr*Jh+QhHKi+nb@ozZFrv?e_L%DZT0v@|z6mZQ825EnY1>{P|` zCgV2ds|YJB=@)&~6R3&E@R-B)d#vWY_Zk!7sRBt%&nCHZ_R{Ya){+@N9NM&s{(9AP z==o$!Ce#SBa&j=I-@q#TDjU2T;MI-;7faF3%6)nCs-L}PwviR}+eczj2lxt#X{~n7 zkWVZv^eQtr>4RLINHOeMT|!Vh+B}>NJF|>I<)`BPu|i(tF~cIkcxEdg0K~E9(ZQ2x zzw*zGe^vJ1M-eF^kLRZbgwpndTRsscbg4j z5=aq`Vm7gpahs^j Date: Thu, 26 Jun 2025 14:31:57 +0700 Subject: [PATCH 10/34] use full company name --- blog/authors.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/blog/authors.yml b/blog/authors.yml index d8db3db..dc95fa4 100644 --- a/blog/authors.yml +++ b/blog/authors.yml @@ -27,7 +27,7 @@ jaked: fletterio: name: Francisco Letterio - title: Junior Developer @ DevSH GP + title: Junior Developer @ DevSH Graphics Programming Sp. z O.O. url: https://github.com/Fletterio image_url: https://avatars.githubusercontent.com/u/40742817?v=4 page: true @@ -36,7 +36,7 @@ fletterio: keptsecret: name: Sorakrit Chonwattanagul - title: Associate Developer @ DevSH GP + title: Associate Developer @ DevSH Graphics Programming Sp. z O.O. url: https://github.com/keptsecret/ image_url: https://avatars.githubusercontent.com/u/27181108?v=4 page: true From 3aedbddcf581f5f21bc6a06111323fd1e3c3e672 Mon Sep 17 00:00:00 2001 From: Sorakrit Chonwattanagul Date: Thu, 26 Jun 2025 17:39:15 +0700 Subject: [PATCH 11/34] Execution dependency on subgroup shuffle operations (#71) * first draft of subgroup scan article * some corrections * much more info, discussion on topic * added devsh to froglist * last section of blog post * possible final set of additions/changes to post * changed memory barrier to subgroup execution barrier in pseudocode * add another use case of ipc arch * use full company name --- .../index.md | 366 ++++++++++++++++++ .../linked_list_lock.png | Bin 0 -> 41155 bytes .../pascal_simt_model.png | Bin 0 -> 68027 bytes .../volta_scheduling_model.png | Bin 0 -> 76301 bytes blog/authors.yml | 22 +- static/webring/froglist.json | 6 + 6 files changed, 392 insertions(+), 2 deletions(-) create mode 100644 blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md create mode 100644 blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/linked_list_lock.png create mode 100644 blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/pascal_simt_model.png create mode 100644 blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/volta_scheduling_model.png diff --git a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md new file mode 100644 index 0000000..9803e1b --- /dev/null +++ b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/index.md @@ -0,0 +1,366 @@ +--- +title: 'Nvidia SPIR-V Compiler Bug or Do Subgroup Shuffle Operations Not Imply Execution Dependency?' +slug: 'subgroup-shuffle-execution-dependency-on-nvidia' +description: "A look at the behavior behind Nabla's subgroup scan" +date: '2025-06-19' +authors: ['keptsecret', 'devshgraphicsprogramming'] +tags: ['nabla', 'vulkan', 'article'] +last_update: + date: '2025-06-19' + author: keptsecret +--- + +Reduce and scan operations are core building blocks in the world of parallel computing, and now [Nabla has a new release](https://github.com/Devsh-Graphics-Programming/Nabla/tree/v0.6.2-alpha1) with those operations made even faster for Vulkan at the subgroup and workgroup levels. + +This article takes a brief look at the Nabla implementation for reduce and scan on the GPU in Vulkan. + +Then, I discuss a missing execution dependency expected for a subgroup shuffle operation, which was only a problem on Nvidia devices in some test cases. + + + +## Reduce and Scan + +Let's give a quick introduction, or recap for those already familiar, to reduce and scan operations. + +A reduction takes a binary associative operator $\bigoplus$ and an array of $n$ elements + +$\left[x_0, x_1,...,x_{n-1}\right]$, + +and returns + +$x_0 \bigoplus x_1 \bigoplus ... \bigoplus x_{n-1}$. + +In other words, when $\bigoplus$ is an addition, a reduction of the array $X$ is then the sum of all elements of array $X$. + +``` +Input: 4 6 2 3 7 1 0 5 +Reduction: 28 +``` + +A scan is a generalization of reduction, and takes a binary associative operator $\bigoplus$ with identity $I$ and an array of $n$ elements. +Then, for each element, performs the reduction from the first element to the current element. +An _exclusive_ scan does so for all elements before the current element. + +$\left[I, x_0, (x_0 \bigoplus x_1), ..., (x_0 \bigoplus x_1 \bigoplus ... \bigoplus x_{n-2})\right]$. + +An _inclusive_ scan then includes the current element as well. + +$\left[x_0, (x_0 \bigoplus x_1), ..., (x_0 \bigoplus x_1 \bigoplus ... \bigoplus x_{n-1})\right]$. + +Notice the last element of the inclusive scan is the same as the reduction. + +``` +Input: 4 6 2 3 7 1 0 5 +Exclusive: 0 4 10 12 15 22 23 23 +Inclusive: 4 10 12 15 22 23 23 28 +``` + +## Nabla's subgroup scans + +We start with the most basic of building blocks: doing a reduction or a scan in the local subgroup of a Vulkan device. +Pretty simple actually, since Vulkan already has subgroup arithmetic operations supported. +Nabla exposes this via the [GLSL compatibility header](https://github.com/Devsh-Graphics-Programming/Nabla/blob/v0.6.2-alpha1/include/nbl/builtin/hlsl/glsl_compat/subgroup_arithmetic.hlsl) built of [HLSL SPIR-V inline intrinsics](https://github.com/Devsh-Graphics-Programming/Nabla/blob/v0.6.2-alpha1/include/nbl/builtin/hlsl/spirv_intrinsics/subgroup_arithmetic.hlsl). + +```cpp +nbl::hlsl::glsl::groupAdd(T value) +nbl::hlsl::glsl::groupInclusiveAdd(T value) +nbl::hlsl::glsl::groupExclusiveAdd(T value) +etc... +``` + +But wait, the SPIR-V-provided operations all require your Vulkan physical device to have support the `GroupNonUniformArithmetic` capability. +So, Nabla provides emulated versions for that too, and both versions are compiled into a single templated struct call. + +```cpp +template +struct inclusive_scan; + +template +struct exclusive_scan; + +template +struct reduction; +``` + +The implementation of emulated subgroup scans make use of subgroup shuffle operations to access partial sums from other invocations in the subgroup. +This is based on the [Kogge–Stone adder (KSA)](https://developer.nvidia.com/gpugems/gpugems3/part-vi-gpu-computing/chapter-39-parallel-prefix-sum-scan-cuda), using $\log_2 n$ steps where $n$ is the subgroup size with all lanes active. +It should also be noted that in cases like this where the SIMD/SIMT processor pays for all lanes regardless of whether or not they're active, the KSA design is faster than more theoretically work-efficient parallel scans like the Blelloch (which we use at the workgroup granularity). + +```cpp +T inclusive_scan(T value) +{ + rhs = shuffleUp(value, 1) + value = value + (firstInvocation ? identity : rhs) + + [unroll] + for (i = 1; i < SubgroupSizeLog2; i++) + { + nextLevelStep = 1 << i + rhs = shuffleUp(value, nextLevelStep) + value = value + (nextLevelStep out of bounds ? identity : rhs) + } + return value +} +``` + +In addition, Nabla also supports passing vectors into these subgroup operations, so you can perform reduce or scans on up to subgroup size * 4 (for `vec4`) elements per call. +Note that it expects the elements in the vectors to be consecutive and in the same order as the input array. +This is because we've found through benchmarking that the instructing the GPU to do a vector load/store results in faster performance than any attempt at coalesced load/store with striding. + +We also found shuffles and vector arithmetic to be very expensive, and so having the least amount of data exchange between invocations and pre-scanning up to 4 elements within an invocation was significantly faster. + +You can find all the implementations on the [Nabla repository](https://github.com/Devsh-Graphics-Programming/Nabla/blob/v0.6.2-alpha1/include/nbl/builtin/hlsl/subgroup2/arithmetic_portability_impl.hlsl) + +## An issue with subgroup sync and reconvergence + +Now, onto a pretty significant, but strangely obscure, problem that I ran into during unit testing this prior to release. +[See the unit tests.](https://github.com/Devsh-Graphics-Programming/Nabla-Examples-and-Tests/blob/master/23_Arithmetic2UnitTest/app_resources/testSubgroup.comp.hlsl) +Nabla also has implementations for workgroup reduce and scans that make use of the subgroup scans above, and one such section looks like this. + +```cpp +... workgroup scan code ... + +debug_barrier() +for (idx = 0; idx < VirtualWorkgroupSize / WorkgroupSize; idx++) +{ + value = getValueFromDataAccessor(memoryIdx) + + value = subgroup::inclusive_scan(value) + + setValueToDataAccessor(memoryIdx) + + if (lastSubgroupInvocation) + { + setValueToSharedMemory(smemIdx) + } +} +workgroup_execution_and_memory_barrier() + +... workgroup scan code ... +``` + +_I should note that this is the first level of scans for the workgroup scope. It is only one step of the algorithm and the data accesses are completely independent. Thus, `memoryIdx` is unique and per-invocation, and also that shared memory is only written to in this step to be accessed in later steps._ + +At first glance, it looks fine, and it does produce the expected results for the most part... except in some very specific cases. +After some more testing and debugging to try and identify the cause, I've found the conditions to be: + +* using an Nvidia GPU +* using emulated versions of subgroup operations +* a decent number of iterations in the loop (in this case at least 8). + +I tested this on an Intel GPU, to be sure, and the workgroup scan ran correctly. +This was very baffling initially. And the results produced on an Nvidia device looked like a sync problem. + +It was even more convincing when I moved the control barrier inside the loop and it immediately produced correct scan results. + +```cpp +... workgroup scan code ... + +debug_barrier() +for (idx = 0; idx < VirtualWorkgroupSize / WorkgroupSize; idx++) +{ + value = getValueFromDataAccessor(memoryIdx) + + value = subgroup::inclusive_scan(value) + + setValueToDataAccessor(memoryIdx) + + if (lastSubgroupInvocation) + { + setValueToSharedMemory(smemIdx) + } + workgroup_execution_and_memory_barrier() +} + +... workgroup scan code ... +``` + +Ultimately, we came to the conclusion that each subgroup invocation was probably somehow not in sync as each loop went on. +Particularly, the effect we're seeing is a shuffle done as if `value` is not in lockstep at the call site. +We tested using a subgroup execution barrier and maximal reconvergence. +Strangely enough, just a memory barrier also fixed it, which it shouldn't have as subgroup shuffles are magical intrinsics that take arguments by copy and don't really deal with accessing any memory locations (SSA form). + +```cpp +T inclusive_scan(T value) +{ + subgroup_execution_barrier() + rhs = shuffleUp(value, 1) + value = value + (firstInvocation ? identity : rhs) + + [unroll] + for (i = 1; i < SubgroupSizeLog2; i++) + { + nextLevelStep = 1 << i + subgroup_execution_barrier() + rhs = shuffleUp(value, nextLevelStep) + value = value + (nextLevelStep out of bounds ? identity : rhs) + } + return value +} +``` + +However, this problem was only observed on Nvidia devices. + +As a side note, using the `SPV_KHR_maximal_reconvergence` extension doesn't resolve this issue surprisingly. +I feel I should point out that many presentations and code listings seem to give an impression subgroup shuffle operations execute in lockstep based on the very simple examples provided. + +For instance, [the example in this presentation](https://vulkan.org/user/pages/09.events/vulkanised-2025/T08-Hugo-Devillers-SaarlandUniversity.pdf) correctly demonstrates where invocations in a tangle are reading and storing to SSBO, but may mislead readers into not considering the Availability and Visibility for other scenarios that need it. + +Such simple examples are good enough to demonstrate the purpose of the extension, but fail to elaborate on specific details. +If it did have a read-after-write between subgroup invocations, subgroup scope memory dependencies would have been needed. + +(With that said, since subgroup operations are SSA and take arguments "by copy", this discussion of Memory Dependencies and availability-visibility is not relevant to our problem, but just something to be aware of.) + +### A minor detour onto the performance of native vs. emulated on Nvidia devices + +Since all recent Nvidia GPUs support subgroup arithmetic SPIR-V capability, why were we using emulation with shuffles? +I think this observation warrants a small discussion section of its own. +The table below are some numbers from our benchmark measured through Nvidia's Nsight Graphics profiler of a subgroup inclusive scan using native SPIR-V instructions and our emulated version. + +#### Native + +| Workgroup size | SM throughput (%) | CS warp occupancy (%) | # registers | Dispatch time (ms) | +| :------------: | :---------------: | :-------------------: | :---------: | :----------------: | +| 256 | 41.6 | 90.5 | 16 | 27 | +| 512 | 41.4 | 89.7 | 16 | 27.15 | +| 1024 | 40.5 | 59.7 | 16 | 27.74 | + +#### Emulated + +| Workgroup size | SM throughput (%) | CS warp occupancy (%) | # registers | Dispatch time (ms) | +| :------------: | :---------------: | :-------------------: | :---------: | :----------------: | +| 256 | 37.9 | 90.7 | 16 | 12.22 | +| 512 | 37.7 | 90.3 | 16 | 12.3 | +| 1024 | 37.1 | 60.5 | 16 | 12.47 | + +These numbers are baffling to say the least, particularly the fact that our emulated subgroup scans are twice as fast than the native solution. +It should be noted that this is with the subgroup barrier before every shuffle, we did not see any marked decrease in performance. + +An potential explanation for this may be that Nvidia has to consider any inactive invocations in a subgroup, having them behave as if they contribute the identity $I$ element to the scan. +Our emulated scan instead requires people call the arithmetic in subgroup uniform fashion. +If that is not the case, this seems like a cause for concern for Nvidia's SPIR-V to SASS compiler. + +### What could cause this behavior on Nvidia? — The Independent Program Counter + +We think a potential culprit for this could be Nvidia's Independent Program Counter (IPC) that was introduced with the Volta architecture. + +Prior to Volta, all threads in a subgroup share the same program counter, which handles scheduling of instructions across all those threads. +This means all threads in the same subgroup execute the same instruction at any given time. +Therefore, when you have a branch in the program flow across threads in the same subgroup, all execution paths generally have to be executed and mask off threads that should not be active for that path. + +
+ ![Pascal and prior SIMT model](pascal_simt_model.png "Pascal and prior SIMT model") +
Thread scheduling under the SIMT warp execution model of Pascal and earlier NVIDIA GPUs. Taken from [NVIDIA TESLA V100 GPU ARCHITECTURE](https://images.nvidia.com/content/volta-architecture/pdf/volta-architecture-whitepaper.pdf)
+
+ +With Volta up to now, each thread has its own program counter that allows it to execute independently of other threads in the same subgroup. +This also provides a new possibility on Nvidia devices, where you can now synchronize threads in the same subgroup. +The active invocations still have to execute the same instruction, but it can be at different locations in the program (e.g. different iterations of a loop). + +
+ ![Volta Independent Thread Scheduling model](volta_scheduling_model.png "Volta Independent Thread Scheduling model") +
Independent thread scheduling in Volta architecture onwards interleaving execution from divergent branches, using an explicit sync to reconverge threads. Taken from [NVIDIA TESLA V100 GPU ARCHITECTURE](https://images.nvidia.com/content/volta-architecture/pdf/volta-architecture-whitepaper.pdf)
+
+ +In CUDA, this is exposed through `__syncwarp()`, and we can do similar in Vulkan using subgroup control barriers. + +The IPC also enables starvation-free algorithms on CUDA, along with the use of mutexes where a thread that attempts to acquire a mutex is guaranteed to eventually succeed. Consider the example in the Volta whitepaper of a doubly linked list: + +```cpp +__device__ void insert_after(Node* a, Node* b) +{ + Node* c; + lock(a); + lock(a->next); + c = a->next; + + a->next = b; + b->prev = a; + + b->next = c; + c->prev = b; + + unlock(c); + unlock(a); +} +``` + +The diagram shows how, with IPC, even if thread K holds the lock for node A, another thread J in the same subgroup (warp in the case of CUDA) can wait for the lock to become available and not affect K's progress. + +
+ ![Doubly Linked List lock](linked_list_lock.png "Doubly Linked List lock") +
Locks are acquired for nodes A and C, shown on the left, before the threads inserts node B shown on the right. Taken from [NVIDIA TESLA V100 GPU ARCHITECTURE](https://images.nvidia.com/content/volta-architecture/pdf/volta-architecture-whitepaper.pdf)
+
+ +In our case however, it's entirely possible that each subgroup shuffle operation does not run in lockstep with the branching introduced, which would be why subgroup execution barriers are our solution to the problem for now. + +Unfortunately, I couldn't find anything explicit mention in the SPIR-V specification that confirmed whether subgroup shuffle operations actually imply execution dependency, even with hours of scouring the spec. + +So then we either have... + +## This is a gray area of the Subgroup Shuffle Spec and allowed Undefined Behaviour + +Consider what it means if subgroup convergence doesn't guarantee that active tangle invocations execute a subgroup operation in lockstep. + +Subgroup ballot and ballot arithmetic are two where you don't have to consider lockstepness, because it is expected that the return value of ballot to be uniform in a tangle, and as a corollary, it is known exactly what it should be. + +Similarly, for subgroup broadcasts, first the value being broadcast needs to computed, say from invocation K. +Even if other invocations don't run in lockstep, they can't read the value until invocation K broadcasts it if they want to read the same value (uniformity) and you know what value should be read (broadcasting invocation can check it got the same value back). + +On the flip side, reductions will always produce a uniform return value for all invocations, even if you reduce a stale or out-of-lockstep input value. + +Meanwhile, subgroup operations that don't return tangle-uniform values, such as shuffles and scans, would only produce the expected result only if performed on constants or variables written with an execution dependency. +These operations can give different results per invocation so there's no implied uniformity, which means there's no reason to expect any constraints on their apparent lockstepness being implied transitively through the properties of the return value. + +The important consideration then is how a subgroup operation is implemented. +When a subgroup operation doesn't explicitly state that they all have to execute at the same time by all invocations, we can imagine a scenario where a shuffle may be as simple as the receiving invocation snooping another's register without requiring any action on the latter's part. +And that comes with obvious IPC dangers, as snooping it before it gets written or after it gets overwritten if there are no other execution dependencies will surely provide inconsistent results. + +This leads to code listings like the following becoming undefined behavior simply by changing the `Broadcast` into a `Shuffle`. + +```cpp +// Broadcasting after computation +// OK, only counts active invocations in tangle (doesn't change) +int count = subgroupBallotBitCount(true); +// OK, done on a constant +int index = subgroupExclusiveAdd(1); +int base, base_slot; +if (subgroupElect()) + base_slot = atomicAdd(dst.size,count); +// NOT OK, `base_slot` not available, visible or other invocations may even have raced ahead of the elected one +// Not every invocation will see the correct value of `base_slot` in the elected one memory dependency not ensured +base = subgroupBroadcastFirst(base_slot); +``` + +Similarly again, with [this example from the Khronos blog on maximal reconvergence](https://www.khronos.org/blog/khronos-releases-maximal-reconvergence-and-quad-control-extensions-for-vulkan-and-spir-v) + +```cpp +// OK, thanks to subgroup uniform control flow, no wiggle room here (need to know all invcocation values) +if (subgroupAny(needs_space)) { + // OK, narrowly because `subgroupBallot` returns a ballot thats uniform in a tangle + uvec4 mask = subgroupBallot(needs_space); + // OK, because `mask` is tangle-uniform + uint size = subgroupBallotBitCount(mask); + uint base = 0; + if (subgroupElect()) + base = atomicAdd(b.free, size); + + // NOT OK if replaced Broadcast with Shuffle, non-elected invocations could race ahead or not see (visibility) the `base` value in the elected invocation before that one would excecute a shuffle + base = subgroupBroadcastFirst(base); + // OK, but only because `mask` is tangle-uniform + uint offset = subgroupBallotExclusiveBitCount(mask); + + if (needs_space) + b.data[base + offset] = ...; +} +``` + +With all that said, it needs to be noted that one can't expect every instruction to run in lockstep, as that would negate the advantages of Nvidia's IPC. + +## Or a bug in Nvidia's SPIR-V to SASS compiler + +And crucially, it's impossible to know (or discuss in the case of a signed NDA) what's happening for the bug or performance regression with Nvidia. +Unlike AMD's RDNA ISAs where we can verify that the compiler is doing what it should be doing using Radeon GPU Analyzer, the generated SASS is inaccessible and neither is the compiler public. + +---------------------------- +_This issue was observed happening inconsistently on Nvidia driver version 576.80, released 17th June 2025._ diff --git a/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/linked_list_lock.png b/blog/2025/2025-06-19-subgroup-shuffle-reconvergence-on-nvidia/linked_list_lock.png new file mode 100644 index 0000000000000000000000000000000000000000..6ecf59e4821324b22466f71889741bd61c5481ea GIT binary patch literal 41155 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≦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
#agaGuVx?a9x> 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⋘6$TxvNfkgKfyw*m(0Y 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 z z11Co=hXn-%b>#Lt6j%wA#K*^XOsc1Cxp3ja$*NM<$**~BT##LzPE1TZy?@KS0p(Qq@>&ns^f|6U1cwTKPcV}4-a$m z3kW1;XCE}g!&d%OBmR)e$DJ(Mk7bGP%@2S5`lZmkHf|Mex~JXs)LyPFwC`J6_rApc zDI|n*UN@CB4Udj)(ZhdzI_r{xlB~9Ob#j+4#bhlg(;efaJOR)yk+?cO^l65k(*jyRFHsjaPT@@5o8&n71qm%I&l zZQ0~wvUU`^)Y$r)cjF&E5{$a|i$Z8m4*ARUm?imy>YLbu`20 l6S$6S2MU%=|Nk%aq9}f$c0GrZI*`0l@wn=-%%kV7{x1MzO6mXr literal 0 HcmV?d00001 diff --git a/blog/authors.yml b/blog/authors.yml index f7e1c12..dc95fa4 100644 --- a/blog/authors.yml +++ b/blog/authors.yml @@ -27,9 +27,27 @@ jaked: fletterio: name: Francisco Letterio - title: Junior Developer @ DevSH GP + title: Junior Developer @ DevSH Graphics Programming Sp. z O.O. url: https://github.com/Fletterio image_url: https://avatars.githubusercontent.com/u/40742817?v=4 page: true socials: - github: Fletterio \ No newline at end of file + github: Fletterio + +keptsecret: + name: Sorakrit Chonwattanagul + title: Associate Developer @ DevSH Graphics Programming Sp. z O.O. + url: https://github.com/keptsecret/ + image_url: https://avatars.githubusercontent.com/u/27181108?v=4 + page: true + socials: + github: keptsecret + +devshgraphicsprogramming: + name: Mateusz Kielan + title: CTO of DevSH Graphics Programming Sp. z O.O. + url: https://www.devsh.eu/ + image_url: https://avatars.githubusercontent.com/u/6894321?v=4 + page: true + socials: + github: devshgraphicsprogramming diff --git a/static/webring/froglist.json b/static/webring/froglist.json index ca55d24..de4e856 100644 --- a/static/webring/froglist.json +++ b/static/webring/froglist.json @@ -76,5 +76,11 @@ "url": "https://rtarun9.github.io/", "displayName": "Tarun R", "description": "Personal site with projects and blogs that are rarely updated" + }, + { + "name": "devsh", + "url": "https://www.devsh.eu/", + "displayName": "DevSH Graphics Programming", + "description": "Homepage of DevSH Graphics Programming: Computer Graphics, Computer Geometry & Vision and High Performance Computing Consultancy" } ] From 61594e5902405be3d85a66a2fa0c5bc0aadcbbbd Mon Sep 17 00:00:00 2001 From: Nicholaus Clark Date: Sun, 29 Jun 2025 11:56:33 -0400 Subject: [PATCH 12/34] Fix broken Discord Invite URLs --- docusaurus.config.ts | 2 +- src/pages/index.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docusaurus.config.ts b/docusaurus.config.ts index 82c8b01..8283223 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -132,7 +132,7 @@ const config: Config = { items: [ { label: "Discord", - href: "https://discord.com/invite/graphicsprogramming", + href: "https://discord.com/graphicsprogramming", }, { label: "YouTube", diff --git a/src/pages/index.tsx b/src/pages/index.tsx index ae085c1..1f7ff94 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -38,7 +38,7 @@ function HomepageHeader() { Join our Discord Server From 841aa1ce94ca21c46688c86b40c7d9beeacc6b0c Mon Sep 17 00:00:00 2001 From: Nick Clark Date: Sun, 29 Jun 2025 13:52:28 -0400 Subject: [PATCH 13/34] Update docusaurus.config.ts --- docusaurus.config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docusaurus.config.ts b/docusaurus.config.ts index 8283223..434e36d 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -132,7 +132,7 @@ const config: Config = { items: [ { label: "Discord", - href: "https://discord.com/graphicsprogramming", + href: "https://discord.gg/graphicsprogramming", }, { label: "YouTube", From b1dbc19afc8a6e4e614f62e4238d1ecd12c24c7a Mon Sep 17 00:00:00 2001 From: Nicholaus Clark Date: Sun, 13 Jul 2025 11:49:11 -0400 Subject: [PATCH 14/34] Use CNAME discord link --- docusaurus.config.ts | 2 +- src/pages/index.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docusaurus.config.ts b/docusaurus.config.ts index 434e36d..c5e8ed4 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -132,7 +132,7 @@ const config: Config = { items: [ { label: "Discord", - href: "https://discord.gg/graphicsprogramming", + href: "https://discord.graphics-programming.org/", }, { label: "YouTube", diff --git a/src/pages/index.tsx b/src/pages/index.tsx index 1f7ff94..91eef9a 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -38,7 +38,7 @@ function HomepageHeader() { Join our Discord Server From 7a6ca73f67c532356ce8ca0abc5ac726fba67349 Mon Sep 17 00:00:00 2001 From: Jake Del Mastro Date: Sun, 10 Aug 2025 23:23:33 -0400 Subject: [PATCH 15/34] Update GP-Direct link --- src/pages/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/index.tsx b/src/pages/index.tsx index 91eef9a..0d0687b 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -25,7 +25,7 @@ function HomepageHeader() { className={styles.ytEmbed} width="960" height="520" - src="https://www.youtube.com/embed/E07I1VRYlcg?si=PUsHfqq3YKLIp2kS" + src="https://www.youtube.com/embed/V9vQ3kTqhj0?si=pb8qe-wIhYElMQQy" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" From f743983945b368721ecce658ab89623e8a28f98c Mon Sep 17 00:00:00 2001 From: "Jake S. Del Mastro" Date: Mon, 11 Aug 2025 13:17:57 -0400 Subject: [PATCH 16/34] Fix the damn link --- src/pages/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/index.tsx b/src/pages/index.tsx index 0d0687b..3d7f0e0 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -25,7 +25,7 @@ function HomepageHeader() { className={styles.ytEmbed} width="960" height="520" - src="https://www.youtube.com/embed/V9vQ3kTqhj0?si=pb8qe-wIhYElMQQy" + src="https://www.youtube.com/embed/e9qK6EtqB-Q?si=2Z-Ol5B1klF7bm8f" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" From 7918e94bc1e65a8a7fd1aeb908215253ed391d92 Mon Sep 17 00:00:00 2001 From: Eduardo Hernandez Melian Date: Thu, 25 Sep 2025 01:39:20 +0200 Subject: [PATCH 17/34] 300fps triangle blogpost --- .../2025-09-24-optimised-triangle/index.md | 27 +++++++++++++++++++ blog/authors.yml | 8 +++++- blog/tags.yml | 4 +++ 3 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 blog/2025/2025-09-24-optimised-triangle/index.md diff --git a/blog/2025/2025-09-24-optimised-triangle/index.md b/blog/2025/2025-09-24-optimised-triangle/index.md new file mode 100644 index 0000000..e1217fb --- /dev/null +++ b/blog/2025/2025-09-24-optimised-triangle/index.md @@ -0,0 +1,27 @@ +--- +title: 'help! my triangle is only 300fps!!!' +slug: 'optimised-triangle' +date: '2025-09-24' +authors: ['jaked', 'eduameli'] +tags: ['faq', 'article'] +--- + +Don't worry! your triangle running at a mere 300 fps is perfectly normal. The purpose of this post is to try to convince you it is not +a good use of your time to try to optimise hello-triangle. + +- 300fps is still pretty fast! ~3.33ms + +- FPS can be a misleading performance metric, as it changes non-linearly as you optimise your frame. + A 10fps difference from 60 to 70fps is ~2.38ms while the difference from 300 to 310fps is ~0.107ms. + To actually profile your application it is much better to use dedicated tools like Nsight Graphics or Tracy. + +- Modern GPUs are very complex, and performance **does not scale linearly with scene complexity**, for example, if one triangle runs at 300fps this doesnt mean five triangles will run at 60fps. + GPUs are designed to have really good throughput at the cost of latency. + +- When rendering one single triangle, most of your frametime may just be **overhead**, this could be WSI, driver, validation layers, ... + +- **hello-triangle** is simply not a representative workload for _real applications_, which are way more complex with lots of factors affecting performance and a **compromise between speed and + quality**. In order to properly judge the performance of your engine, you should at least use a test scene such as [Intel Sponza](https://www.intel.com/content/www/us/en/developer/topic-technology/graphics-research/samples.html) or + [Bistro](https://developer.nvidia.com/orca/amazon-lumberyard-bistro). + +good luck on your journey learning graphics! diff --git a/blog/authors.yml b/blog/authors.yml index dc95fa4..909199d 100644 --- a/blog/authors.yml +++ b/blog/authors.yml @@ -9,7 +9,7 @@ jaker: deccer: name: deccer - title: Graphics Programming Beginner + title: Combative Axis url: https://github.com/deccer image_url: https://avatars.githubusercontent.com/u/15695435?v=4 page: true @@ -51,3 +51,9 @@ devshgraphicsprogramming: page: true socials: github: devshgraphicsprogramming + +eduameli: + name: eduameli + title: graphics programming noob + url: https://eduameli.gitlab.io + image_url: https://avatars.githubusercontent.com/u/165940955?v=4 diff --git a/blog/tags.yml b/blog/tags.yml index 19e43b9..fa456b9 100644 --- a/blog/tags.yml +++ b/blog/tags.yml @@ -13,3 +13,7 @@ showcase: permalink: /showcase description: Graphics Programming Discord Server Showcase +faq: + label: FAQ + permalink: /FAQ + description: Frequently Asked Questions From 05ef521c8a91b59d280c8228259479f71c562f8c Mon Sep 17 00:00:00 2001 From: Eduardo Hernandez Melian Date: Fri, 26 Sep 2025 00:04:33 +0200 Subject: [PATCH 18/34] minor changes --- blog/2025/2025-09-24-optimised-triangle/index.md | 6 +++--- blog/tags.yml | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/blog/2025/2025-09-24-optimised-triangle/index.md b/blog/2025/2025-09-24-optimised-triangle/index.md index e1217fb..06c70ed 100644 --- a/blog/2025/2025-09-24-optimised-triangle/index.md +++ b/blog/2025/2025-09-24-optimised-triangle/index.md @@ -13,15 +13,15 @@ a good use of your time to try to optimise hello-triangle. - FPS can be a misleading performance metric, as it changes non-linearly as you optimise your frame. A 10fps difference from 60 to 70fps is ~2.38ms while the difference from 300 to 310fps is ~0.107ms. - To actually profile your application it is much better to use dedicated tools like Nsight Graphics or Tracy. + To actually profile your application it is much better to use dedicated tools like [Nsight Graphics](https://docs.nvidia.com/nsight-graphics/UserGuide/) or [Tracy](https://github.com/wolfpld/tracy). - Modern GPUs are very complex, and performance **does not scale linearly with scene complexity**, for example, if one triangle runs at 300fps this doesnt mean five triangles will run at 60fps. GPUs are designed to have really good throughput at the cost of latency. -- When rendering one single triangle, most of your frametime may just be **overhead**, this could be WSI, driver, validation layers, ... +- When rendering one single triangle, most of your frametime may just be **overhead**, this could be your window manager, driver or API state validation to name a few. - **hello-triangle** is simply not a representative workload for _real applications_, which are way more complex with lots of factors affecting performance and a **compromise between speed and quality**. In order to properly judge the performance of your engine, you should at least use a test scene such as [Intel Sponza](https://www.intel.com/content/www/us/en/developer/topic-technology/graphics-research/samples.html) or [Bistro](https://developer.nvidia.com/orca/amazon-lumberyard-bistro). -good luck on your journey learning graphics! +Good luck on your journey learning graphics! diff --git a/blog/tags.yml b/blog/tags.yml index fa456b9..9560f07 100644 --- a/blog/tags.yml +++ b/blog/tags.yml @@ -14,6 +14,6 @@ showcase: description: Graphics Programming Discord Server Showcase faq: - label: FAQ - permalink: /FAQ + label: faq + permalink: /faq description: Frequently Asked Questions From 0df6b8fb04a5484ae8b93a7aff5ddc956cb48f78 Mon Sep 17 00:00:00 2001 From: Rafale25 Date: Tue, 7 Oct 2025 18:54:54 +0200 Subject: [PATCH 19/34] Added Rafale25 to the froglist --- static/webring/froglist.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/static/webring/froglist.json b/static/webring/froglist.json index de4e856..39defaa 100644 --- a/static/webring/froglist.json +++ b/static/webring/froglist.json @@ -82,5 +82,11 @@ "url": "https://www.devsh.eu/", "displayName": "DevSH Graphics Programming", "description": "Homepage of DevSH Graphics Programming: Computer Graphics, Computer Geometry & Vision and High Performance Computing Consultancy" + }, + { + "name": "rafale25", + "url": "https://rafale25.dev/", + "displayName": "Rafale25", + "description": "Personal where I share my projects" } ] From 063ea21e3699d1b637946a1f8ae8ca689a0b3ce1 Mon Sep 17 00:00:00 2001 From: Rafale25 Date: Wed, 8 Oct 2025 00:14:50 +0200 Subject: [PATCH 20/34] fix froglist Rafale25's description missing word --- static/webring/froglist.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/static/webring/froglist.json b/static/webring/froglist.json index 39defaa..ec32f83 100644 --- a/static/webring/froglist.json +++ b/static/webring/froglist.json @@ -87,6 +87,6 @@ "name": "rafale25", "url": "https://rafale25.dev/", "displayName": "Rafale25", - "description": "Personal where I share my projects" + "description": "Personal website where I share my projects" } ] From 259309e60d0691ac8386493102b0a17b4061c3a2 Mon Sep 17 00:00:00 2001 From: Sarah Dubois Date: Thu, 16 Oct 2025 13:17:27 -0700 Subject: [PATCH 21/34] add sarah to froglist --- static/webring/froglist.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/static/webring/froglist.json b/static/webring/froglist.json index ec32f83..454f313 100644 --- a/static/webring/froglist.json +++ b/static/webring/froglist.json @@ -88,5 +88,11 @@ "url": "https://rafale25.dev/", "displayName": "Rafale25", "description": "Personal website where I share my projects" + }, + { + "name": "sarah", + "url": "https://sarahshandcraftedentertainment.com/", + "displayName": "DethRaid", + "description": "Homepage of Sarah's Handcrafted Entertainment" } ] From 780d24995a3a62810c64d0327afd75c889257f22 Mon Sep 17 00:00:00 2001 From: Ross Lombardi Date: Sun, 19 Oct 2025 23:46:21 -0400 Subject: [PATCH 22/34] initial commit, uis are hard --- .../2025-10-19-uis-are-hard/assure-you.png | Bin 0 -> 5526 bytes .../how-it-started.png | Bin 0 -> 243625 bytes blog/2025/2025-10-19-uis-are-hard/index.md | 364 ++++++++++++++++++ .../2025-10-19-uis-are-hard/layout-whoops.png | Bin 0 -> 16318 bytes .../simple-example.png | Bin 0 -> 25254 bytes .../template-stuff-2.png | Bin 0 -> 30072 bytes .../template-stuff-3.png | Bin 0 -> 25629 bytes .../template-stuff.png | Bin 0 -> 31435 bytes .../2025-10-19-uis-are-hard/ui-mark-2.png | Bin 0 -> 49338 bytes .../2025-10-19-uis-are-hard/ui-mark-3.png | Bin 0 -> 209320 bytes .../2025-10-19-uis-are-hard/ui-overview.png | Bin 0 -> 277953 bytes blog/authors.yml | 7 + 12 files changed, 371 insertions(+) create mode 100644 blog/2025/2025-10-19-uis-are-hard/assure-you.png create mode 100644 blog/2025/2025-10-19-uis-are-hard/how-it-started.png create mode 100644 blog/2025/2025-10-19-uis-are-hard/index.md create mode 100644 blog/2025/2025-10-19-uis-are-hard/layout-whoops.png create mode 100644 blog/2025/2025-10-19-uis-are-hard/simple-example.png create mode 100644 blog/2025/2025-10-19-uis-are-hard/template-stuff-2.png create mode 100644 blog/2025/2025-10-19-uis-are-hard/template-stuff-3.png create mode 100644 blog/2025/2025-10-19-uis-are-hard/template-stuff.png create mode 100644 blog/2025/2025-10-19-uis-are-hard/ui-mark-2.png create mode 100644 blog/2025/2025-10-19-uis-are-hard/ui-mark-3.png create mode 100644 blog/2025/2025-10-19-uis-are-hard/ui-overview.png diff --git a/blog/2025/2025-10-19-uis-are-hard/assure-you.png b/blog/2025/2025-10-19-uis-are-hard/assure-you.png new file mode 100644 index 0000000000000000000000000000000000000000..d15d1c7f8711c60800400b2e778a30d57463d97a GIT binary patch literal 5526 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 p#<&kZjQG{nwy?gr{hTwBKl*w`xceJ|FCNvvk9 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 {^Jh;bd6ojZJff7QEz#IL9 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 f4Gco=;wg-D8RxC`? + +Other topics, such as data binding (don't be fooled by this only being two words, this is *type-checked* on game startup), callbacks, the click feedback system, the dialog transition system, text rendering (which, [hates you](https://faultlore.com/blah/text-hates-you/)), the UI loader (a rather vital part), the lame UI editor, the script wait system, the UI flow and layout system, how the UI is rendered, the "vis stack" (again, don't be fooled by it only being two words), dialog navigation (yep), the UI event system, lists, the placeholder text system, and how the data is actually organized engine-side will be left to future articles. + +![Menu Overview](ui-overview.png) + +## But First + +I will be blunt: I will neither encourage nor discourage you from using the general paradigm used by Twin Gods' UI. This is only one man's journey from an empty code file to a fully-featured UI that could actually be used in a professional video game. And let me tell you, I'm as surprised as you are. + +A few names. Twin Gods' engine is dubbed **Hauntlet**. The UI library has no name so we'll refer to it as "Twin Gods UI", or "TGUI" (because I think HUI sounds silly). Like all the rest of Hauntlet, it is in C++ and is rendered with OpenGL 4.6. + +## Let's Begin + +Let's see how it all started. + +![How It Began](how-it-started.png) + +Rough, eh? That screenshot is dated 2011. Nevermind the hilarious artwork, how did TGUI go from a fever dream to something someone might not actually downvote on Steam out of sheer anger? + +The basics of TGUI have not changed since 2011 ([\*1](#note-id-1)). The main workhorse is a class called `DialogItem`. TGUI has no "controls" as you'd expect of a UI library, which is a relic from its early days as a "I didn't know what I was doing" sort of thing ([\*2](#note-id-2)). Every UI element is a `DialogItem`. `DialogItem` contains a `std::vector` member. If I remember right, the original version contained only the very basics: support for a background image, on-click event, text, child elements, and the layout type (row, column, pure x/y). It also used to support drag and drop. Implement *that* at your own peril. + +It's gotten more complicated since and, you'll be happy to know, the concept of controls has emerged, though not through the C++ side of things. We'll get to that in later articles. This means that every UI element contains all the attributes used to make up everything seen in the UI. `DialogItem` is reported as being 1,480 bytes in release mode. It's quite large. + +But of course, the definition of a TGUI `UIFrame` is just as important as the engine code behind it. TGUI's XML might as well be its own language and is one of its primary strengths, I think. + +Ok, I lied. There is one specific control: lists. For a later article. + +## Eww, XML! + +All screenshots in this article were captured from the running game. + +Here's a simple example UIFrame. + +```xml + + + +``` + +That XML produces this UI. + +![Simple Example](simple-example.png) + +Much of the XML should be self-explanatory but let's cover a few less-obvious points. + +* `BackColor` is applied on top of any materials. + +* The astute reader may note the `;` hanging out in front of the `Background` attribute. For better or worse TGUI's XML reflects its history, a problem you run into when your code is over a decade old ([\*3](#note-id-3)). The semicolon denotes a material file. `Background="plain texture.png"` would specify a texture directly. A "material" is simply a texture and shader with values for uniforms. Materials came much later. Very recently, in fact. + +* `Anchor` is a note to the layout and flow code. It determines the initial position of the dialog. "Center" simply means it is laid out in the middle of its parent. Other options are "TopLeft", "Top", "TopRight", etc. + +* `Name` is how the frame is referred to in code and via any scripts (in Lua). + +From the beginning, TGUI used XML ([\*4](#note-id-4)). Much has been added but the basic file format has not changed much in the past 13 years. The entire UI is defined in a single file, "UI Frames.xml". + +## High-Level Storage Concept + +An aside on data. + +Due to the class names on the engine side, I tend to refer to any "UI element" as a "dialog", which corresponds to the `DialogItem` class. The above XML produces 2 dialogs (or `DialogItem`s): the top-level "UIFrame" node and the "Node" node. The entire `DialogItem` tree is then stuffed into a `UIFrame` object and stored in a list: `std::vector UIFrames`. I may also refer to a "UI frame" more casually in-game (say, to non-technical players) as a "window" or "screen". + +It's important to note that a `UIFrame` is single-instance. Once loaded, the engine does not duplicate or create a new instance of any of these objects when they are displayed in-game. The tree is never touched after load. The whole tree of a `UIFrame` is displayed at once, barring any dialogs that are set invisible. This `UIFrames` (note the "s") list has the same lifetime as the running game. At a basic level, this `UIFrame` object is a fancy container for a single UI tree with additional properties left for future articles. + +Obviously, even though the *tree* is essentially read-only, the actual `DialogItem`s are written to quite frequently, especially during data binding. + +Note that each `UIFrame` in the XML file *can* be stored in a variable for use in code (data binding, showing windows to the player, etc.). All `UIFrame`s *do* exist in the UIFrames *list* (or they could not be found otherwise) but many important `UIFrame`s also have a hard variable in the engine for direct reference in code (eg, `UIFrames().simple_example.show()`). + +## Materials + +Here's the definition of the material used above ([\*5](#note-id-5)): + +```xml title="materials\unit speech frame.mat" + + + + + + + +``` + +I won't show the shader but it is a basic "9-slice" shader with suport for coloring at the 4 corners and a border color, hence the 5 uniforms. **It cannot be overstated how important materials were to the look of Twin Gods' UI, and the ease of development.** The screenshot shown in the top of the article represents the third major "rewrite" of the UI. + +More on how this helped a little later. + +## UI Styles + +You'll notice in the material definition that there is are `color` attributes not set to any colors you know. `value` can be set to a hex color starting with a "#", or it can be set to a named color defined in the "UI Styles" file. "UI Styles.xml" is a lovely companion piece to "UI Frames.xml". + +It can define colors: + +```xml + + +``` +Why both ways? A decade of legacy cruft (and, importantly, laziness). + +It can also define fonts. + +```xml + + +``` + +It can even define the prefix folder used to determine where to pull fonts from because I'm lazy and haven't updated the `Font` attribute to work like literally every other in-game asset after the last `FileSystem` refactor. + +```xml + +``` + +You'll notice on the UIFrame XML definition that there was `FontStyle` attribute, which makes it look like each dialog only supports a single. + +![I Assure You](assure-you.png) + +Text format style will be covered in a later article. + +In any case, the "UI Styles" file is a vague CSS-like system, any by CSS I mean I can specify color, font face, font size, shader, outline, and a few other things and that's basically it. + +I should note before anyone gets mad that if `DropShadow` appears in a `FontStyle`, the `Outline` color becomes the drop shadow color. 13 years of *cruft*! + +## Templates, In My UI? + +One of the more interesting features, I think, is TGUI's template capability. This is why TGUI will probably never get official support for controls. Brace yourself, the XML only gets uglier from here. + +```xml + + + + + + + + +``` + +The above XML produces this: + +![Templated Fields](template-stuff.png) + +I said earlier the engine treats the UI tree as essentially read-only, right? So what happened? The template system happened, that's what. + +Before that, quickly, `DownBox` flows all child dialogs as rows and `AcrossBox` flows all child dialogs as columns. `Node` is expected to have no children, applies no flow, and is basically undefined behavior if you try it. (`Node` is mostly symbolic; you can absolutely have `DownBox` as a leaf.) + +## How Templates Expand + +When the UI loader encounters a `Template` node, it is put aside into a separate "templates" list, noting the name, and moves on to the next top-level node. When it encounters an XML node of the name format `ValidNodeType:TemplateName`, the template system kicks in, and it's rather simple (in theory). + +The previously-set-aside node now acts like it was copied and pasted in-place. + +This XML: + +```xml + +``` + +Is expanded to become: + +```xml + + + + +``` + +`AcrossBox:test-field` pulls the XML for `test-field`, copying and pasting it and all its child nodes on top of the `AcrossBox` node, as if `AcrossBox` is the same node as the `Template` top-level node. To make this last point more clear: `BackColor="Red"` (which visually does nothing here), overwrites `BackColor="White"` (also does nothing). + +### Templated Attribute Resolution + +The template parser sees the same attribute (`BackColor`, in this case) on the same node, post-parse, as the top-level `Template` node and overwrites the template's attribute with the incoming real node. On the second `AcrossBox`, the template's original `BackColor="White"` stays because the incoming real node has no such attribute. + +### Template Attribute Expansion Assignment + +What about `label:Text` and `value:Text`? The syntax may be cursed but I could not live without this feature. It searches down the tree (depth only) until it finds a dialog with the given name and then sets the given attribute. This is part of the "grand success" of how templates work. Data binding abuses this whole-heartedly and quite literally makes some features possible. + +### Improve the Look With Templates + +Getting back to our example, it still looks a little weird. The label is not a fixed size. We can make this a little better without putting a size everywhere. More XML. + +```xml +