[PlanetCCRMA] Audiophile 2496 and others - pro quality impossible

Mark Knecht markknecht@gmail.com
Thu Nov 17 10:17:00 2005


On 11/17/05, mArukqs <marukas@hardcore.lt> wrote:
> Of course I did lspci and setpci stuff for a few hours and played with
> latency with no good results. Even tried to change latency in BIOS.

I know you're frustrated. Try not to snap. ;-)

Now, lspci, etc., is not what I'm speaking about. With realtime
kernels each process (Jack, interrupt service routines, etc.) are
given 'priorities'. to get good realtime performance you must set the
priorities of your processes so thatthe system will pay enough
attention to them. As I mentioned in a thread on this subject the
other day (to which you did not reply) you can use chrt to accomplish
this.

1) Here are the interrupts in my AMD64 box. Note that the HDSP is 58.
My 1394 controller is IRQ 66. This is where my audio drive is. My
system drive is on 233.

lightning ~ # cat /proc/interrupts
           CPU0
  0:    8311716    IO-APIC-edge  timer
  1:       2564    IO-APIC-edge  i8042
  7:          2    IO-APIC-edge  lpptest
  8:          0    IO-APIC-edge  rtc
  9:          0   IO-APIC-level  acpi
 12:      92110    IO-APIC-edge  i8042
 14:         48    IO-APIC-edge  ide0
 50:          2   IO-APIC-level  ehci_hcd:usb1
 58:          0   IO-APIC-level  hdsp
 66:          2   IO-APIC-level  ohci1394
217:     843267   IO-APIC-level  ohci_hcd:usb2, eth0
225:          0   IO-APIC-level  libata, NVidia CK804
233:      65296   IO-APIC-level  libata
NMI:        253
LOC:    8310556
ERR:          1
MIS:          0
lightning ~ #


2) You can run this command to see the priorities of each process. Do
this with Jack running so you can see what priority Jack is getting.
For goor realtime performance you want Jack and your sound card's IRQ
both up around 80.

ps -eo pid,pri,rtprio,cmd

3) As I said yesterday, I set my system using this set of commands:

/usr/bin/chrt -f -p 80  `/bin/pidof "IRQ 58"`
/usr/bin/chrt -f -p 75 `/bin/pidof "IRQ 66"`
/usr/bin/chrt -f -p 60 `/bin/pidof "IRQ 233"`

>
> By the way, when I run jackd in playback only mode (switch -P) it works
> without any xruns.

This is interesting. I filed a bug report on a cheap on-board sound
chip that had a similar issue. I somehow doubt that this is the issue
with the AP2496 as so many people use it. (Although probably very few
do 96KHz so maybe you uncovered something...)

- Mark