Commit 30f4740
authored
[CoopVec] Add pixel shader and multi-layer support to Mul and OuterProduct tests (#7437)
This change adds preliminary pixel shader support by wrapping the
existing test code in a function, which is called by both compute and
pixel shaders. The same test patterns are used for both, mapping threads
to input/bias vectors and output buffer offsets. For pixel shaders, an
atomic counter is used to implement a poor man's mapping of pixel shader
threads to a range of thread IDs.
Multi-layer support is also added, currently limited to two layers. A
square matrix is always used for the first layer in a multi-layer config
for ease-of-implementation.
The input patterns are now slightly more interesting by generating
random input with a generator seeded to a constant value. The range of
values is limited to try to lower error that accumulates between the
CoopVec GPU implementation and the CPU reference implementation.1 parent 588165d commit 30f4740
3 files changed
Lines changed: 1449 additions & 749 deletions
0 commit comments