7 | #define CHECK_CUDA(x) TORCH_CHECK(x.is_cuda(), #x " must be a CUDA tensor.")
| ^
| ()
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:8:41: warning: macro argument should be enclosed in parentheses [bugprone-macro-parentheses]
8 | #define CHECK_CONTIGUOUS(x) TORCH_CHECK(x.is_contiguous(), #x " must be contiguous.")
| ^
| ()
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:24:5: warning: 4 adjacent parameters of 'fused_lockfree_kernel' of similar type ('const float *__restrict') are easily swapped by mistake [bugprone-easily-swappable-parameters]
24 | const float* __restrict__ bias,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
25 | const float* __restrict__ scale,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
26 | const float* __restrict__ gn_weight,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
27 | const float* __restrict__ gn_bias,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:24:31: note: the first parameter in the range is 'bias'
24 | const float* __restrict__ bias,
| ^~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:27:31: note: the last parameter in the range is 'gn_bias'
27 | const float* __restrict__ gn_bias,
| ^~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:28:5: warning: 2 adjacent parameters of 'fused_lockfree_kernel' of similar type ('const int') are easily swapped by mistake [bugprone-easily-swappable-parameters]
28 | const int N, const int C, const int H, const int W,
| ^~~~~~~~~~~~~~~~~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:28:15: note: the first parameter in the range is 'N'
28 | const int N, const int C, const int H, const int W,
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:28:28: note: the last parameter in the range is 'C'
28 | const int N, const int C, const int H, const int W,
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:28:44: warning: 2 adjacent parameters of 'fused_lockfree_kernel' of similar type ('const int') are easily swapped by mistake [bugprone-easily-swappable-parameters]
28 | const int N, const int C, const int H, const int W,
| ^~~~~~~~~~~~
29 | const int num_groups,
| ~~~~~~~~~~~~~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:28:54: note: the first parameter in the range is 'W'
28 | const int N, const int C, const int H, const int W,
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:29:15: note: the last parameter in the range is 'num_groups'
29 | const int num_groups,
| ^~~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:38:21: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
38 | const int tid = threadIdx.x;
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:41:27: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
41 | const int group_idx = blockIdx.x % num_groups;
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:42:28: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
42 | const int sample_idx = blockIdx.x / num_groups;
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:107:39: warning: narrowing conversion from 'int' to 'float' [bugprone-narrowing-conversions]
107 | const float mean = warp_sums[0] / group_size;
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:108:47: warning: narrowing conversion from 'int' to 'float' [bugprone-narrowing-conversions]
108 | const float variance = (warp_sq_sums[0] / group_size) - (mean * mean);
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:131:16: 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]
131 | at::Tensor x,
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:132:16: warning: the parameter 'bias' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param]
132 | at::Tensor bias,
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:133:16: warning: the parameter 'scale' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param]
133 | at::Tensor scale,
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:134:16: warning: the parameter 'y' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param]
134 | at::Tensor y,
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:135:16: warning: the parameter 'gn_weight' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param]
135 | at::Tensor gn_weight,
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:136:16: warning: the parameter 'gn_bias' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param]
136 | at::Tensor gn_bias,
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:142:19: warning: narrowing conversion from 'int64_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
142 | const int N = x.size(0);
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:143:19: warning: narrowing conversion from 'int64_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
143 | const int C = x.size(1);
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:144:19: warning: narrowing conversion from 'int64_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
144 | const int H = x.size(2);
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:145:19: warning: narrowing conversion from 'int64_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
145 | const int W = x.size(3);
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:147:30: warning: narrowing conversion from 'int64_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
147 | const int total_blocks = N * num_groups;
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:158:9: warning: narrowing conversion from 'int64_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
158 | num_groups,
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:166:16: warning: the parameter 'conv_weight' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param]
166 | at::Tensor conv_weight,
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:168:16: warning: the parameter 'bias' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param]
168 | at::Tensor bias,
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:169:16: warning: the parameter 'scale' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param]
169 | at::Tensor scale,
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:170:16: warning: the parameter 'gn_weight' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param]
170 | at::Tensor gn_weight,
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250203_optimize_b10_s4_e0_sweep/level_2/task_21/b5_s1_fused_lockfree_groupnorm_base/base/base.cu:171:16: warning: the parameter 'gn_bias' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param]
171 | at::Tensor gn_bias,
| ^
| const &