18 | int N, int C, int D, int H, int W,
| ^~~~~~~~~~~~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:18:9: note: the first parameter in the range is 'N'
18 | int N, int C, int D, int H, int W,
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:18:23: note: the last parameter in the range is 'D'
18 | int N, int C, int D, int H, int W,
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:18:33: warning: 3 adjacent parameters of 'fused_relu_groupnorm_const_kernel' of convertible types are easily swapped by mistake [bugprone-easily-swappable-parameters]
18 | int N, int C, int D, int H, int W,
| ^~~~~~
19 | int G, float eps) // number of groups and epsilon
| ~~~~~~~~~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:18:37: note: the first parameter in the range is 'W'
18 | int N, int C, int D, int H, int W,
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:19:18: note: the last parameter in the range is 'eps'
19 | int G, float eps) // number of groups and epsilon
| ^~~
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:19:12: note: 'int' and 'float' may be implicitly converted
19 | int G, float eps) // number of groups and epsilon
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:22:13: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
22 | int n = blockIdx.x; // sample index
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:23:13: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
23 | int g = blockIdx.y; // group index
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:29:15: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
29 | int tid = threadIdx.x;
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:39:54: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
39 | for (int i = tid * 4; i < aligned_elements; i += blockDim.x * 4) {
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:71:64: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
71 | for (int i = aligned_elements + tid; i < group_elems; i += blockDim.x) {
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:109:40: warning: narrowing conversion from 'int' to 'float' [bugprone-narrowing-conversions]
109 | float group_mean = group_sum / group_elems;
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:110:35: warning: narrowing conversion from 'int' to 'float' [bugprone-narrowing-conversions]
110 | float var = group_sumsq / group_elems - group_mean * group_mean;
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:121:45: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
121 | for (int i = tid; i < group_elems; i += blockDim.x) {
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:139:19: warning: the parameter 'x' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param]
139 | torch::Tensor x,
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:140:5: warning: 2 adjacent parameters of 'forward' of similar type ('torch::Tensor') are easily swapped by mistake [bugprone-easily-swappable-parameters]
140 | torch::Tensor conv_transpose,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
141 | torch::Tensor group_norm_weight,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:140:19: note: the first parameter in the range is 'conv_transpose'
140 | torch::Tensor conv_transpose,
| ^~~~~~~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:141:19: note: the last parameter in the range is 'group_norm_weight'
141 | torch::Tensor group_norm_weight,
| ^~~~~~~~~~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:140:19: warning: the parameter 'conv_transpose' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param]
140 | torch::Tensor conv_transpose,
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:141:19: warning: the parameter 'group_norm_weight' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param]
141 | torch::Tensor group_norm_weight,
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:142:19: warning: the parameter 'group_norm_bias' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param]
142 | torch::Tensor group_norm_bias,
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:143:5: warning: 2 adjacent parameters of 'forward' of convertible types are easily swapped by mistake [bugprone-easily-swappable-parameters]
143 | int64_t groups,
| ^~~~~~~~~~~~~~~
144 | double eps) {
| ~~~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:143:13: note: the first parameter in the range is 'groups'
143 | int64_t groups,
| ^~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:144:12: note: the last parameter in the range is 'eps'
144 | double eps) {
| ^~~
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:143:5: note:
143 | int64_t groups,
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:144:5: note: 'int64_t' and 'double' may be implicitly converted: 'int64_t' (as 'long') -> 'double', 'double' -> 'int64_t' (as 'long')
144 | double eps) {
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:158:13: warning: narrowing conversion from 'int64_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
158 | int N = y.size(0);
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:159:13: warning: narrowing conversion from 'int64_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
159 | int C = y.size(1);
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:160:13: warning: narrowing conversion from 'int64_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
160 | int D = y.size(2);
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:161:13: warning: narrowing conversion from 'int64_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
161 | int H = y.size(3);
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:162:13: warning: narrowing conversion from 'int64_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
162 | int W = y.size(4);
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250204_optimize_b10_s4_e0_sweep/level_2/task_61/b6_s0_fused_rg_const_base/base/base.cu:163:13: warning: narrowing conversion from 'int64_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
163 | int G = groups;
| ^