Help improving my Linux audio performance

Hi there, I have just bought a PreSonus Firebox (on advice from this forum) and have got it working with my Ubuntu Feisty Faun system. I can now listen to audio I have recorded in Ardour and it sounds pretty darn good!

The trouble is latency. To even start Jack using FreeBoB without getting XRun errors whilst not doing anything I have to set up with:

Frames/Period: 64
Sample Rate: 44100
Periods/Buffer: 4
Latency: 5.8ms

But even with that setup, I hear a lot of pops during playback. I even hear pops with Frames/Period set to 256 (23.2ms latency). My system is as follows:

AMD 64 3800+
2GB RAM
PreSonus Firebox
2 x 250GB SATA HDDs (not using RAID) with the following partitions:

  • sda1 - Ubuntu 7.04 on
  • sda2 - Personal docs
  • Backed up data & Windows Vista (going to bin it) on sdb

This situation doesn’t seem right with my specs. Perhaps I am wrong?

Anyways, I am wondering what I can do to improve this situation. I am open to installing a different distro as I havn’t been using Ubuntu for long enough to mind wiping and starting again! Will using hdds in RAID help? Any advice would be greatly appreciated.

Thanks in advance,

Dominic

Thanks guys.

I have not made any changes to the kernel since installing Ubuntu (not the studio version). So certainly no preemptive kernel.

I am not running Jack in realtime, it won’t let me do that (after trying several things I still can’t figure that one) and I can’t even get it to run nice with frames/period = 128 and nperiods = 2.

I have just downloaded Ubuntu Studio and shall be installing that when I get a minute and have figured out the best way to install on my drives with audio in mind. Any advice on partitioning and installation that will help with latency (2 x 250GB SATA hdds)?

Again, thanks for the help :slight_smile:

Dominic

first things first: are you running JACK in realtime mode (-R, or the “realtime” option in the QJackctl setup dialog) ?

btw, frames/period = 64 is a very, very ambitious setting for a system you haven’t been using very much. its unlikely to work without a full tuned system and an RT-kernel. its true that using num_periods = 4 helps, but you’d likely be better with frames/period = 128 and nperiods = 2. but not until you’ve got the rest of the system properly tuned up.

Hey, Ya something is weird. I have lesser hardware and can achieve a stable 1.3ms latency (48khz, 64 frames/period, Periods/buffer 2)

I do have a different interface tho… A delta 44… The question I have for you is: Are you running a fully preemptive (RT) kernel. A low latency desktop kernel just doesn’t cut it… Not for me anyway. If you’re not sure type “uname -a” at the command line… You should see something similar to this --> 2.6.20-16-realtime #2 SMP PREEMPT

I am running Ubuntu Studio, which to my surprise, did/does not come with the fully preemptive RT kernel. I had to add a repository and install it.
Here’s the link --> https://wiki.ubuntu.com/RealTime

With just the rt kernel running (no other optimizations) I am able to achieve great performance. Although I have added a few optimizations.

When I was running the low latency desktop kernel I could never do better than 5.x ms without xruns. Thats why I’m wondering.

Hopefully someone else can help you out if the above is not the case.

Good Luck

-J.D.

Installed Ubuntu Studio and the RT Kernel you showed me and I am now running in realtime without XRuns at frames/period = 64 and nperiods = 2 (latency 2.9ms).

Thanks so much for the help :slight_smile:

Dominic

Hey Dominic. np.

As far as the partitioning, I guess it’s a bit late to respond… Don’t really have any suggestions anyway though… I just did the default root and swap on my ide drive and I’m getting by with it.

In the future I plan on getting 2 sata drives. One dedicated to digital audio/ardour and the other will have the root/swap/home partitions… So then I can isolate disk access for doing recording.

Anyway, thats awesome. Glad things are working well. Happy recording :slight_smile:

-J.D.