Robust-Kbench-Error-Kernels
收藏魔搭社区2025-11-03 更新2025-11-08 收录
下载链接:
https://modelscope.cn/datasets/haiyanqin/Robust-Kbench-Error-Kernels
下载链接
链接失效反馈官方服务:
资源简介:
# Robust-Kbench-Error-Kernels: CUDA错误Kernel数据集
## 在ModelScope上使用
```python
from modelscope import dataset_snapshot_download
# 下载数据集
dataset_path = dataset_snapshot_download('haiyanqin/Robust-Kbench-Error-Kernels')
# 或者直接使用Dataset类
from modelscope.msdatasets import MsDataset
ds = MsDataset.load('haiyanqin/Robust-Kbench-Error-Kernels')
```
## 数据集特点
这个数据集专门收集了CUDA kernel生成过程中的错误案例,用于:
- **错误模式分析**: 研究常见的CUDA kernel错误类型和模式
- **调试工具训练**: 为CUDA kernel调试和修复工具提供训练数据
- **质量评估**: 评估CUDA kernel生成系统的错误率和错误分布
- **研究用途**: 支持CUDA编程教育和错误处理研究
## 概述
这个数据集包含了从robust-kbench中提取的所有功能错误的CUDA kernel,按错误类型进行分类。
- **总Kernel数**: 11768
- **总任务数**: 229
- **输出目录**: `extracted_error_kernels`
## 筛选标准
- **功能状态**: Correct = False (只包含功能错误的kernel)
- **代码完整性**: 必须包含有效的CUDA代码
## 错误类型分类
- **编译错误 (compilation_error)**: Correct=False 且 Max_Diff=null/NaN
- **功能错误 (functional_error)**: Correct=False 且 Max_Diff!=null/NaN
## 目录结构
```
extracted_error_kernels/
├── level_1/
│ ├── level_1_filtered.parquet # 筛选后的数据集
│ ├── statistics.json # 统计信息
│ ├── 100_HingeLoss/
│ │ ├── compilation_error/ # 编译错误kernel
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误kernel
│ ├── 10_3D_tensor_matrix_multiplication/
│ │ ├── compilation_error/ # 编译错误kernel
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误kernel
│ ├── 11_4D_tensor_matrix_multiplication/
│ │ ├── compilation_error/ # 编译错误kernel
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误kernel
│ └── ... (88 more tasks)
├── level_2/
│ ├── level_2_filtered.parquet # 筛选后的数据集
│ ├── statistics.json # 统计信息
│ ├── 100_ConvTranspose3d_Clamp_Min_Divide/
│ │ ├── compilation_error/ # 编译错误kernel
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误kernel
│ ├── 10_ConvTranspose2d_MaxPool_Hardtanh_Mean_Tanh/
│ │ ├── compilation_error/ # 编译错误kernel
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误kernel
│ ├── 11_ConvTranspose2d_BatchNorm_Tanh_MaxPool_GroupNorm/
│ │ ├── compilation_error/ # 编译错误kernel
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误kernel
│ └── ... (95 more tasks)
├── level_3/
│ ├── level_3_filtered.parquet # 筛选后的数据集
│ ├── statistics.json # 统计信息
│ ├── 10_ResNet101/
│ │ ├── compilation_error/ # 编译错误kernel
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误kernel
│ ├── 11_VGG16/
│ │ ├── compilation_error/ # 编译错误kernel
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误kernel
│ ├── 12_VGG19/
│ │ ├── compilation_error/ # 编译错误kernel
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误kernel
│ └── ... (37 more tasks)
├── SUMMARY.json
└── README.md
```
## 错误类型分类说明
| 分类目录 | 判断条件 | 说明 |
|---------|-----------|------|
| compilation_error | Correct=False 且 Max_Diff=null/NaN | 编译错误,无法生成可执行代码 |
| functional_error | Correct=False 且 Max_Diff!=null/NaN | 功能错误,代码可编译但结果不正确 |
## 文件说明
### CUDA文件 (*.cu)
包含完整的CUDA kernel实现代码
### 元数据文件 (*_info.json)
包含以下信息:
- 基本信息:op_name, kernel_name, correct, max_diff
- 性能指标:runtime, speedup
- NCU性能分析数据(如果可用)
- PyTorch性能分析数据(如果可用)
- 其他相关字段
## 使用方法
### 1. 查看特定level的所有错误kernel
```python
import pandas as pd
df = pd.read_parquet('level_1/level_1_filtered.parquet')
print(f"错误kernel总数: {len(df)}")
print(f"编译错误: {(df['Max_Diff'].isna()).sum()}")
print(f"功能错误: {(df['Max_Diff'].notna()).sum()}")
print(df[['Op_Name', 'Correct', 'Max_Diff']].head())
```
### 2. 读取CUDA代码
```python
with open('level_1/task_name/compilation_error/kernel_1.cu', 'r') as f:
cuda_code = f.read()
print("编译错误的kernel代码:")
print(cuda_code[:500] + "...")
```
### 3. 读取错误信息元数据
```python
import json
with open('level_1/task_name/functional_error/kernel_1_info.json', 'r') as f:
metadata = json.load(f)
print(f"Correct: {metadata['correct']}")
print(f"Max_Diff: {metadata['max_diff']}")
print(f"错误类型: {'编译错误' if metadata['max_diff'] is None else '功能错误'}")
```
# Robust-Kbench-Error-Kernels:CUDA错误内核(CUDA kernel)数据集
## 可在ModelScope平台上使用
python
from modelscope import dataset_snapshot_download
# 下载数据集
dataset_path = dataset_snapshot_download('haiyanqin/Robust-Kbench-Error-Kernels')
# 或者直接使用Dataset类
from modelscope.msdatasets import MsDataset
ds = MsDataset.load('haiyanqin/Robust-Kbench-Error-Kernels')
## 数据集核心特点
本数据集专门收录了CUDA内核(CUDA kernel)生成过程中的各类错误案例,可用于以下场景:
- **错误模式分析**:开展常见CUDA内核错误类型与模式的相关研究
- **调试工具训练**:为CUDA内核调试与修复工具提供训练数据集
- **质量评估**:对CUDA内核生成系统的错误率与错误分布开展评估
- **学术研究支撑**:为CUDA编程教学与错误处理相关研究提供支持
## 数据集概述
本数据集收录了从robust-kbench中提取的全部存在功能错误的CUDA内核,并按照错误类型进行分类。
- **总内核数量**:11768个
- **总任务数量**:229个
- **输出目录**:`extracted_error_kernels`
## 数据集筛选规则
- **功能状态**:Correct=False(仅收录存在功能错误的内核)
- **代码完整性**:需包含有效的CUDA代码
## 错误类型分类
- **编译错误(compilation_error)**:Correct=False 且 Max_Diff为null/NaN
- **功能错误(functional_error)**:Correct=False 且 Max_Diff不为null/NaN
## 目录结构
extracted_error_kernels/
├── level_1/
│ ├── level_1_filtered.parquet # 筛选后的数据集
│ ├── statistics.json # 统计信息
│ ├── 100_HingeLoss/
│ │ ├── compilation_error/ # 编译错误内核
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误内核
│ ├── 10_3D_tensor_matrix_multiplication/
│ │ ├── compilation_error/ # 编译错误内核
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误内核
│ ├── 11_4D_tensor_matrix_multiplication/
│ │ ├── compilation_error/ # 编译错误内核
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误内核
│ └── ... (88 more tasks)
├── level_2/
│ ├── level_2_filtered.parquet # 筛选后的数据集
│ ├── statistics.json # 统计信息
│ ├── 100_ConvTranspose3d_Clamp_Min_Divide/
│ │ ├── compilation_error/ # 编译错误内核
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误内核
│ ├── 10_ConvTranspose2d_MaxPool_Hardtanh_Mean_Tanh/
│ │ ├── compilation_error/ # 编译错误内核
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误内核
│ ├── 11_ConvTranspose2d_BatchNorm_Tanh_MaxPool_GroupNorm/
│ │ ├── compilation_error/ # 编译错误内核
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误内核
│ └── ... (95 more tasks)
├── level_3/
│ ├── level_3_filtered.parquet # 筛选后的数据集
│ ├── statistics.json # 统计信息
│ ├── 10_ResNet101/
│ │ ├── compilation_error/ # 编译错误内核
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误内核
│ ├── 11_VGG16/
│ │ ├── compilation_error/ # 编译错误内核
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误内核
│ ├── 12_VGG19/
│ │ ├── compilation_error/ # 编译错误内核
│ │ │ ├── kernel_1.cu
│ │ │ └── kernel_1_info.json
│ │ └── functional_error/ # 功能错误内核
│ └── ... (37 more tasks)
├── SUMMARY.json
└── README.md
## 错误类型分类说明
| 分类目录 | 判断条件 | 说明 |
|---------|-----------|------|
| compilation_error | Correct=False 且 Max_Diff=null/NaN | 编译错误,无法生成可执行代码 |
| functional_error | Correct=False 且 Max_Diff!=null/NaN | 功能错误,代码可编译但结果不正确 |
## 文件说明
### CUDA文件(*.cu)
包含完整的CUDA内核实现代码
### 元数据文件(*_info.json)
包含以下信息:
- 基础信息:op_name、kernel_name、correct、max_diff
- 性能指标:runtime、speedup
- NCU性能分析数据(若可用)
- PyTorch性能分析数据(若可用)
- 其他相关字段
## 使用方法
### 1. 查看指定层级的全部错误内核
python
import pandas as pd
df = pd.read_parquet('level_1/level_1_filtered.parquet')
print(f"错误内核总数: {len(df)}")
print(f"编译错误: {(df['Max_Diff'].isna()).sum()}")
print(f"功能错误: {(df['Max_Diff'].notna()).sum()}")
print(df[['Op_Name', 'Correct', 'Max_Diff']].head())
### 2. 读取CUDA代码
python
with open('level_1/task_name/compilation_error/kernel_1.cu', 'r') as f:
cuda_code = f.read()
print("编译错误的内核代码:")
print(cuda_code[:500] + "...")
### 3. 读取错误信息元数据
python
import json
with open('level_1/task_name/functional_error/kernel_1_info.json', 'r') as f:
metadata = json.load(f)
print(f"Correct: {metadata['correct']}")
print(f"Max_Diff: {metadata['max_diff']}")
print(f"错误类型: {'编译错误' if metadata['max_diff'] is None else '功能错误'}")
提供机构:
maas
创建时间:
2025-11-03



