Some thing for the new cycle
len at ovenwerks.net
Sat May 12 21:09:14 UTC 2012
About time to start work on 12.10... ideas first
1) we don't seem to have a midi filter router. I was talking to a user who
needs one and I didn't know what to suggest. After looking around I found
qmidiroute which works quite well. There is zonage as well, but it is
alpha and so not likely to be in our repos soon enough. Anything else I
could find was CLI (see midish). I was able to use qmidiroute to split my
dx7 to two zones with two patches and cap the velocity on one of the
ranges. I could find other uses too... such as changing the sound of one
pad on my ancient yamaha DD11 pad set. (yes there are other ways too)
2) there has been some talk of a "record mode". I think the name could
changed to "performance mode" as it may be more useful for live use or
even video work.
Even though ubuntu is moving from unix init to upstart, the idea of
runlevels has been preserved. While no other ubuntu products (that I am
aware of) use anything more than rl 012S6, there are still 3-5 which are
the same as 2 as they come but can be changed for this purpose.
I would first off recommend that US recommend at least 2Gig memory for
audio use. Video or graphics will probably want even more. I found that I
hit the memory wall long before I ran out of CPU on my netbook... even
with cpu throttling running things at 50% speed (800mhz) I was showing
only 35% cpu with 4 or5 softsynths playing, hydrogen playing and ardour
recording. I realize this is not an exhaustive test, but it did show that
things got bad real quick once that swap line got hit.
a) most everything that will help performance cannot be done from userland.
The only thing that can be done from userland that I have found so far is
to stop PA-jack bridging. PA-jack bridging uses lots of cpu at low
latencies. It is easy to stop and start. I've played with this.
b) different strokes for different folks. Not everyone needs the same
things. any performance mode should be configurable by the user with a
self documenting GUI application.
c) cron and friends anacron and atd can be stopped. Things like apt
updating can cause a lot of net/disk activity. The default upstart configs
for these programs can easily be overridden without changing the stock
config making for trivial install or unistall of our changes. I've played
with this and it is easy to set up to change with runlevels.
d) networking. This one I am not sure of as I can think of too many
reasons to leave networking going. We already are stopping from starting a
sw update anyway. The only networking problem that stands out (on my
netbook and others) is the wlan driver, ath9k. With this kernel module
installed. I get an xrun per minute. Forcing the cpu to performance mode
sometimes makes it xrun every two minutes, but it is unacceptable/audible
anyway. Telling NM to disconnect from the wireless AP, counter to what I
would think, makes things worse. I then get an xrun every 5 seconds.
turning the wireless power off does not change that. I actually have to do
a "modprobe -r ath9k" to get rid of these xruns. The up side is that
repeated loading and unloading the module does not cause problems. This is
a good example a config that needs to be user set-able. different systems
need different modules. And some may not need any change to run well. Once
I removed the module BTW, NM caused no problems if left running.
e) cpu throttling. some of the audio set up pages around the net suggest
setting cpu throttling to "performance" in /etc/rc.local This does not
work in ubuntu which delays it's setting till 60 seconds after boot.
Besides which it is a nice feature for a netbook/laptop to stay cooler and
use less battery when low latency is not required. So the ability to
switch it on or off would be nice. I have successfully set up init/upstart
to do this with runlevel 3 on my machine. It seems to be set up to only
get set up for machines with batteries, but I would be happy if someone
with a newer desktop machine (my desktop is too old) would do a
cpufreq-info and see if ondemand is set. You may have to install
cpufrequtil to do this. If you do, you may be interested to check what
speed your cpu is running at while recording. I found that in the test
mentioned in memory size cpu throttling had my 1.6ghz machine running at
.8Ghz. Ubuntu right now sets this twice (maybe a bug?) needs more
So, for me all that remains is to come up with a secure way for userland
to be able to switch runlevels... we already do this with the
reboot(runlevel 6) and halt (runlevel 0), just have to extend from that.
Finally there are more settings suggested for audio set up than we do now.
these should be investigated. Many of them are midi specific.
Many modern machines may not need any help at all. Even my desktop is
pretty solid within it's capabilities. These are help for those who have a
specific problem as in my netbook.
More information about the Ubuntu-Studio-devel