USB4STREAM Adding Busy Poll Option For Lower Latency At The Cost Of Increased CPU Cycles

USB4STREAM Adding Busy Poll Option For Lower Latency At The Cost Of Increased CPU Cycles

One of the nifty new features of Linux 7.2 is USB4STREAM as an Intel-developed solution for quickly sending data between USB4 connected systems. Now for the upcoming Linux 7.3 cycle, a busy poll mode is being added to provide lower-latency data transfers at the expense of increased CPU activity. Intel engineers developed the USB4STREAM protocol as a super simple way for transferring raw packets between hosts using USB4/Thunderbolt. Intel Thunderbolt expert Mika Westerberg with the assistance of Claude Opus 4.8 has devised a means of busy polling for USB4STREAM to provide lower latency transfers. The queued patch explains: "Using interrupts and scheduling workers increase latency so latency critical applications may want to avoid that. Make this possible in USB4STREAM by adding a new ConfigFS attribute: busy_poll that, when activated switches the rings to polling mode. The cost for lower latency is that this burns more CPU cycles and things like poll(2) cannot be used." This busy poll mode for USB4STREAM with Linux 7.3+ can be toggled via the /sys/kernel/config/thunderbolt/stream/[xdomain].[service]/$name/busy_poll interface. The patch is currently in thunderbolt.git's next branch ahead of the upcoming Linux 7.3 merge window.

Original Source

Read the full article at Phoronix →

KhanList aggregates and links to publicly available news content. We do not host full articles from third-party sources. Always verify important information with original sources.