#amd-gpu #linux-kernel #libdrm

sys no-std libdrm_amdgpu_sys

Rust的libdrm_amdgpu绑定,以及一些从Mesa3D迁移的方法

20个版本 (6个破坏性更新)

新版本 0.7.5 2024年8月14日
0.7.4 2024年7月17日
0.7.3 2024年5月29日
0.7.0 2024年3月29日
0.1.0 2022年5月28日

#115图形API

Download history 991/week @ 2024-04-27 866/week @ 2024-05-04 762/week @ 2024-05-11 567/week @ 2024-05-18 659/week @ 2024-05-25 438/week @ 2024-06-01 546/week @ 2024-06-08 532/week @ 2024-06-15 384/week @ 2024-06-22 413/week @ 2024-06-29 396/week @ 2024-07-06 496/week @ 2024-07-13 1845/week @ 2024-07-20 2007/week @ 2024-07-27 1020/week @ 2024-08-03 877/week @ 2024-08-10

每月5,837次下载
用于 5 个crate(通过 libamdgpu_top

MIT 许可证

7MB
218K SLoC

libdrm-amdgpu-sys-rs

Rust的libdrm_amdgpu绑定,以及一些从Mesa3D迁移的方法(主要来自ac_gpu_info.c)。

参考

许可证

  • MIT许可证

文档

依赖的动态库

  • libdrm
  • libdrm_amdgpu

特定发行版的说明

Debian/Ubuntu

sudo apt install libdrm-dev

示例

let (amdgpu_dev, drm_major, drm_minor) = {
    use std::fs::OpenOptions;
    use std::os::fd::IntoRawFd;

    let fd = OpenOptions::new().read(true).write(true).open("/dev/dri/renderD128").unwrap();

    AMDGPU::DeviceHandle::init(fd.into_raw_fd()).unwrap()
};
let mark_name = amdgpu_dev.get_marketing_name().unwrap();
let device_info = amdgpu_dev.device_info().unwrap();

amdgpu_info

cargo run --example amdgpu_info

vbios_dump

cargo run --example vbios_dump

gpu_metrics

cargo run --example gpu_metrics

构建

生成新的 bindings/drm.rs 文件。

cargo build --features=buildtime_bindgen

依赖项