| 1234567891011121314151617181920212223 |
- #version 450
- #include "types.comp"
- #include "generic_unary_head.comp"
- layout(local_size_x = 512, local_size_y = 1, local_size_z = 1) in;
- void main() {
- const uint idx = get_idx();
- if (idx >= p.ne) {
- return;
- }
- #if defined(DATA_D_BF16)
- float f = float(data_a[get_aoffset() + src0_idx(idx)]);
- data_d[get_doffset() + dst_idx(idx)] = D_TYPE(fp32_to_bf16(f));
- #elif !defined(OPTIMIZATION_ERROR_WORKAROUND)
- data_d[get_doffset() + dst_idx(idx)] = D_TYPE(data_a[get_aoffset() + src0_idx(idx)]);
- #else
- data_d[get_doffset() + dst_idx(idx)] = data_a[get_aoffset() + src0_idx(idx)];
- #endif
- }
|