mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-09 12:00:05 +00:00
29 lines
686 B
Plaintext
29 lines
686 B
Plaintext
|
#version 450 core
|
||
|
#extension GL_KHR_memory_scope_semantics : enable
|
||
|
#extension GL_NV_cooperative_matrix : enable
|
||
|
#extension GL_EXT_shader_explicit_arithmetic_types_float16 : enable
|
||
|
|
||
|
#pragma use_variable_pointers
|
||
|
|
||
|
layout (local_size_x = 64, local_size_y = 1, local_size_z = 1) in;
|
||
|
|
||
|
layout(set = 0, binding = 0) coherent buffer Block {
|
||
|
float y[1024*1024];
|
||
|
float x[];
|
||
|
} block;
|
||
|
|
||
|
|
||
|
void main()
|
||
|
{
|
||
|
fcoopmatNV<32, gl_ScopeSubgroup, 16, 8> m = fcoopmatNV<32, gl_ScopeSubgroup, 16, 8>(0.0);
|
||
|
|
||
|
m = m + m;
|
||
|
m = m - m;
|
||
|
m = -m;
|
||
|
m = 2.0*m;
|
||
|
m = m*2.0;
|
||
|
|
||
|
coopMatLoadNV(m, block.x, 16, 128, false);
|
||
|
coopMatStoreNV(m, block.x, 16, 128, false);
|
||
|
}
|