Page 1 of 1

win11 USB performance tuning?

Posted: Sat May 10, 2025 7:06 pm
by kf4tek
Hello, running SDRC on a win11 Dell inspiron 16 plus 7620 with 32GB RAM. With a B210 USRP connected to the USB 3.1 port, I can get the 28MHz BW option to stream smoothly. CPU use is low and GPU use is maybe 30%. But, I cannot use the 56MHz BW option without sample loss; judging from the length of a recorded segment vs. the clock time it took to record it, I'm losing about 30% of the samples at 56MS. (E.G., a recording made over 30 seconds is only 20 seconds long when played back, and the audio sounds sped up.) CPU and GPU use also claim to be low while this is occurring.

I've scoured the web, updated all the drivers I can find, turned off all the power saving options I can find, but still no joy. 56MS should be just under 2Gbit/sec, and the laptop specs claim it can do 5. I don't have any other USB devices connected to that side of the laptop, and I'm not using a hub.

Anyone found any tips or tricks that helped them achieve better USB throughput?

Thanks,
Mike

Re: win11 USB performance tuning?

Posted: Sun May 11, 2025 7:06 am
by jdow
Twice the sample rate gives about four times the load for portions of the SDR systems. (And with USB overhead I'd suspect "A bit over 2 Gbps" is more accurate. But that's still way under capacity.) Note that once you start dropping packets the TaskManager readout is wildly inaccurate. I noticed this back 20+ years ago when I was doing video programming with a DirectShow knockoff from Matrox. Can you ease it up in smaller steps? You might discover where it goes blurp that way.

You might get a small boost by digging through tools->options for the priority boost option. Or experiment with TaskMangler to raise SDRC's priority to "highest". I'd skip "RealTime" unless you have a pretty good idea of the downsides of trying that.

I have a similar problem with the CPU I have in my system with a "1Hz" step size sample rate around 134,217,728 sps. (2^27) The logical flow through simple SDRs breaks into two paths, one for the FFT and display with the other for the decimators, filters, and demodulators. So while 16 CPUs is nice when running virtual machines and games it can be pretty useless when running SDRs.

{^_^}