你可以自由选择将哪些算子替换为自定义 CUDA 内核，或进行算子融合以减少内核启动与显存往返，从而获得更高的加速比。提交结构需保持四个文件：torchcode.py、cudacode.py、run_code.py、prompt.txt，并严格遵守 run_code.py 的结构与关键参数。cudacode.py 中的内核必须包含 `__global__ void`。

本目录给出一个“仿射+ReLU”的融合示例：

torchcode.py
```
import torch
import torch.nn as nn

class Model(nn.Module):
    def __init__(self, scale: torch.Tensor, bias: torch.Tensor):
        super(Model, self).__init__()
        self.register_buffer("scale", scale)
        self.register_buffer("bias", bias)

    def forward(self, x: torch.Tensor) -> torch.Tensor:
        return torch.relu(x * self.scale + self.bias)

batch_size = 16
dim = 16384

def get_inputs():
    x = torch.randn(batch_size, dim)
    return [x]

def get_init_inputs():
    scale = torch.randn(dim)
    bias = torch.randn(dim)
    return [scale, bias]
```

cudacode.py 通过一次遍历完成 `y = relu(x * scale + bias)`：
```
__global__ void affine_relu_kernel(const float* x, const float* scale, const float* bias, float* y, int dim, long long total) {
    long long idx = blockIdx.x * blockDim.x + threadIdx.x;
    long long stride = blockDim.x * gridDim.x;
    for (long long i = idx; i < total; i += stride) {
        int j = (int)(i % dim);
        float v = x[i] * scale[j] + bias[j];
        y[i] = v > 0.f ? v : 0.f;
    }
}
```

run_code.py 负责精度验证与性能统计，比较 PyTorch 三算子实现与融合内核，精度标准为 `rtol=1e-03`，默认迭代 100 次并给出加速比。
