spv.1.3.coopmat.comp 686 B

1234567891011121314151617181920212223242526272829
  1. #version 450 core
  2. #extension GL_KHR_memory_scope_semantics : enable
  3. #extension GL_NV_cooperative_matrix : enable
  4. #extension GL_EXT_shader_explicit_arithmetic_types_float16 : enable
  5. #pragma use_variable_pointers
  6. layout (local_size_x = 64, local_size_y = 1, local_size_z = 1) in;
  7. layout(set = 0, binding = 0) coherent buffer Block {
  8. float y[1024*1024];
  9. float x[];
  10. } block;
  11. void main()
  12. {
  13. fcoopmatNV<32, gl_ScopeSubgroup, 16, 8> m = fcoopmatNV<32, gl_ScopeSubgroup, 16, 8>(0.0);
  14. m = m + m;
  15. m = m - m;
  16. m = -m;
  17. m = 2.0*m;
  18. m = m*2.0;
  19. coopMatLoadNV(m, block.x, 16, 128, false);
  20. coopMatStoreNV(m, block.x, 16, 128, false);
  21. }