1 个不稳定版本
使用旧的 Rust 2015
0.1.0 | 2018年8月16日 |
---|
#6 in #ptx
2KB
nvptx 工具链
将 Rust 编译成 PTX/cubin
安装
nvptx 命令
nvptx
是一个 CLI 工具,用于
- 将 Rust crate 构建为 PTX/cubin 文件
- 安装
accel-nvptx
工具链(用于 rustup)
cargo install nvptx
accel-nvptx 工具链
accel-nvptx
是 rustup 的工具链名称。它包含具有 nvptx64-nvidia-cuda
目标的 rustc
和运行时库。
nvptx install
这会将 accel-nvptx
工具链安装到 rustup
$ rustup toolchain list
stable-x86_64-unknown-linux-gnu
nightly-x86_64-unknown-linux-gnu (default)
accel-nvptx
此工具链是由以下构建的
构建
您可以使用 accel-nvptx
工具链将您的 crate 构建为 PTX 文件
nvptx build
这包括以下三个步骤
- 将 Rust 编译为 LLVM 位码。此步骤对应以下命令
cargo +accel-nvptx build --target nvptx64-nvidia-cuda
- 使用
llvm-link
将 rlib 链接到 LLVM 位码 - 使用
opt
移除未使用的位码 - 使用
llc
将 LLVM 位码编译为 PTX - (可选) 使用
nvcc
将 PTX 转换为 cubin