Yes,I guess so.However for most case I think those ifs are unnecessary.So I want to know the assertion sentences to avoid them.
Here's an example. `N` is the `te.var`.You can clearly see the duplicate `if` . extern "C" __global__ void default_function_kernel0(float* __restrict__ T_subtract1_red, float* __restrict__ Aa, float* __restrict__ ke, int k, int N) { if (((((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) / k) >> 18) < N) { if (((((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) / k) >> 18) < N) { if (((((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) / k) >> 9) < (N * 512)) { if ((((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) / k) < (N * 262144)) { T_subtract1_red[(((((int)blockIdx.x) * 64) + ((int)threadIdx.x)))] = 3.402823e+38f; } } } } for (int k4 = 0; k4 < k; ++k4) { if (((((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) / k) >> 18) < N) { if (((((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) / k) >> 18) < N) { if (((((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) / k) >> 9) < (N * 512)) { if ((((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) / k) < (N * 262144)) { T_subtract1_red[(((((int)blockIdx.x) * 64) + ((int)threadIdx.x)))] = min(T_subtract1_red[(((((int)blockIdx.x) * 64) + ((int)threadIdx.x)))], (((((((k >> 1) <= ((((((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) / k) & 262143) >> 9) + k4)) & (((((((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) / k) & 262143) >> 9) + k4) < ((k + 511) - (k >> 1)))) & ((k >> 1) <= ((((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) % k) + ((((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) / k) & 511)))) & (((((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) % k) + ((((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) / k) & 511)) < ((k + 511) - (k >> 1)))) ? Aa[(((((k4 * 512) + (((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) / k)) + (((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) % k)) - ((k >> 1) * 513)))] : 1.000000e+04f) - ((float)((ke[(((k4 * k) + (((((int)blockIdx.x) * 64) + ((int)threadIdx.x)) % k)))] == 0.000000e+00f) ? -10000 : 0)))); } } } } } } --- [Visit Topic](https://discuss.tvm.apache.org/t/ops-become-slow-when-using-te-var/11486/3) to respond. You are receiving this because you enabled mailing list mode. To unsubscribe from these emails, [click here](https://discuss.tvm.apache.org/email/unsubscribe/d851416087c872eb509973483ea3846ae098acaee8e408cd0b47a34e9c0dd876).