Pianoteq and RT priorities
I play piano with my slackware installation (13.1). The program is commercial closed source and it's called pianoteq. The program suggest to use rt-kernel but in my configuration seems pointless, since the ordinary kernel provides rt capabilities.
There is two ways to start a program (that supports RT) in RT mode.
- First option requires filesystem with POSIX capabilities: setcap cap_ipc_lock,cap_sys_nice=ep /usr/bin/jackd You have to repeat for every pro-audio application. In my case also for /usr/bin/pianoteq
- Second option:
In file /etc/set_rlimits.conf
write every program (that supports RT) a line like: @music /usr/bin/jackd nice=39 rtprio=80 memlock=100000
start the program with set_rlimits -r PROGRAMNAME
Interesting findings or bad configuration
My configuration is this:
@music /usr/bin/jackd nice=39 rtprio=80 memlock=100000 @music /usr/bin/qjackctl nice=39 rtprio=80 memlock=300000 @music /usr/bin/pd nice=-1 rtprio=80 memlock=400000 @music /usr/bin/pianoteq nice=-1 rtprio=80 memlock=500000 @music /usr/bin/fst.exe nice=39 rtprio=95 memlock=16000000 @music /usr/bin/vsthost nice=39 rtprio=80 memlock=5000000 @music /usr/bin/qtractor nice=39 rtprio=20 memlock=5000000 @music /usr/bin/jack_capture nice=39 rtprio=20 memlock=5000000
This configuration gives the users that belong to music group the privilege to start (if they want) those applications with RT capabilities.
Interesting part was, that when I tried to record in tempfs filesystem (on the ram) with non-rt jack_capture, pianoteq does not liked that. The sound was with problems. I forgot to keep that "record".
Also when I used RT capabilities I was able to open ksnapshot without problem in sound.
Here the sound with non-RT kernel and without set_rlimits. Please excuse the bad example. To take pianoteq to the limits I played the demo of Chopin Waltz op. 70 No1 three times faster! Not a joy to listen at that speed :) The gaps is because there is not enough cpu "power".
Here pianoteq with non-RT kernel but with set_rlimits enabled on qjackctl, jackd, pianoteq and jack_capture. Like a... miracle there is more cpu power and no gaps.
What about cpufreq?
I was using pianoteq for 2 years without RT capabilities, I had some problems and to solve them I disabled wifi, set cpu to freq 1200Mhz-1500Mhz and added niceness to X server. All those steps are not needed with RT capabilites set. Awesome :)
If you experience problems with pro-audio applications, give RT capabilities to the relative applications. It seems the special RT-kernel is no needed.
Of course it's also good idea to upgrade your machine :)
Pianoteq gives better graph and perfomance index on the same machine. 11 versus 13 is BIG difference (approx. 20% better performance). Also the computer is much more usable. You can open application without worries.
- 6 Sep 2011: added extra info. CPU throttling can be done, wifi and X is not a issue any more.
You are here with: CCBot/2.0 (http://commoncrawl.org/faq/)
Your IP: 18.104.22.168
Made in Linux :)