five

CASS

收藏
arXiv2025-05-23 更新2025-05-24 收录
下载链接:
https://huggingface.co/datasets/MBZUAI/cass
下载链接
链接失效反馈
官方服务:
资源简介:
CASS数据集是一个大规模的跨架构GPU代码转换数据集和模型套件,旨在解决源代码级别(CUDA ↔ HIP)和汇编代码级别(Nvidia SASS ↔ AMD RDNA3)的转换问题。数据集包含7万对经过验证的代码,跨越主机和设备,解决了低级别GPU代码可移植性的关键问题。利用这一资源,我们训练了CASS系列的特定领域语言模型,实现了95%的源代码翻译准确率和37.5%的汇编代码翻译准确率,大大超过了商业基线,如GPT-4o、Claude和Hipify。我们生成的代码在超过85%的测试用例中与本地性能相匹配,保持了运行时和内存行为。为了支持严格的评估,我们引入了CASS-Bench,这是一个涵盖16个GPU领域的精心策划的基准测试,包括经过验证的执行。所有数据、模型和评估工具都作为开源发布,以促进GPU编译器工具、二进制兼容性和LLM引导的硬件转换方面的进步。

The CASS dataset is a large-scale cross-architecture GPU code translation dataset and model suite aimed at solving translation issues at the source code level (CUDA ↔ HIP) and assembly code level (Nvidia SASS ↔ AMD RDNA3). The dataset contains 70,000 pairs of validated code spanning host and device code, addressing the critical problem of low-level GPU code portability. Leveraging this resource, we trained the domain-specific CASS-series large language models, achieving 95% source code translation accuracy and 37.5% assembly code translation accuracy, which significantly outperforms commercial baselines such as GPT-4o, Claude and Hipify. The code we generated matches native performance in over 85% of test cases, preserving runtime and memory behavior. To support rigorous evaluation, we introduced CASS-Bench, a curated benchmark covering 16 GPU domains with validated execution. All data, models and evaluation tools are released as open source to promote advancements in GPU compiler tools, binary compatibility and LLM-driven hardware translation.
提供机构:
MBZUAI, Australian National University
创建时间:
2025-05-23
原始信息汇总

数据集概述:CASS (CUDA–AMD Assembly and Source Mapping)

基本信息

  • 许可证: MIT
  • 数据集大小: 36,837,555,212 字节
  • 下载大小: 10,789,629,544 字节
  • 数据集地址: https://huggingface.co/datasets/MBZUAI/cass

数据集结构

特征字段

字段名 描述
filename 样本ID或文件名
cuda_source 原始CUDA源代码
cuda_host 从CUDA编译的x86主机端汇编代码
cuda_device 从CUDA编译的SASS (Nvidia GPU)设备汇编代码
hip_source 通过HIPIFY转换的HIP源代码
hip_host 从HIP编译的x86主机端汇编代码
hip_device 从HIP编译的RDNA3 (AMD GPU)设备汇编代码

数据分片

分片名 描述 样本数量 字节大小
train synthstackopencl的联合 70,694 18,979,794,237
stack 从StackV2抓取并过滤的CUDA代码 24,170 6,087,813,411
synth LLM合成的CUDA程序 40,591 11,766,271,412
bench 来自16个GPU领域的40个精选评估任务 40 3,676,152

数据集用途

  • 🔁 源到源翻译 (CUDA ↔ HIP)
  • ⚙️ 汇编级翻译 (SASS ↔ RDNA3)
  • 🧠 LLM引导的GPU代码转换

评估基准

bench分片包含来自16个领域的40个样本,例如:

  • 🧪 物理模拟
  • 📊 数据结构
  • 📸 图像处理
  • 🧮 线性代数

所有样本均已手动验证CUDA和HIP之间的语义等价性,并附带可执行的设备/主机二进制文件。

加载方式

python from datasets import load_dataset

加载完整数据集(默认配置包含所有分片)

cass = load_dataset("MBZUAI/cass", name="default")

访问特定分片

train_data = cass["train"] # train = stack + synth + opencl stack_data = cass["stack"] synth_data = cass["synth"] bench_data = cass["bench"]

相关链接

  • 🤗 Hugging Face Collection: https://huggingface.co/collections/MBZUAI/cass-6825b5bf7414503cf16f87b2
  • 📂 代码与工具: https://github.com/GustavoStahl/CASS
搜集汇总
数据集介绍
main_image_url
构建方式
在异构计算领域,跨架构GPU代码转换的需求日益增长,CASS数据集应运而生。该数据集通过多阶段流程构建:首先从公开代码库中爬取CUDA源文件并进行去重和过滤;随后采用基于模板的LLM生成策略合成多样化样本;接着通过HIPIFY工具进行CUDA-HIP源代码转换;最后使用标准化编译流程生成对齐的SASS和RDNA3汇编代码。整个流程包含严格的验证环节,确保70k样本均能成功编译执行,形成首个涵盖主机/设备端、源级/汇编级的跨架构GPU代码对。
特点
CASS数据集在跨架构GPU转换领域具有三大核心特征:其多层级覆盖性同时包含CUDA-HIP源代码对和SASS-RDNA3汇编对,支持从语法到指令集的全面分析;领域多样性覆盖机器学习、图形计算等16个GPU核心应用场景,且汇编代码平均长度呈现架构相关性差异;验证完备性方面,所有样本均通过编译执行验证,并附带内存使用和运行时性能指标,85%的转换结果保持原生性能±5.6%以内。这些特性使其成为研究硬件特定优化的理想基准。
使用方法
该数据集支持三种典型应用模式:研究人员可通过对比源级/汇编级代码对,分析Nvidia与AMD架构的语义映射规律;开发者可利用对齐样本训练专用翻译模型,如论文中基于Qwen2.5-Coder微调的7B参数模型在CASS-Bench上达到95%源级准确率;工程师还可结合性能指标验证转换后代码的硬件行为保持性。使用时应关注架构特定性,当前版本仅覆盖RTX4090和RX7900硬件,且建议配合提供的Docker环境确保编译一致性。
背景与挑战
背景概述
CASS数据集由MBZUAI的研究团队于2025年5月推出,是首个专注于跨架构GPU代码转译的大规模数据集。该数据集针对Nvidia与AMD平台的双向转译需求,覆盖了从高级语言(CUDA↔HIP)到低级汇编(SASS↔RDNA3)的全栈映射,包含7万组经过验证的代码对。其核心研究目标是解决GPU生态系统中由硬件指令集差异导致的严重供应商锁定问题,为机器学习、科学计算等领域的代码移植提供标准化解决方案。该数据集通过开源方式发布,显著推动了编译器工具链、硬件兼容性及大模型引导的代码生成等研究方向的发展。
当前挑战
在领域问题层面,CASS需应对三大核心挑战:跨厂商指令集语义差异导致的低级代码转译准确率低下(SASS与RDNA3指令仅37.5%转译成功率)、异构计算架构的运行时行为一致性保障(85%样本需保持内存与执行时间偏差<5.6%),以及多领域覆盖的完备性(16个GPU计算域中数学与图算法域转译准确率为0%)。在构建过程中,研究团队需克服编译工具链不透明(Nvidia二进制注入流程封闭)、跨平台验证复杂性(CUDA/HIP编译成功率仅56.1%),以及合成数据有效性(LLM生成样本49.1%编译失败率)等工程技术难题。
常用场景
经典使用场景
在异构计算生态系统的研究中,CASS数据集为跨架构GPU代码转译提供了关键支持。该数据集特别适用于探索CUDA与HIP之间的源代码转换,以及Nvidia SASS与AMD RDNA3之间的汇编级映射,为研究人员提供了丰富的实验材料。通过包含70k经过验证的代码对,CASS使得模型能够在不同抽象层次上学习代码转换的规律,从而推动GPU代码可移植性的研究。
解决学术问题
CASS数据集解决了GPU代码跨架构转译中的核心学术问题,包括指令集差异、编译流程不兼容以及语义对齐等挑战。通过提供源代码和汇编级的对齐样本,该数据集填补了低层GPU代码可移植性研究的空白,并为开发可靠的转译工具奠定了基础。其意义在于降低了从Nvidia平台迁移到AMD平台的工程成本,同时促进了异构计算生态的开放性和多样性。
衍生相关工作
CASS数据集催生了一系列相关研究,特别是在基于大语言模型的代码转译领域。例如,CASS模型家族在源代码转译上达到95%的准确率,显著优于HIPIFY等传统工具。此外,该数据集还启发了对GPU汇编级转译的探索,如ZLUDA等项目尝试在运行时将CUDA二进制代码转换为AMD可执行代码。这些工作共同推动了GPU计算生态的开放性和工具链的成熟。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作