Spaces:
Runtime error
Runtime error
// Copyright (C) 2018-2022 Intel Corporation | |
// SPDX-License-Identifier: Apache-2.0 | |
// | |
#pragma OPENCL EXTENSION cl_khr_fp16 : enable | |
__kernel void ShuffleChannel( | |
__ | const half *restrict src_data,|
__ | half *restrict dst_data,|
int C, | |
int H, | |
int W, | |
int G) | |
{ | |
int c = get_global_id(0); | |
if (c >= C) return; | |
int CX = C / G; | |
int CY = G; | |
int cy = c % G; | |
int cx = c / G; | |
__ | const half8 *src_line =|
((__CX * H * W + cx * H * W)); | const half8 *)(src_data + cy *|
__cx * CY * H * W + cy * H * W)); | half8 *dst_line = ((__ half8 *)(dst_data +|
for (int i = 0; i < W * H / 8; i++) { | |
dst_line[i] = src_line[i]; | |
} | |
for (int i = W * H / 8 * 8; i < W * H; i++) { | |
dst_data[cx * CY * H * W + cy * H * W + i] = src_data[cy * CX * H * W + cx * H * W + i]; | |
} | |
} | |