Skip to content

KernelInterface: wrap the shuffle test values of narrow types - #888

Merged
maleadt merged 1 commit into
mainfrom
tb/ki-shuffle-test-wide
Oct 13, 2026
Merged

maleadt merged 1 commit into
mainfrom
tb/ki-shuffle-test-wide

Conversation

@maleadt

@maleadt maleadt commented Oct 13, 2026

Copy link
Copy Markdown
Member

With 64-wide sub-groups the shuffle tests use up to 133 work-items, and the values for the Tuple{Bool, Int8, Float16, UInt16} field fallback converted -i to Int8, throwing InexactError: trunc(Int8, -129) while building the inputs. This fails AMDGPU.jl#1117 on MI250X and MI300A (CSCS); width-32 back ends never get past 69 work-items.

Wrap that value, and the UInt8 values that would fail the same way at width 128. Bumps KernelInterface to 0.4.1, since the back ends run the test suite from the registered package.

With 64-wide sub-groups the shuffle tests use up to 133 work-items, and the values for the
`Tuple{Bool, Int8, Float16, UInt16}` field fallback converted `-i` to `Int8` with an
`InexactError` past 128, failing AMDGPU on MI250X and MI300A. Wrap it, and the `UInt8`
values that would fail the same way at width 128. Bump KernelInterface to 0.4.1.
@github-actions

Copy link
Copy Markdown
Contributor

Benchmark Results

Show table
main 203fd3e... main / 203fd3e...
const/@Const/Float32/262144 0.255 ± 0.0098 ms 0.239 ± 0.0079 ms 1.07 ± 0.054
const/@Const/Float32/65536 0.0834 ± 0.0046 ms 0.0811 ± 0.0041 ms 1.03 ± 0.077
const/@Const/Float64/262144 0.418 ± 0.011 ms 0.419 ± 0.013 ms 0.998 ± 0.04
const/@Const/Float64/65536 0.126 ± 0.0057 ms 0.125 ± 0.0042 ms 1.01 ± 0.057
const/unmarked/Float32/262144 0.343 ± 0.015 ms 0.318 ± 0.011 ms 1.08 ± 0.061
const/unmarked/Float32/65536 0.0998 ± 0.011 ms 0.0999 ± 0.011 ms 0.999 ± 0.15
const/unmarked/Float64/262144 0.584 ± 0.019 ms 0.594 ± 0.016 ms 0.983 ± 0.042
const/unmarked/Float64/65536 0.158 ± 0.0071 ms 0.159 ± 0.0074 ms 0.992 ± 0.064
dgsem/2D/Float32/fluxdiff/element 0.32 ± 0.012 ms 0.312 ± 0.0093 ms 1.03 ± 0.05
dgsem/2D/Float32/fluxdiff/node E=8 0.432 ± 0.011 ms 0.428 ± 0.0095 ms 1.01 ± 0.035
dgsem/2D/Float32/fluxdiff/node halfsweep E=8 0.32 ± 0.011 ms 0.317 ± 0.012 ms 1.01 ± 0.05
dgsem/2D/Float32/fluxdiff/node halfsweep v-last E=8 0.332 ± 0.015 ms 0.336 ± 0.016 ms 0.988 ± 0.063
dgsem/2D/Float32/weak/element 0.118 ± 0.0074 ms 0.109 ± 0.0038 ms 1.08 ± 0.077
dgsem/2D/Float32/weak/element private 0.123 ± 0.006 ms 0.119 ± 0.0069 ms 1.04 ± 0.079
dgsem/2D/Float32/weak/node localmem E=1 0.104 ± 0.0069 ms 0.104 ± 0.0024 ms 1 ± 0.07
dgsem/2D/Float32/weak/node localmem E=8 0.102 ± 0.0032 ms 0.108 ± 0.013 ms 0.946 ± 0.12
dgsem/2D/Float32/weak/node localmem v-last E=1 0.157 ± 0.0096 ms 0.156 ± 0.0061 ms 1.01 ± 0.073
dgsem/2D/Float32/weak/node localmem v-last E=8 0.154 ± 0.0086 ms 0.154 ± 0.0076 ms 1 ± 0.075
dgsem/2D/Float32/weak/node recompute E=8 0.278 ± 0.0077 ms 0.28 ± 0.0093 ms 0.992 ± 0.043
dgsem/2D/Float64/fluxdiff/element 0.33 ± 0.01 ms 0.336 ± 0.011 ms 0.983 ± 0.044
dgsem/2D/Float64/fluxdiff/node E=8 0.468 ± 0.011 ms 0.468 ± 0.0097 ms 1 ± 0.031
dgsem/2D/Float64/fluxdiff/node halfsweep E=8 0.349 ± 0.013 ms 0.359 ± 0.017 ms 0.972 ± 0.059
dgsem/2D/Float64/fluxdiff/node halfsweep v-last E=8 0.331 ± 0.011 ms 0.338 ± 0.015 ms 0.978 ± 0.053
dgsem/2D/Float64/weak/element 0.125 ± 0.0091 ms 0.126 ± 0.0095 ms 0.995 ± 0.1
dgsem/2D/Float64/weak/element private 0.128 ± 0.0065 ms 0.129 ± 0.0066 ms 0.996 ± 0.072
dgsem/2D/Float64/weak/node localmem E=1 0.111 ± 0.014 ms 0.106 ± 0.016 ms 1.04 ± 0.2
dgsem/2D/Float64/weak/node localmem E=8 0.103 ± 0.0039 ms 0.103 ± 0.0031 ms 0.996 ± 0.048
dgsem/2D/Float64/weak/node localmem v-last E=1 0.157 ± 0.0084 ms 0.159 ± 0.01 ms 0.991 ± 0.082
dgsem/2D/Float64/weak/node localmem v-last E=8 0.155 ± 0.0047 ms 0.156 ± 0.0078 ms 0.992 ± 0.058
dgsem/2D/Float64/weak/node recompute E=8 0.384 ± 0.0085 ms 0.385 ± 0.0082 ms 0.998 ± 0.031
dgsem/3D/Float32/fluxdiff/element 1.06 ± 0.015 ms 1.08 ± 0.049 ms 0.982 ± 0.047
dgsem/3D/Float32/fluxdiff/node E=2 1.76 ± 0.012 ms 1.78 ± 0.014 ms 0.992 ± 0.01
dgsem/3D/Float32/fluxdiff/node halfsweep E=1 1.12 ± 0.024 ms 1.12 ± 0.021 ms 1 ± 0.028
dgsem/3D/Float32/fluxdiff/node halfsweep v-last E=1 1.35 ± 0.01 ms 1.29 ± 0.0081 ms 1.04 ± 0.01
dgsem/3D/Float32/weak/element 0.404 ± 0.02 ms 0.399 ± 0.0097 ms 1.01 ± 0.056
dgsem/3D/Float32/weak/element private 0.404 ± 0.011 ms 0.403 ± 0.0094 ms 1 ± 0.035
dgsem/3D/Float32/weak/node localmem E=1 0.516 ± 0.011 ms 0.518 ± 0.012 ms 0.996 ± 0.031
dgsem/3D/Float32/weak/node localmem E=2 0.527 ± 0.009 ms 0.529 ± 0.013 ms 0.996 ± 0.03
dgsem/3D/Float32/weak/node localmem v-last E=1 0.774 ± 0.019 ms 0.767 ± 0.009 ms 1.01 ± 0.027
dgsem/3D/Float32/weak/node localmem v-last E=2 0.815 ± 0.029 ms 0.782 ± 0.018 ms 1.04 ± 0.045
dgsem/3D/Float32/weak/node recompute E=2 1.25 ± 0.026 ms 1.25 ± 0.0061 ms 1 ± 0.021
dgsem/3D/Float32/weak/slab E=1 1.41 ± 0.01 ms 1.41 ± 0.0073 ms 1 ± 0.009
dgsem/3D/Float32/weak/slab E=8 4 ± 0.091 ms 3.85 ± 0.038 ms 1.04 ± 0.026
dgsem/3D/Float32/weak/slab double-buffered E=1 0.884 ± 0.025 ms 0.89 ± 0.012 ms 0.993 ± 0.031
dgsem/3D/Float32/weak/slab double-buffered E=8 0.992 ± 0.0069 ms 0.992 ± 0.0026 ms 1 ± 0.0074
dgsem/3D/Float32/weak/slab double-buffered v-last E=1 0.9 ± 0.0097 ms 0.885 ± 0.012 ms 1.02 ± 0.018
dgsem/3D/Float32/weak/slab double-buffered v-last E=8 1 ± 0.017 ms 1 ± 0.0058 ms 0.998 ± 0.018
dgsem/3D/Float32/weak/slab v-last E=1 1.44 ± 0.017 ms 1.43 ± 0.074 ms 1.01 ± 0.053
dgsem/3D/Float32/weak/slab v-last E=8 3.76 ± 0.021 ms 4.1 ± 0.018 ms 0.915 ± 0.0066
dgsem/3D/Float64/fluxdiff/element 1.12 ± 0.042 ms 1.12 ± 0.016 ms 1 ± 0.04
dgsem/3D/Float64/fluxdiff/node E=2 1.86 ± 0.0084 ms 1.87 ± 0.011 ms 0.995 ± 0.0075
dgsem/3D/Float64/fluxdiff/node halfsweep E=1 1.13 ± 0.014 ms 1.17 ± 0.068 ms 0.965 ± 0.057
dgsem/3D/Float64/fluxdiff/node halfsweep v-last E=1 1.34 ± 0.019 ms 1.34 ± 0.026 ms 1 ± 0.024
dgsem/3D/Float64/weak/element 0.467 ± 0.012 ms 0.465 ± 0.012 ms 1 ± 0.036
dgsem/3D/Float64/weak/element private 0.479 ± 0.01 ms 0.48 ± 0.015 ms 0.998 ± 0.038
dgsem/3D/Float64/weak/node localmem E=1 0.536 ± 0.0078 ms 0.539 ± 0.0078 ms 0.994 ± 0.02
dgsem/3D/Float64/weak/node localmem E=2 0.55 ± 0.013 ms 0.548 ± 0.011 ms 1 ± 0.031
dgsem/3D/Float64/weak/node localmem v-last E=1 0.781 ± 0.015 ms 0.784 ± 0.0072 ms 0.996 ± 0.022
dgsem/3D/Float64/weak/node localmem v-last E=2 0.803 ± 0.0038 ms 0.795 ± 0.0034 ms 1.01 ± 0.0064
dgsem/3D/Float64/weak/node recompute E=2 1.34 ± 0.016 ms 1.35 ± 0.011 ms 0.992 ± 0.014
dgsem/3D/Float64/weak/slab E=1 1.43 ± 0.012 ms 1.43 ± 0.0077 ms 1 ± 0.0099
dgsem/3D/Float64/weak/slab E=8 3.77 ± 0.015 ms 4.17 ± 0.044 ms 0.905 ± 0.01
dgsem/3D/Float64/weak/slab double-buffered E=1 0.915 ± 0.017 ms 0.9 ± 0.0042 ms 1.02 ± 0.02
dgsem/3D/Float64/weak/slab double-buffered E=8 1.03 ± 0.022 ms 1.03 ± 0.014 ms 0.999 ± 0.025
dgsem/3D/Float64/weak/slab double-buffered v-last E=1 0.906 ± 0.0058 ms 0.9 ± 0.0081 ms 1.01 ± 0.011
dgsem/3D/Float64/weak/slab double-buffered v-last E=8 1.02 ± 0.012 ms 1.02 ± 0.02 ms 0.998 ± 0.023
dgsem/3D/Float64/weak/slab v-last E=1 1.43 ± 0.023 ms 1.43 ± 0.06 ms 0.998 ± 0.045
dgsem/3D/Float64/weak/slab v-last E=8 4.01 ± 0.15 ms 3.78 ± 0.062 ms 1.06 ± 0.043
launch/3D static workgroup, dynamic ndrange 6.98 ± 1.1 μs 7.01 ± 0.98 μs 0.995 ± 0.21
launch/3D static workgroup, static ndrange 7.67 ± 0.78 μs 7.41 ± 1.1 μs 1.04 ± 0.18
launch/dynamic workgroup, dynamic ndrange 7.66 ± 1.1 μs 7.59 ± 1.1 μs 1.01 ± 0.2
launch/dynamic workgroup, dynamic ndrange, workgroupsize given 7.75 ± 0.97 μs 7.74 ± 1.1 μs 1 ± 0.19
launch/static workgroup, dynamic ndrange 7 ± 1.1 μs 7.71 ± 1 μs 0.909 ± 0.19
launch/static workgroup, static ndrange 7.22 ± 1.1 μs 7.44 ± 1.2 μs 0.971 ± 0.21
narrow workgroup/masked/W=16 0.279 ± 0.009 ms 0.268 ± 0.0083 ms 1.04 ± 0.047
narrow workgroup/masked/W=4 0.275 ± 0.0074 ms 0.302 ± 0.011 ms 0.912 ± 0.042
narrow workgroup/unmasked/W=16 0.274 ± 0.0092 ms 0.264 ± 0.0091 ms 1.04 ± 0.05
narrow workgroup/unmasked/W=4 0.266 ± 0.0093 ms 0.268 ± 0.011 ms 0.992 ± 0.054
partition/dynamic workgroup, dynamic ndrange 0.033 ± 0.017 μs 0.0345 ± 0.016 μs 0.957 ± 0.66
partition/static workgroup, dynamic ndrange 0.0428 ± 0.0045 μs 0.0407 ± 0.0096 μs 1.05 ± 0.27
partition/static workgroup, static ndrange 1.62 ± 0.01 ns 1.55 ± 0.001 ns 1.05 ± 0.0065
saxpy/default/Float16/1024 7.73 ± 0.73 μs 8.44 ± 2.1 μs 0.916 ± 0.24
saxpy/default/Float16/1048576 0.362 ± 0.031 ms 0.371 ± 0.033 ms 0.977 ± 0.12
saxpy/default/Float16/16384 14.3 ± 0.66 μs 14.8 ± 0.9 μs 0.966 ± 0.074
saxpy/default/Float16/2048 8.25 ± 0.86 μs 8.74 ± 0.75 μs 0.944 ± 0.13
saxpy/default/Float16/256 7.53 ± 0.22 μs 8.91 ± 1.3 μs 0.845 ± 0.13
saxpy/default/Float16/262144 0.113 ± 0.022 ms 0.109 ± 0.009 ms 1.04 ± 0.22
saxpy/default/Float16/32768 19.2 ± 1.3 μs 20 ± 2 μs 0.961 ± 0.12
saxpy/default/Float16/4096 8.58 ± 0.99 μs 9.42 ± 0.6 μs 0.911 ± 0.12
saxpy/default/Float16/512 7.59 ± 1.8 μs 7.59 ± 0.17 μs 0.999 ± 0.24
saxpy/default/Float16/64 7.57 ± 0.3 μs 7.56 ± 0.33 μs 1 ± 0.059
saxpy/default/Float16/65536 28.3 ± 2.4 μs 28.7 ± 1.4 μs 0.984 ± 0.095
saxpy/default/Float32/1024 7.45 ± 0.84 μs 8.06 ± 0.72 μs 0.924 ± 0.13
saxpy/default/Float32/1048576 0.307 ± 0.055 ms 0.375 ± 0.079 ms 0.82 ± 0.23
saxpy/default/Float32/16384 10.3 ± 2 μs 10.5 ± 1.2 μs 0.983 ± 0.22
saxpy/default/Float32/2048 7.55 ± 1.2 μs 7.83 ± 0.94 μs 0.965 ± 0.19
saxpy/default/Float32/256 7.48 ± 0.38 μs 7.75 ± 1.4 μs 0.966 ± 0.18
saxpy/default/Float32/262144 0.106 ± 0.061 ms 0.122 ± 0.078 ms 0.875 ± 0.75
saxpy/default/Float32/32768 17.7 ± 1.6 μs 17.8 ± 2.2 μs 0.995 ± 0.15
saxpy/default/Float32/4096 7.9 ± 0.9 μs 8.58 ± 0.21 μs 0.921 ± 0.11
saxpy/default/Float32/512 7.84 ± 2 μs 7.75 ± 0.7 μs 1.01 ± 0.28
saxpy/default/Float32/64 7.4 ± 1.2 μs 7.55 ± 1 μs 0.98 ± 0.2
saxpy/default/Float32/65536 24.5 ± 5.4 μs 24.7 ± 4 μs 0.994 ± 0.27
saxpy/default/Float64/1024 7.74 ± 0.7 μs 8.53 ± 1.8 μs 0.908 ± 0.2
saxpy/default/Float64/1048576 0.603 ± 0.16 ms 0.633 ± 0.15 ms 0.952 ± 0.35
saxpy/default/Float64/16384 16 ± 2.2 μs 16.7 ± 2.2 μs 0.962 ± 0.18
saxpy/default/Float64/2048 7.86 ± 0.89 μs 8.55 ± 2.1 μs 0.919 ± 0.25
saxpy/default/Float64/256 9.23 ± 2 μs 7.35 ± 1.3 μs 1.26 ± 0.36
saxpy/default/Float64/262144 0.137 ± 0.019 ms 0.144 ± 0.017 ms 0.951 ± 0.17
saxpy/default/Float64/32768 21.8 ± 2.1 μs 24.3 ± 4.8 μs 0.898 ± 0.2
saxpy/default/Float64/4096 8.19 ± 1 μs 8.71 ± 0.81 μs 0.94 ± 0.15
saxpy/default/Float64/512 7.69 ± 0.76 μs 7.72 ± 0.67 μs 0.996 ± 0.13
saxpy/default/Float64/64 7.53 ± 1.1 μs 7.4 ± 1.1 μs 1.02 ± 0.22
saxpy/default/Float64/65536 0.0399 ± 0.018 ms 0.0337 ± 0.0056 ms 1.19 ± 0.56
saxpy/static workgroup=(1024,)/Float16/1024 7.96 ± 0.64 μs 7.83 ± 0.92 μs 1.02 ± 0.15
saxpy/static workgroup=(1024,)/Float16/1048576 0.321 ± 0.025 ms 0.342 ± 0.026 ms 0.938 ± 0.1
saxpy/static workgroup=(1024,)/Float16/16384 14.1 ± 0.88 μs 14.5 ± 1.7 μs 0.972 ± 0.13
saxpy/static workgroup=(1024,)/Float16/2048 8.15 ± 1.1 μs 8.55 ± 0.53 μs 0.953 ± 0.14
saxpy/static workgroup=(1024,)/Float16/256 7.62 ± 0.43 μs 7.76 ± 0.28 μs 0.982 ± 0.065
saxpy/static workgroup=(1024,)/Float16/262144 0.102 ± 0.0097 ms 0.103 ± 0.009 ms 0.988 ± 0.13
saxpy/static workgroup=(1024,)/Float16/32768 18.3 ± 1 μs 18.8 ± 1.3 μs 0.973 ± 0.087
saxpy/static workgroup=(1024,)/Float16/4096 8.72 ± 1.1 μs 9.21 ± 1.9 μs 0.947 ± 0.23
saxpy/static workgroup=(1024,)/Float16/512 7.52 ± 0.15 μs 7.8 ± 0.23 μs 0.964 ± 0.035
saxpy/static workgroup=(1024,)/Float16/64 7.65 ± 0.21 μs 8.53 ± 1.1 μs 0.897 ± 0.12
saxpy/static workgroup=(1024,)/Float16/65536 26.9 ± 1.1 μs 27.3 ± 1 μs 0.985 ± 0.054
saxpy/static workgroup=(1024,)/Float32/1024 7.8 ± 0.88 μs 7.81 ± 2.6 μs 0.999 ± 0.35
saxpy/static workgroup=(1024,)/Float32/1048576 0.273 ± 0.045 ms 0.346 ± 0.069 ms 0.791 ± 0.2
saxpy/static workgroup=(1024,)/Float32/16384 10.2 ± 1.6 μs 9.91 ± 1.2 μs 1.03 ± 0.21
saxpy/static workgroup=(1024,)/Float32/2048 7.88 ± 0.96 μs 7.51 ± 1.1 μs 1.05 ± 0.2
saxpy/static workgroup=(1024,)/Float32/256 7.54 ± 0.25 μs 7.72 ± 0.56 μs 0.977 ± 0.078
saxpy/static workgroup=(1024,)/Float32/262144 0.0911 ± 0.036 ms 0.0947 ± 0.043 ms 0.962 ± 0.57
saxpy/static workgroup=(1024,)/Float32/32768 17.1 ± 3.2 μs 17.4 ± 1.7 μs 0.981 ± 0.21
saxpy/static workgroup=(1024,)/Float32/4096 8.36 ± 1.7 μs 8.07 ± 0.81 μs 1.04 ± 0.23
saxpy/static workgroup=(1024,)/Float32/512 7.31 ± 1 μs 7.31 ± 0.9 μs 1 ± 0.19
saxpy/static workgroup=(1024,)/Float32/64 7.5 ± 0.16 μs 7.67 ± 0.28 μs 0.979 ± 0.042
saxpy/static workgroup=(1024,)/Float32/65536 22 ± 7.1 μs 24.2 ± 4.8 μs 0.908 ± 0.34
saxpy/static workgroup=(1024,)/Float64/1024 7.17 ± 0.8 μs 7.62 ± 1.3 μs 0.941 ± 0.19
saxpy/static workgroup=(1024,)/Float64/1048576 0.51 ± 0.094 ms 0.615 ± 0.088 ms 0.829 ± 0.19
saxpy/static workgroup=(1024,)/Float64/16384 11.4 ± 2.2 μs 11.3 ± 1.8 μs 1 ± 0.26
saxpy/static workgroup=(1024,)/Float64/2048 8.25 ± 1.9 μs 7.84 ± 1.1 μs 1.05 ± 0.28
saxpy/static workgroup=(1024,)/Float64/256 7.22 ± 0.74 μs 7.41 ± 1 μs 0.974 ± 0.17
saxpy/static workgroup=(1024,)/Float64/262144 0.123 ± 0.018 ms 0.136 ± 0.02 ms 0.903 ± 0.19
saxpy/static workgroup=(1024,)/Float64/32768 21.4 ± 3.9 μs 22.4 ± 3.3 μs 0.952 ± 0.22
saxpy/static workgroup=(1024,)/Float64/4096 8.25 ± 0.95 μs 8.35 ± 0.91 μs 0.988 ± 0.16
saxpy/static workgroup=(1024,)/Float64/512 7.05 ± 0.87 μs 8.01 ± 2.3 μs 0.88 ± 0.27
saxpy/static workgroup=(1024,)/Float64/64 7.45 ± 0.18 μs 7.64 ± 0.18 μs 0.974 ± 0.032
saxpy/static workgroup=(1024,)/Float64/65536 0.034 ± 0.0092 ms 0.0334 ± 0.013 ms 1.02 ± 0.47
time_to_load 0.344 ± 0.0052 s 0.363 ± 0.014 s 0.949 ± 0.04
main 203fd3e... main / 203fd3e...
const/@Const/Float32/262144 9 allocs: 0.203 kB 9 allocs: 0.203 kB 1
const/@Const/Float32/65536 9 allocs: 0.203 kB 9 allocs: 0.203 kB 1
const/@Const/Float64/262144 9 allocs: 0.203 kB 9 allocs: 0.203 kB 1
const/@Const/Float64/65536 9 allocs: 0.203 kB 9 allocs: 0.203 kB 1
const/unmarked/Float32/262144 9 allocs: 0.203 kB 9 allocs: 0.203 kB 1
const/unmarked/Float32/65536 9 allocs: 0.203 kB 9 allocs: 0.203 kB 1
const/unmarked/Float64/262144 9 allocs: 0.203 kB 9 allocs: 0.203 kB 1
const/unmarked/Float64/65536 9 allocs: 0.203 kB 9 allocs: 0.203 kB 1
dgsem/2D/Float32/fluxdiff/element 10 allocs: 0.219 kB 10 allocs: 0.219 kB 1
dgsem/2D/Float32/fluxdiff/node E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/2D/Float32/fluxdiff/node halfsweep E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/2D/Float32/fluxdiff/node halfsweep v-last E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/2D/Float32/weak/element 10 allocs: 0.219 kB 10 allocs: 0.219 kB 1
dgsem/2D/Float32/weak/element private 10 allocs: 0.219 kB 10 allocs: 0.219 kB 1
dgsem/2D/Float32/weak/node localmem E=1 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/2D/Float32/weak/node localmem E=8 6 allocs: 0.125 kB 10 allocs: 0.234 kB 0.533
dgsem/2D/Float32/weak/node localmem v-last E=1 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/2D/Float32/weak/node localmem v-last E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/2D/Float32/weak/node recompute E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/2D/Float64/fluxdiff/element 10 allocs: 0.219 kB 10 allocs: 0.219 kB 1
dgsem/2D/Float64/fluxdiff/node E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/2D/Float64/fluxdiff/node halfsweep E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/2D/Float64/fluxdiff/node halfsweep v-last E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/2D/Float64/weak/element 10 allocs: 0.219 kB 10 allocs: 0.219 kB 1
dgsem/2D/Float64/weak/element private 10 allocs: 0.219 kB 10 allocs: 0.219 kB 1
dgsem/2D/Float64/weak/node localmem E=1 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/2D/Float64/weak/node localmem E=8 6 allocs: 0.125 kB 10 allocs: 0.234 kB 0.533
dgsem/2D/Float64/weak/node localmem v-last E=1 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/2D/Float64/weak/node localmem v-last E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/2D/Float64/weak/node recompute E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/3D/Float32/fluxdiff/element 10 allocs: 0.219 kB 10 allocs: 0.219 kB 1
dgsem/3D/Float32/fluxdiff/node E=2 13 allocs: 0.391 kB 13 allocs: 0.391 kB 1
dgsem/3D/Float32/fluxdiff/node halfsweep E=1 13 allocs: 0.391 kB 13 allocs: 0.391 kB 1
dgsem/3D/Float32/fluxdiff/node halfsweep v-last E=1 13 allocs: 0.391 kB 13 allocs: 0.391 kB 1
dgsem/3D/Float32/weak/element 10 allocs: 0.219 kB 10 allocs: 0.219 kB 1
dgsem/3D/Float32/weak/element private 10 allocs: 0.219 kB 10 allocs: 0.219 kB 1
dgsem/3D/Float32/weak/node localmem E=1 13 allocs: 0.391 kB 13 allocs: 0.391 kB 1
dgsem/3D/Float32/weak/node localmem E=2 13 allocs: 0.391 kB 13 allocs: 0.391 kB 1
dgsem/3D/Float32/weak/node localmem v-last E=1 13 allocs: 0.391 kB 13 allocs: 0.391 kB 1
dgsem/3D/Float32/weak/node localmem v-last E=2 13 allocs: 0.391 kB 13 allocs: 0.391 kB 1
dgsem/3D/Float32/weak/node recompute E=2 13 allocs: 0.391 kB 13 allocs: 0.391 kB 1
dgsem/3D/Float32/weak/slab E=1 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/3D/Float32/weak/slab E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/3D/Float32/weak/slab double-buffered E=1 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/3D/Float32/weak/slab double-buffered E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/3D/Float32/weak/slab double-buffered v-last E=1 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/3D/Float32/weak/slab double-buffered v-last E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/3D/Float32/weak/slab v-last E=1 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/3D/Float32/weak/slab v-last E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/3D/Float64/fluxdiff/element 10 allocs: 0.219 kB 10 allocs: 0.219 kB 1
dgsem/3D/Float64/fluxdiff/node E=2 13 allocs: 0.391 kB 13 allocs: 0.391 kB 1
dgsem/3D/Float64/fluxdiff/node halfsweep E=1 13 allocs: 0.391 kB 13 allocs: 0.391 kB 1
dgsem/3D/Float64/fluxdiff/node halfsweep v-last E=1 13 allocs: 0.391 kB 13 allocs: 0.391 kB 1
dgsem/3D/Float64/weak/element 10 allocs: 0.219 kB 10 allocs: 0.219 kB 1
dgsem/3D/Float64/weak/element private 10 allocs: 0.219 kB 10 allocs: 0.219 kB 1
dgsem/3D/Float64/weak/node localmem E=1 13 allocs: 0.391 kB 13 allocs: 0.391 kB 1
dgsem/3D/Float64/weak/node localmem E=2 13 allocs: 0.391 kB 13 allocs: 0.391 kB 1
dgsem/3D/Float64/weak/node localmem v-last E=1 13 allocs: 0.391 kB 13 allocs: 0.391 kB 1
dgsem/3D/Float64/weak/node localmem v-last E=2 13 allocs: 0.391 kB 13 allocs: 0.391 kB 1
dgsem/3D/Float64/weak/node recompute E=2 13 allocs: 0.391 kB 13 allocs: 0.391 kB 1
dgsem/3D/Float64/weak/slab E=1 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/3D/Float64/weak/slab E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/3D/Float64/weak/slab double-buffered E=1 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/3D/Float64/weak/slab double-buffered E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/3D/Float64/weak/slab double-buffered v-last E=1 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/3D/Float64/weak/slab double-buffered v-last E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/3D/Float64/weak/slab v-last E=1 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
dgsem/3D/Float64/weak/slab v-last E=8 10 allocs: 0.234 kB 10 allocs: 0.234 kB 1
launch/3D static workgroup, dynamic ndrange 9 allocs: 0.219 kB 9 allocs: 0.219 kB 1
launch/3D static workgroup, static ndrange 9 allocs: 0.219 kB 9 allocs: 0.219 kB 1
launch/dynamic workgroup, dynamic ndrange 5 allocs: 0.0938 kB 5 allocs: 0.0938 kB 1
launch/dynamic workgroup, dynamic ndrange, workgroupsize given 5 allocs: 0.0938 kB 5 allocs: 0.0938 kB 1
launch/static workgroup, dynamic ndrange 5 allocs: 0.0938 kB 5 allocs: 0.0938 kB 1
launch/static workgroup, static ndrange 5 allocs: 0.0938 kB 5 allocs: 0.0938 kB 1
narrow workgroup/masked/W=16 9 allocs: 0.203 kB 9 allocs: 0.203 kB 1
narrow workgroup/masked/W=4 9 allocs: 0.203 kB 9 allocs: 0.203 kB 1
narrow workgroup/unmasked/W=16 9 allocs: 0.203 kB 9 allocs: 0.203 kB 1
narrow workgroup/unmasked/W=4 9 allocs: 0.203 kB 9 allocs: 0.203 kB 1
partition/dynamic workgroup, dynamic ndrange 2 allocs: 0.0625 kB 2 allocs: 0.0625 kB 1
partition/static workgroup, dynamic ndrange 2 allocs: 32 B 2 allocs: 32 B 1
partition/static workgroup, static ndrange 0 allocs: 0 B 0 allocs: 0 B
saxpy/default/Float16/1024 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float16/1048576 12 allocs: 0.25 kB 12 allocs: 0.25 kB 1
saxpy/default/Float16/16384 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float16/2048 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float16/256 5 allocs: 0.0938 kB 5 allocs: 0.0938 kB 1
saxpy/default/Float16/262144 12 allocs: 0.25 kB 12 allocs: 0.25 kB 1
saxpy/default/Float16/32768 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float16/4096 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float16/512 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float16/64 5 allocs: 0.0938 kB 5 allocs: 0.0938 kB 1
saxpy/default/Float16/65536 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float32/1024 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float32/1048576 12 allocs: 0.25 kB 12 allocs: 0.25 kB 1
saxpy/default/Float32/16384 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float32/2048 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float32/256 5 allocs: 0.0938 kB 5 allocs: 0.0938 kB 1
saxpy/default/Float32/262144 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float32/32768 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float32/4096 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float32/512 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float32/64 5 allocs: 0.0938 kB 5 allocs: 0.0938 kB 1
saxpy/default/Float32/65536 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float64/1024 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float64/1048576 12 allocs: 0.25 kB 12 allocs: 0.25 kB 1
saxpy/default/Float64/16384 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float64/2048 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float64/256 5 allocs: 0.0938 kB 5 allocs: 0.0938 kB 1
saxpy/default/Float64/262144 12 allocs: 0.25 kB 8 allocs: 0.141 kB 1.78
saxpy/default/Float64/32768 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float64/4096 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float64/512 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/default/Float64/64 5 allocs: 0.0938 kB 5 allocs: 0.0938 kB 1
saxpy/default/Float64/65536 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float16/1024 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float16/1048576 12 allocs: 0.25 kB 12 allocs: 0.25 kB 1
saxpy/static workgroup=(1024,)/Float16/16384 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float16/2048 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float16/256 5 allocs: 0.0938 kB 5 allocs: 0.0938 kB 1
saxpy/static workgroup=(1024,)/Float16/262144 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float16/32768 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float16/4096 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float16/512 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float16/64 5 allocs: 0.0938 kB 5 allocs: 0.0938 kB 1
saxpy/static workgroup=(1024,)/Float16/65536 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float32/1024 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float32/1048576 12 allocs: 0.25 kB 12 allocs: 0.25 kB 1
saxpy/static workgroup=(1024,)/Float32/16384 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float32/2048 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float32/256 5 allocs: 0.0938 kB 5 allocs: 0.0938 kB 1
saxpy/static workgroup=(1024,)/Float32/262144 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float32/32768 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float32/4096 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float32/512 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float32/64 5 allocs: 0.0938 kB 5 allocs: 0.0938 kB 1
saxpy/static workgroup=(1024,)/Float32/65536 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float64/1024 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float64/1048576 12 allocs: 0.25 kB 12 allocs: 0.25 kB 1
saxpy/static workgroup=(1024,)/Float64/16384 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float64/2048 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float64/256 5 allocs: 0.0938 kB 5 allocs: 0.0938 kB 1
saxpy/static workgroup=(1024,)/Float64/262144 12 allocs: 0.25 kB 12 allocs: 0.25 kB 1
saxpy/static workgroup=(1024,)/Float64/32768 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float64/4096 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float64/512 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
saxpy/static workgroup=(1024,)/Float64/64 5 allocs: 0.0938 kB 5 allocs: 0.0938 kB 1
saxpy/static workgroup=(1024,)/Float64/65536 8 allocs: 0.141 kB 8 allocs: 0.141 kB 1
time_to_load 0.2 k allocs: 11.8 kB 0.2 k allocs: 11.8 kB 1

Benchmark Plots

A plot of the benchmark results have been uploaded as an artifact to the workflow run for this PR.
Go to "Actions"->"Benchmark a pull request"->[the most recent run]->"Artifacts" (at the bottom).

@maleadt
maleadt merged commit b8b5e1a into main Oct 13, 2026
62 of 63 checks passed
@maleadt
maleadt deleted the tb/ki-shuffle-test-wide branch October 13, 2026 07:36
@codecov

codecov Bot commented Oct 13, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 82.59%. Comparing base (61bd51c) to head (203fd3e).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #888   +/-   ##
=======================================
  Coverage   82.59%   82.59%           
=======================================
  Files          28       28           
  Lines        2454     2454           
=======================================
  Hits         2027     2027           
  Misses        427      427           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant