Skip to content

Lag when I2C is in continuous use on RTX 5080 #1026

@CalcProgrammer1

Description

@CalcProgrammer1

NVIDIA Open GPU Kernel Modules Version

Latest in Arch Linux nvidia-open-dkms

Please confirm this issue does not happen with the proprietary driver (of the same version). This issue tracker is only for bugs specific to the open kernel driver.

  • I confirm that this does not happen with the proprietary driver package.

Operating System and Version

Arch Linux

Kernel Release

6.18.9

Please confirm you are running a stable release kernel (e.g. not a -rc). We do not accept bug reports for unreleased kernels.

  • I am running on a stable kernel release.

Hardware: GPU

PNY Epic-X ARGB RTX 5080

Describe the bug

I've just implemented support for the 5080 variant of this GPU in OpenRGB. My friend has been running the 5070Ti variant in his Windows 11 system for a while now and we got it supported in OpenRGB. He runs software-driven RGB effects continuously from OpenRGB (where OpenRGB sends LED updates to each individual LED up to 60 times per second, limited by I2C access time). Each LED requires an I2C block transfer of 7 bytes and this GPU has 44 LEDs total (a few less on the 5070Ti, I think 41 total). On his Windows machine, this is fine. He leaves the OpenRGB effects running while gaming and gaming performance is not significantly impacted.

However, I just got the 5080 variant of this card and installed it in my aging AMD Linux system. It has an ASUS PRIME X370 PRO motherboard with an AMD Ryzen 9 5900HX CPU. The main thing I noticed is that this system has a limited PCIe bus due to splitting the lanes between the GPU and a PCIe-to-NVMe adapter board. The GPU shows as using PCIe 3.0 x8.

What I notice is that in any significantly demanding game (confirmed on Marvel Rivals and Cyberpunk 2077), the frame rate goes from smooth 120+ FPS down to like 10 FPS when OpenRGB is running and the I2C interface is being accessed. As soon as I stop I2C activity, the frame rate stabilizes back to normal. I have used OpenRGB on Linux with my old NVIDIA GPU (EVGA RTX 3080 FTW3) and it did not exhibit any issue, but it was running on an Intel i7-14700K system with PCIE 4.0 x16 support and that card has significantly less I2C data as it is only addressable per zone rather than per individual LED.

I want to test this behavior on this system in Windows to see if it happens there. It might just be a PCIe bottleneck but it is something I haven't observed before.

To Reproduce

Install latest OpenRGB pipeline version on a system with a PNY Epic-X ARGB 5070, 5070Ti, 5080, or 5090 and start an effect using the OpenRGB Effects Plugin. It doesn't seem to matter if I lower the FPS slider, it just makes the stuttering intermittent rather than continuous.

Bug Incidence

Always

nvidia-bug-report.log.gz

Running nvidia-bug-report.sh...
Detected driver type: Running RM Driver on GPUs
complete.

Summary of Skipped Sections:

Skipped Component | Details

acpidump output | acpidump not found

mst output | mst not found

nvlsm-bug-report.sh output | nvlsm-bug-report.sh not found

Summary of Errors:

Error Component | Details | Resolution

More Info

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions