17 | const float* __restrict__ A,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
18 | const float* __restrict__ W,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
19 | const float* __restrict__ bias,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:17:31: note: the first parameter in the range is 'A'
17 | const float* __restrict__ A,
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:19:31: note: the last parameter in the range is 'bias'
19 | const float* __restrict__ bias,
| ^~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:23:5: warning: 3 adjacent parameters of 'unroll_matmul_scale_resAdd_clamp_kernel' of convertible types are easily swapped by mistake [bugprone-easily-swappable-parameters]
23 | int hidden_size,
| ^~~~~~~~~~~~~~~~
24 | float scale_factor,
| ~~~~~~~~~~~~~~~~~~~
25 | float clamp_min,
| ~~~~~~~~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:23:9: note: the first parameter in the range is 'hidden_size'
23 | int hidden_size,
| ^~~~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:25:11: note: the last parameter in the range is 'clamp_min'
25 | float clamp_min,
| ^~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:24:5: note: 'int' and 'float' may be implicitly converted
24 | float scale_factor,
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:32:15: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
32 | int row = blockIdx.y * TILE_DIM + threadIdx.y;
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:33:15: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
33 | int col = blockIdx.x * TILE_DIM + threadIdx.x;
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:38:21: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
38 | int a_col = m * TILE_DIM + threadIdx.x;
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:45:21: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
45 | int b_row = m * TILE_DIM + threadIdx.y;
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:79:5: warning: 2 adjacent parameters of 'unroll_row_reduce_logsumexp_mish_kernel' of similar type ('int') are easily swapped by mistake [bugprone-easily-swappable-parameters]
79 | int batch_size,
| ^~~~~~~~~~~~~~~
80 | int hidden_size
| ~~~~~~~~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:79:9: note: the first parameter in the range is 'batch_size'
79 | int batch_size,
| ^~~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:80:9: note: the last parameter in the range is 'hidden_size'
80 | int hidden_size
| ^~~~~~~~~~~
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:82:15: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
82 | int row = blockIdx.x;
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:88:20: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
88 | for (int col = threadIdx.x; col < hidden_size; col += blockDim.x) {
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:88:59: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
88 | for (int col = threadIdx.x; col < hidden_size; col += blockDim.x) {
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:106:20: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
106 | for (int col = threadIdx.x; col < hidden_size; col += blockDim.x) {
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:106:59: warning: narrowing conversion from 'unsigned int' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
106 | for (int col = threadIdx.x; col < hidden_size; col += blockDim.x) {
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:136: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]
136 | torch::Tensor x,
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:140:19: warning: the parameter 'weight' 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 weight,
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:141:19: 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]
141 | torch::Tensor bias
| ^
| const &
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:147:22: warning: narrowing conversion from 'int64_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
147 | int batch_size = x.size(0);
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:148:22: warning: narrowing conversion from 'int64_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
148 | int input_size = x.size(1);
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:149:23: warning: narrowing conversion from 'int64_t' (aka 'long') to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
149 | int hidden_size = weight.size(0);
| ^
/home/robert_sakana_ai/llm_cuda/experiments/20250208_optimize_b5_s4_e1_sweep/level_2/task_22/b5_s3_unroll_optimization_base/base/base.cu:173:25: warning: narrowing conversion from 'unsigned long' to signed type 'int' is implementation-defined [bugprone-narrowing-conversions]
173 | int sharedMemSize = threads * sizeof(float);
| ^