1234567891011121314151617181920212223242526272829 |
- #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);
- }
|