Re: Transport problem
Ted Felix <ted-Ll1PANez7xxWk0Htik3J/[email protected]>
| Newsgroups | gmane.comp.audio.rosegarden.user |
|---|---|
| Message-ID | <[email protected]> |
On second thought... We've been here before. From my Linux MIDI Guide: -------- Note: There are variations on PREEMPT that are less than ideal. "DYNAMIC_PREEMPT" allows PREEMPT to be turned on and off in the kernel command line options (preempt=full). You'll need to check your GRUB configuration to make sure this is either set to "preempt=full" or not set at all (the default is "full") in "GRUB_CMDLINE_LINUX_DEFAULT=". You can check the setting after boot with "sudo dmesg | grep preempt". There is also PREEMPT_VOLUNTARY which is somewhere between "NONE" and "PREEMPT". You'll want to avoid this as audio requires the best possible real-time performance. -------- I should probably make that a bit more prominent now that we are running into it for real. Like move it up to the "things you'll need" section at the very top. Ted. On 2/19/23 8:52 AM, Ted Felix wrote: > We rely completely on ALSA for timer stuff. The key routine for > setting the timer in RG is: > > AlsaDriver::setCurrentTimer() > > Unless there is a bug in there (which there may very well be, the > ALSA documentation is incomplete and in many cases incorrect), the > problems tend to be due to bugs in ALSA or the kernel. They usually get > sorted over time by the ALSA folks. If they notice them. This one > seems like an interesting combination of requirements to reproduce and > thus might fly under their radar. > > I recommend building the latest kernel and seeing if that fixes the > issue. My three-year-old Debian/Ubuntu oriented notes are here if you > need: > > http://www.tedfelix.com/linux/kernel-build.html > > In general, it's really easy to do. > > If it's still there, a bug report for the ALSA folks seems like the > way to go. They can help find the issue in ALSA, or even in Rosegarden > if that's where the problem is. > > Ted. > > On 2/11/23 4:42 AM, Will Godfrey wrote: >> Recently I found Rosegarden was losing the timer source, and the >> transport was >> freezing - sometimes for nearly a second after which it would send a >> bunch of >> notes, then carry on as normal. >> >> It was some time before I realised it only happened on my Ryzen 5 >> machine (the >> one I use for music) and not on my office Intel one. I hadn't made any >> changes >> to the system and got sidetracked into thinking maybe I'd somehow >> managed to >> get infected with some malware. However I eventually remembered I'd >> done a >> normal devuan update. The only significant change was the Linux kernel >> V5.10 to >> V 6.1. Rolling that back cured the problem. >> >> Asking some questions on-line identified the problem. >> >> First off, I use the RT-Preemt kernel - the 'normal' one doesn't have >> the issue >> at all. >> >> Secondly, the Ryzen has the AMD equivalent of hyper-threading, my >> older Intel >> doesn't. >> >> Finally, since Linux V5.12 the scheduler has been modified to allow >> dynamic >> preemption. Disabling this in the BIOS cures the problem, albeit with >> a very >> small loss of performance. >> >> I wonder if there should be another look at how Rosegarden does it's >> timing. I >> did try to set the timing source to the audio hardware. It seemed to >> recognise >> it, but actually totally ignored it. Saving and reloading showed no >> time source >> at all, yet still ran as if it was on System Timer. >> > > > _______________________________________________ > Rosegarden-user mailing list > [email protected] - use the link below to unsubscribe > https://lists.sourceforge.net/lists/listinfo/rosegarden-user _______________________________________________ Rosegarden-user mailing list [email protected] - use the link below to unsubscribe https://lists.sourceforge.net/lists/listinfo/rosegarden-user