amdgpu_device_gpu_bandwidth(9)
π amdgpu_device_gpu_bandwidth β kernel API manual, bestie edition
okay so this is a page from the Kernel API Manual, and honestly? it's a little guy but it does so much. it lives in the amdgpu driver (that's the AMD GPU driver, iykyk) and its whole job is finding the bandwidth of the GPU. that's it. that's the vibe. π¦
β¨ NAME β¨
amdgpu_device_gpu_bandwidth β find the bandwidth of the GPU π«Ά
πΈ SYNOPSIS πΈ
void amdgpu_device_gpu_bandwidth (struct amdgpu_device *adev , enum
pci_bus_speed *speed , enum pcie_link_width *width );
like. look at her. three params, void return, zero drama. periodt. π
π ARGUMENTS π
adevβ amdgpu_device pointer π you know her, you love her, she's the device.speedβ pointer to the speed of the link β‘ like how fast is this link actually going, spiritually.widthβ pointer to the width of the link π the literal width, bestie. lanes. we love a wide link.
ngl they're all pointers-to-things because this function writes results into them. classic out-param moment. π
π₯ DESCRIPTION π₯
So what does she do? She evaluates the hierarchy to find the speed and bandwidth capabilities of the AMD dGPU β and here's the iconic part β which may be a virtual upstream bridge. π
literally the whole plot: walk the hierarchy, figure out the speed and the bandwidth capabilities, done. no cap. π―
β SEE ALSO β
Kernel file ./drivers/gpu/drm/amd/amdgpu/amdgpu_device.c β that's where she lives, go say hi π§
and now the friend group, in order, because everyone gets their moment:
pcie_replay_count(9)board_info(9)uma/carveout_options(9)uma/carveout(9)amdgpu_device_supports_px(9)amdgpu_device_supports_boco(9)amdgpu_device_supports_baco(9)amdgpu_device_supports_smart_shift(9)amdgpu_device_mm_access(9)amdgpu_device_aper_access(9)amdgpu_device_vram_access(9)amdgpu_device_get_rev_id(9)amdgpu_device_asic_init(9)amdgpu_device_mem_scratch_init(9)amdgpu_device_mem_scratch_fini(9)amdgpu_device_program_register_sequence(9)amdgpu_device_pci_config_reset(9)amdgpu_device_pci_reset(9)amdgpu_device_resize_fb_bar(9)amdgpu_device_need_post(9)amdgpu_device_should_use_aspm(9)amdgpu_device_vga_set_decode(9)amdgpu_device_check_block_size(9)amdgpu_device_check_vm_size(9)amdgpu_device_check_arguments(9)amdgpu_switcheroo_set_state(9)amdgpu_switcheroo_can_switch(9)amdgpu_device_enable_virtual_display(9)amdgpu_device_parse_gpu_info_fw(9)amdgpu_device_ip_early_init(9)amdgpu_device_ip_init(9)amdgpu_device_fill_reset_magic(9)amdgpu_device_check_vram_lost(9)amdgpu_device_set_cg_state(9)amdgpu_device_ip_late_init(9)amdgpu_device_smu_fini_early(9)amdgpu_device_ip_fini(9)amdgpu_device_delayed_init_work_handler(9)amdgpu_device_ip_suspend_phase1(9)amdgpu_device_ip_suspend_phase2(9)amdgpu_device_ip_suspend(9)amdgpu_device_ip_resume_phase1(9)amdgpu_device_ip_resume_phase2(9)amdgpu_device_ip_resume_phase3(9)amdgpu_device_ip_resume(9)amdgpu_device_detect_sriov_bios(9)amdgpu_device_asic_has_dc_support(9)amdgpu_device_has_dc_support(9)amdgpu_device_check_iommu_direct_map(9)amdgpu_device_check_iommu_remap(9)amdgpu_device_init(9)amdgpu_device_fini_hw(9)amdgpu_device_evict_resources(9)amdgpu_device_pm_notifier(9)amdgpu_device_prepare(9)amdgpu_device_complete(9)amdgpu_device_suspend(9)amdgpu_device_resume(9)amdgpu_device_reset_sriov(9)amdgpu_device_has_job_running(9)amdgpu_device_should_recover_gpu(9)amdgpu_device_gpu_recover(9)amdgpu_device_partner_bandwidth(9)amdgpu_device_get_pcie_info(9)amdgpu_device_is_peer_accessible(9)amdgpu_pci_error_detected(9)amdgpu_pci_mmio_enabled(9)amdgpu_pci_slot_reset(9)amdgpu_pci_resume(9)amdgpu_device_halt(9)amdgpu_device_get_gang(9)amdgpu_device_switch_gang(9)amdgpu_device_enforce_isolation(9)
like genuinely the whole extended friend group showed up. ate and left no crumbs. π
okay and finally, the sign-off: this page comes from ./drivers/gpu/drm/amd/amdgpu and it's dated October 2026, under the manual name amdgpu_device_gpu_bandwidth(9). mwah. go find some bandwidth bestie, you got this πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms