Ardour struggles, slowdown with digital soundeffect - ALSA, Gina24 from Echo, Fedora 17

Hi folks, …

As described in the Subject, Operating system is a recent Fedora 17, Soundcard is Gina24 from Echo Audio.

Ardour 2 and Ardour 3 Beta 4, both behave the same. I’m importing a wave file, one track, all capacity free.

When Ardour starts to play, it may pay up to 10-20 seconds perfectly, maybe only 1, maybe 0, then it starts to slow down.
The time is like in a 2-3 faktor slowdown, and audi seems to repeat small portions of the audio file, like resampling, slowdown.
Then it suddenly runs okay for a period, and starts struggeling again, …

… no error messages of any kind.

VLC, and other applications seem to be using the card without problems. …

What I was trying: Changeing sample rates, and buffer size, and such, … no luck.

How can I troubleshoot this kind of problem? Ardour is GREAT! i would LOVE to use, especially ardour 3!

I’m experienced with linux and software development, I would help if I can … just let me know.

Fedora Release 17 (BeefyMiracle) 64-bit, Kernel Linux 3.5.2-1.fc17.x86_64, GNOME 3.4.2
Memory: 15.7 GiB, Processor: Intel® Core™ i7-2600K CPU @ 3.40GHz × 8

[root@casino ~]# jackd --version
jackdmp 1.9.8 tmpdir /dev/shm protocol 8

no message buffer overruns

[root@casino ~]# qjackctl
06:56:24.990 Patchbay deactivated.
06:56:24.991 Statistics reset.
06:56:24.997 ALSA connection change.
Cannot connect to server socket err = No such file or directory
Cannot connect to server socket
jack server is not running or cannot be started
06:56:25.003 ALSA connection graph change.
06:56:28.023 JACK is starting…
06:56:28.024 /bin/jackd -dalsa -dhw:0 -r48000 -p1024 -n2
Cannot connect to server socket err = No such file or directory
Cannot connect to server socket
jack server is not running or cannot be started
06:56:28.026 JACK was started with PID=9401.
no message buffer overruns
no message buffer overruns
no message buffer overruns
jackdmp 1.9.8
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2011 Grame.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
JACK server starting in realtime mode with priority 60
control device hw:0
control device hw:0
audio_reservation_init
Acquire audio card Audio0
creating alsa driver … hw:0|hw:0|1024|2|48000|0|0|nomon|swmeter|-|32bit
control device hw:0
ALSA: Cannot open PCM device alsa_pcm for playback. Falling back to capture-only mode
Cannot initialize driver
JackServer::Open() failed with -1
Failed to open server
06:56:28.245 JACK was stopped with exit status=255.
06:56:30.207 Could not connect to JACK server as client. - Overall operation failed. - Unable to connect to server. Please check the messages window for more info.
Cannot connect to server socket err = No such file or directory
Cannot connect to server socket
jack server is not running or cannot be started

Ardour 3.0beta5
(built from revision [‘13072’])

Build documentation: False
Debuggable build: True
Install prefix: /usr/local
Strict compiler flags: True
Architecture flags: None
Aubio: True
AudioUnits: False
AU state support: False
Build target: x86_64
CoreAudio: False
Debug RT allocations: False
Process thread timing: False
Denormal exceptions: False
FLAC: True
FPU optimization: True
Freedesktop files: False
Freesound: True
JACK session support: True
LV2 UI embedding: True
LV2 support: True
LXVST support: True
OGG: True
Phone home: False
Program name: Ardour
Rubberband: True
Samplerate: True
Translation: True
Unit tests: False
Universal binary: False
Generic x86 CPU: False
Windows VST support: False
Wiimote support: False
Windows key: Mod4 Super
C compiler flags: [’-I/home/harrison/ardour/3.0’, ‘-O0’, ‘-g’, ‘-std=c99’, ‘-pedantic’, ‘-Wall’, ‘-Wextra’, ‘-Wno-unused-parameter’, ‘-fshow-column’, ‘-I/home/harrison/gtk/inst/include’, ‘-I/home/harrison/gtk/inst/include’, ‘-DWAF_BUILD’, ‘-rdynamic’, ‘-DARCH_X86’, ‘-msse’, ‘-mfpmath=sse’, ‘-DUSE_XMMINTRIN’, ‘-DBUILD_SSE_OPTIMIZATIONS’, ‘-Wall’, ‘-D_LARGEFILE64_SOURCE’, ‘-D_FILE_OFFSET_BITS=64’, ‘-DENABLE_NLS’]
C++ compiler flags: [’-I/home/harrison/ardour/3.0’, ‘-O0’, ‘-g’, ‘-ansi’, ‘-Woverloaded-virtual’, ‘-Wnon-virtual-dtor’, ‘-Wall’, ‘-Wextra’, ‘-Wno-unused-parameter’, ‘-fshow-column’, ‘-I/home/harrison/gtk/inst/include’, ‘-I/home/harrison/gtk/inst/include’, ‘-DWAF_BUILD’, ‘-DLXVST_64BIT’, ‘-rdynamic’, ‘-DARCH_X86’, ‘-msse’, ‘-mfpmath=sse’, ‘-DUSE_XMMINTRIN’, ‘-DBUILD_SSE_OPTIMIZATIONS’, ‘-Wall’, ‘-Woverloaded-virtual’, ‘-D_LARGEFILE64_SOURCE’, ‘-D_FILE_OFFSET_BITS=64’, ‘-D__STDC_LIMIT_MACROS’, ‘-D__STDC_FORMAT_MACROS’, ‘-DENABLE_NLS’, ‘-DHAVE_FFTW3’]

Driver: ALSA
Interface: Gina24
SampleRate: 48000Hz
Buffer size: 1024

Ardour could not start JACK

There are several possible reasons:

  1. You requested audio parameters that are not supported…
  2. JACK is running as another user.

[root@casino ~]# ardour2
WARNING: Your system has a limit for maximum amount of locked memory!
This might cause Ardour to run out of memory before your system runs
out of memory. You can view the memory limit with ‘ulimit -l’, and it
is normally controlled by /etc/security/limits.conf

Ardour 2.8.14
(built using 13065 and GCC version 4.7.0 20120507 (Red Hat 4.7.0-5))
Copyright © 1999-2008 Paul Davis
Some portions Copyright © Steve Harris, Ari Johnson, Brett Viren, Joel Baker

Ardour comes with ABSOLUTELY NO WARRANTY
not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
This is free software, and you are welcome to redistribute it
under certain conditions; see the source for copying conditions.
/usr/share/themes/Adwaita/gtk-2.0/gtkrc:81: error: unexpected identifier reliefstyle', expected character}’
loading default ui configuration file /etc/ardour2/ardour2_ui_default.conf
Loading ui configuration file /etc/ardour2/ardour2_ui_dark.rc
ardour: [INFO]: Ardour will be limited to 4096 open files
loading system configuration file /etc/ardour2/ardour_system.rc
ardour: [INFO]: Using SSE optimized routines
ardour: [INFO]: looking for control protocols in /root/.ardour2/surfaces/:/usr/lib64/ardour2/surfaces/
ardour: [INFO]: Control surface protocol discovered: “Mackie”
powermate: Opening of powermate failed - No such file or directory
ardour: [INFO]: Control protocol powermate not usable
ardour: [INFO]: Control surface protocol discovered: “Generic MIDI”
ardour: [INFO]: Control protocol Tranzport not usable
ardour: [INFO]: Control surface protocol discovered: “Wiimote”
Cannot connect to server socket err = No such file or directory
Cannot connect to server socket
jack server is not running or cannot be started
NSD response -5 folder =
JACK COMMAND: /bin/jackd -p 128 -R -P 60 -T -d alsa -n 2 -r 48000 -p 8192 -d hw:1,0
Cannot connect to server socket err = No such file or directory
Cannot connect to server socket
jackdmp 1.9.8
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2011 Grame.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
no message buffer overruns
no message buffer overruns
no message buffer overruns
JACK server starting in realtime mode with priority 60
control device hw:1
control device hw:1
audio_reservation_init
Acquire audio card Audio1
creating alsa driver … hw:1,0|hw:1,0|8192|2|48000|0|0|nomon|swmeter|-|32bit
control device hw:1
configuring for 48000Hz, period = 8192 frames (170.7 ms), buffer = 2 periods
ALSA: final selected sample format for capture: 32bit integer little-endian
ALSA: use 2 periods for capture
ALSA: final selected sample format for playback: 32bit integer little-endian
ALSA: cannot set period size to 8192 frames for playback
ALSA: cannot configure playback channel
JackTemporaryException : now quits…
Cannot initialize driver
JackServer::Open() failed with -1
Failed to open server
Cannot connect to server socket err = No such file or directory
Cannot connect to server socket

Strange, as far as I remembered Ardour 2 started, … (Maybe with another soundcard?) … however, now it wont start.

[root@casino ~]# dmesg | grep audio

[42540.551815] ALSA sound/pci/echoaudio/gina24_dsp.c:228 set_sample_rate: 44100 clock 3
[42540.551817] ALSA sound/pci/echoaudio/echoaudio_gml.c:71 write_control_reg: 0x800d13
[42540.551818] ALSA sound/pci/echoaudio/echoaudio.c:617 pcm_hw_params ok
[42540.551880] ALSA sound/pci/echoaudio/echoaudio.c:703 Prepare rate=44100 format=10 channels=2
[42540.551883] ALSA sound/pci/echoaudio/echoaudio_dsp.c:837 set_audio_format[16] = 7
[42540.551946] ALSA sound/pci/echoaudio/echoaudio.c:681 pcm_hw_free(16)
[42540.551948] ALSA sound/pci/echoaudio/echoaudio_dsp.c:1091 free_pipes: Pipe 16
[42540.551950] ALSA sound/pci/echoaudio/echoaudio.c:688 pcm_hw_freed
[42540.551967] ALSA sound/pci/echoaudio/echoaudio.c:688 pcm_hw_freed
[42540.551969] ALSA sound/pci/echoaudio/echoaudio.c:509 pcm_close
[42540.551971] ALSA sound/pci/echoaudio/echoaudio.c:514 pcm_close oc=2 cs=0 rs=1
[42540.551973] ALSA sound/pci/echoaudio/echoaudio.c:520 pcm_close2 oc=2 cs=0 rs=1
[42540.551985] ALSA sound/pci/echoaudio/echoaudio.c:688 pcm_hw_freed
[42540.551987] ALSA sound/pci/echoaudio/echoaudio.c:509 pcm_close
[42540.551989] ALSA sound/pci/echoaudio/echoaudio.c:514 pcm_close oc=1 cs=0 rs=1
[42540.551991] ALSA sound/pci/echoaudio/echoaudio.c:520 pcm_close2 oc=1 cs=1 rs=1

It is really strange that Ardour wont start from command line at all, since jack is missing, however, if started from Application menu, it disables the currently running Audi processes when “Starting audio engine” gives a WARNING: Your system has a limit for maximum amount of locked memory. This might cause Ardour to run out of memory before your system runs out of memory.

… and it simply starts. Ardour3 top : Jack 48khz, 10.7ms …

So, basically I have a jack problem? How can I troubleshoot it?

Sounds to me like you might really need to use an RT (low-latency) kernel or you have something running in the background that’s really affecting the performance of JACK/Ardour Try running VLC through JACK to see what happens. If you get similar problems then JACK+System are not tuned up…

I think, I am running Ardour directly with Alsa, … there is no Jack running as far as I see …

@LaKing there is ALWAYS Jack running. Ardour does not run without Jack. It can however manage Jack for you.

      Seablade

Hey!
No, you don’t need an RT kernel to simply play back a single file in Ardour. I suspect there is something wrong with your jack settings, but it could also be a problem with your system. Could you please post your jack settings? The exact version number of Ardour2 and where it’s from would also be of interest. Maybe also your pc specs.

Best
Benjamin

It is really strange that Ardour wont start from command line at all, since jack is missing...

I don’t think JACK is missing by the logs you posted, I think JACK is not configured properly, and maybe you have to select other I/O of your device …

How did you install JACK? From package manager or self compiled?

and, Why are you running everything as root? Are you having issues with permissions as normal user? If so, then you have to add your user to the “audio” group, first issue the command:

groups username (where username is your normal user account)

and see if you see “audio” in that line, if not do as root:

useradd -g audio user (replace user for the real user)

and have you edited:

/etc/security/limits.conf

by placing

@audio - rtprio 99
@audio - memlock unlimited

at the very end of the file?

reboot and test but NOT AS ROOT

As someone else pointed out, you are running as root, highly discouraged.

The current problem you have is in the logs.

When starting with qjackctl:
[root@casino ~]# qjackctl

06:56:28.024 /bin/jackd -dalsa -dhw:0 -r48000 -p1024 -n2

control device hw:0
control device hw:0

ALSA: Cannot open PCM device alsa_pcm for playback. Falling back to capture-only mode
Cannot initialize driver

So hw:0 is not working for playback.

When starting with Ardour:

[root@casino ~]# ardour2

jackdmp 1.9.8

control device hw:1
control device hw:1

creating alsa driver … hw:1,0|hw:1,0|8192|2|48000|0|0|nomon|swmeter|-|32bit

So hw:0 does not work, but hw:1 works, and you have qjackctl configured to start jack on hw:0.
Change the audio device to hw:1 in the qjackctl configuration window and it will likely work just like when letting ardour start jack.

But stop running as root.

I usually run things as normal user, from the application menu… I posted this logs running as root to make sure there are no permission problems.

Added my user to the audio group, added settings to limits.conf, rebooted, … no go.

Most stuff came from the official fedora repo, via package manager. I compiled only Ardour 3.

[x@casino ~]$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 7: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 8: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 9: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Gina24 [Gina24], device 0: Analog PCM [Gina24]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
card 1: Gina24 [Gina24], device 1: Digital PCM [Gina24]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7

[x@casino ~]$ aplay -L
null
Discard all samples (playback) or generate zero samples (capture)
pulse
PulseAudio Sound Server
default
Default ALSA Output (currently PulseAudio Sound Server)
hdmi:CARD=NVidia,DEV=0
HDA NVidia, HDMI 0
HDMI Audio Output
hdmi:CARD=NVidia,DEV=1
HDA NVidia, HDMI 0
HDMI Audio Output
hdmi:CARD=NVidia,DEV=2
HDA NVidia, HDMI 0
HDMI Audio Output
hdmi:CARD=NVidia,DEV=3
HDA NVidia, HDMI 0
HDMI Audio Output
sysdefault:CARD=Gina24
Gina24, Gina24
Default Audio Device

I dont know why, but in Ardour I have 4x HDMI and 2x Gina24. Whatever Gina card I choose (There is only one in the PC) it gives me the same results. … It starts to play, then struggles. …

As it seems this issue is more complex then what we can troubleshoot. If you have any ideas, let me know, I’ll try them out. …

Thank you very much for your help.

Try selecting in qjackctl settings different individual I/O, for example

Input Device = hw:0,0
Different for Output =hw:0,1

Or the other way around

Do notice that from the output you posted above Gina24 has 8 I/O for analog and other 8 for digital

In the case of digital the values would be hw:1,0 … up to hw:1,7

Your going to have to play around with all these I/O to test but my guess is that the first two should suffice for now, the trick is not to assign same values for both In and Out and let’s hope that gives you a better result…

First of all, thank you very much guys, for all this support, it’s priceless. .) …

I have only one PCI slot on this board. (And no firewire, so I can use only one soundcard/firewire card at a time)

I installed rtirq-20120505-29.noarch.rpm, put snd_gina24 into the config, and set the boot kernel argument.

[root@casino init.d]# ./rtirq status

PID CLS RTPRIO NI PRI %CPU STAT COMMAND
412 FF 90 - 130 0.0 S irq/16-snd_gina
106 FF 85 - 125 0.0 S irq/8-rtc0
411 FF 80 - 120 0.0 S irq/17-snd_hda_
99 FF 75 - 115 0.0 S irq/23-ehci_hcd
100 FF 74 - 114 0.1 S irq/23-ehci_hcd
103 FF 70 - 110 0.0 S irq/1-i8042
102 FF 69 - 109 0.0 S irq/12-i8042
44 FF 50 - 90 0.0 S irq/9-acpi
82 FF 50 - 90 0.0 S irq/40-PCIe PME
83 FF 50 - 90 0.0 S irq/41-PCIe PME
84 FF 50 - 90 0.0 S irq/42-PCIe PME
89 FF 50 - 90 0.0 S irq/20-ata_piix
94 FF 50 - 90 0.0 S irq/20-ata_piix
292 FF 50 - 90 0.0 S irq/43-i915
407 FF 50 - 90 0.0 S irq/44-mei
859 FF 50 - 90 0.0 S irq/45-p6p1
1290 FF 50 - 90 0.0 S irq/16-nvidia
3 TS - 0 19 0.1 S ksoftirqd/0
10 TS - 0 19 0.0 S ksoftirqd/1
14 TS - 0 19 0.0 S ksoftirqd/2
18 TS - 0 19 0.0 S ksoftirqd/3
22 TS - 0 19 0.0 R ksoftirqd/4
26 TS - 0 19 0.0 S ksoftirqd/5
30 TS - 0 19 0.0 S ksoftirqd/6
34 TS - 0 19 0.0 S ksoftirqd/7

… settings seem to be applied.

Starting QJackCtl, 1024 frames/period, 2 periods/buffer, 48khz, … and now there is no normal playback at all, only the struggle.
Slowdown factor seems to be stable and very high, approximetly 6x, … that means on the transport it takes like 6 seconds to playback 1 second.

We seem to get closer. …
I also observed some crashes in the X11 package, while playing around with the settings earlier, I thought that it is not relevant to this problem, (The X11 crashes started after a yum update, …) but it seems to me now, that indeed it is, … now with the threaded irq’s they seem to be gone.

[x@casino ~]$ ps -eLo rtprio,cls,pid,pri,nice,cmd | grep “FF” | sort -r
- TS 2713 19 0 grep --color=auto FF
9 FF 2594 49 - /usr/lib64/ardour2/ardour-2.8.14
99 FF 8 139 - [migration/1]
99 FF 7 139 - [watchdog/0]
99 FF 6 139 - [migration/0]
99 FF 35 139 - [watchdog/7]
99 FF 32 139 - [migration/7]
99 FF 31 139 - [watchdog/6]
99 FF 28 139 - [migration/6]
99 FF 27 139 - [watchdog/5]
99 FF 24 139 - [migration/5]
99 FF 23 139 - [watchdog/4]
99 FF 20 139 - [migration/4]
99 FF 19 139 - [watchdog/3]
99 FF 16 139 - [migration/3]
99 FF 15 139 - [watchdog/2]
99 FF 12 139 - [migration/2]
99 FF 11 139 - [watchdog/1]
90 FF 412 130 - [irq/16-snd_gina]
85 FF 106 125 - [irq/8-rtc0]
80 FF 411 120 - [irq/17-snd_hda_]
75 FF 99 115 - [irq/23-ehci_hcd]
74 FF 100 114 - [irq/23-ehci_hcd]
70 FF 103 110 - [irq/1-i8042]
69 FF 102 109 - [irq/12-i8042]
60 FF 2624 100 - /usr/bin/jackd -T -ndefault -p 128 -R -P 60 -T -d alsa -P -n 2 -r 48000 -p 1024 -d hw:1,0
55 FF 2594 95 - /usr/lib64/ardour2/ardour-2.8.14
50 FF 94 90 - [irq/20-ata_piix]
50 FF 89 90 - [irq/20-ata_piix]
50 FF 859 90 - [irq/45-p6p1]
50 FF 84 90 - [irq/42-PCIe PME]
50 FF 83 90 - [irq/41-PCIe PME]
50 FF 82 90 - [irq/40-PCIe PME]
50 FF 44 90 - [irq/9-acpi]
50 FF 407 90 - [irq/44-mei]
50 FF 292 90 - [irq/43-i915]
50 FF 1290 90 - [irq/16-nvidia]

when running jack separate, over QJackCtl

[x@casino ~]$ ps -eLo rtprio,cls,pid,pri,nice,cmd | grep “FF” | sort -r
- TS 2772 19 0 grep --color=auto FF
9 FF 2734 49 - /usr/lib64/ardour2/ardour-2.8.14
99 FF 8 139 - [migration/1]
99 FF 7 139 - [watchdog/0]
99 FF 6 139 - [migration/0]
99 FF 35 139 - [watchdog/7]
99 FF 32 139 - [migration/7]
99 FF 31 139 - [watchdog/6]
99 FF 28 139 - [migration/6]
99 FF 27 139 - [watchdog/5]
99 FF 24 139 - [migration/5]
99 FF 23 139 - [watchdog/4]
99 FF 20 139 - [migration/4]
99 FF 19 139 - [watchdog/3]
99 FF 16 139 - [migration/3]
99 FF 15 139 - [watchdog/2]
99 FF 12 139 - [migration/2]
99 FF 11 139 - [watchdog/1]
90 FF 412 130 - [irq/16-snd_gina]
85 FF 106 125 - [irq/8-rtc0]
80 FF 411 120 - [irq/17-snd_hda_]
75 FF 99 115 - [irq/23-ehci_hcd]
74 FF 100 114 - [irq/23-ehci_hcd]
70 FF 103 110 - [irq/1-i8042]
69 FF 102 109 - [irq/12-i8042]
50 FF 94 90 - [irq/20-ata_piix]
50 FF 89 90 - [irq/20-ata_piix]
50 FF 859 90 - [irq/45-p6p1]
50 FF 84 90 - [irq/42-PCIe PME]
50 FF 83 90 - [irq/41-PCIe PME]
50 FF 82 90 - [irq/40-PCIe PME]
50 FF 44 90 - [irq/9-acpi]
50 FF 407 90 - [irq/44-mei]
50 FF 292 90 - [irq/43-i915]
50 FF 1290 90 - [irq/16-nvidia]

No error messages, just things like:

Jack: fPollTable i = 1 fd = 9
Jack: fPollTable i = 2 fd = 12
Jack: fPollTable i = 3 fd = 14
Jack: fPollTable i = 1 fd = 9
Jack: fPollTable i = 2 fd = 12
Jack: fPollTable i = 3 fd = 14
Jack: fPollTable i = 1 fd = 9
Jack: fPollTable i = 2 fd = 12
Jack: fPollTable i = 3 fd = 14
Jack: fPollTable i = 1 fd = 9
Jack: fPollTable i = 2 fd = 12
Jack: fPollTable i = 3 fd = 14
Jack: fPollTable i = 1 fd = 9
Jack: fPollTable i = 2 fd = 12
Jack: fPollTable i = 3 fd = 14
Jack: fPollTable i = 1 fd = 9
Jack: fPollTable i = 2 fd = 12
Jack: fPollTable i = 3 fd = 14
Jack: fPollTable i = 1 fd = 9
Jack: fPollTable i = 2 fd = 12
Jack: fPollTable i = 3 fd = 14
Jack: fPollTable i = 1 fd = 9
Jack: fPollTable i = 2 fd = 12
Jack: fPollTable i = 3 fd = 14

you WILL NEED a real time-preemtible kernel for this since the rtirq script will not run in a normal kernel

Mmm, I think this not correct anymore. Since 2.6.39 even generic kernels can do IRQ threading, as long as “irqthreads” boot option is enabled. See, for example:

linuxmusicians.com/viewtopic.php?f=4&t=7868

Oh yeah that’s right!

:slight_smile:

After disabling some stuff in BIOS:

[root@casino ~]# cat /proc/interrupts
CPU0 CPU1 CPU2 CPU3 CPU4 CPU5 CPU6 CPU7
0: 139 0 0 0 0 0 0 0 IO-APIC-edge timer
1: 3 0 0 0 0 0 0 0 IO-APIC-edge i8042
8: 1 0 0 0 0 0 0 0 IO-APIC-edge rtc0
9: 0 0 0 0 0 0 0 0 IO-APIC-fasteoi acpi
12: 4 0 0 0 0 0 0 0 IO-APIC-edge i8042
16: 22153 0 0 0 0 0 0 0 IO-APIC-fasteoi snd_gina24, nvidia
17: 200 0 0 0 0 0 0 0 IO-APIC-fasteoi snd_hda_intel
20: 11209 221 3508 15841 0 0 0 0 IO-APIC-fasteoi ata_piix, ata_piix
23: 6884 16646 9053 1079 0 0 0 0 IO-APIC-fasteoi ehci_hcd:usb1, ehci_hcd:usb2
40: 0 0 0 0 0 0 0 0 PCI-MSI-edge PCIe PME
41: 0 0 0 0 0 0 0 0 PCI-MSI-edge PCIe PME
42: 0 0 0 0 0 0 0 0 PCI-MSI-edge PCIe PME
43: 0 0 0 0 0 0 0 0 PCI-MSI-edge i915
44: 12 0 0 0 0 0 0 0 PCI-MSI-edge mei
45: 6777 0 0 0 0 0 0 0 PCI-MSI-edge p6p1
NMI: 29 43 46 29 6 5 5 6 Non-maskable interrupts
LOC: 55316 62282 60911 54853 14609 13731 13960 14565 Local timer interrupts
SPU: 0 0 0 0 0 0 0 0 Spurious interrupts
PMI: 29 43 46 29 6 5 5 6 Performance monitoring interrupts
IWI: 0 0 0 0 0 0 0 0 IRQ work interrupts
RTR: 7 0 0 0 0 0 0 0 APIC ICR read retries
RES: 55749 12165 2328 1026 740 606 517 861 Rescheduling interrupts
CAL: 6684 7051 5521 4295 7168 5686 7156 7229 Function call interrupts
TLB: 1077 726 1129 1772 627 636 395 385 TLB shootdowns
TRM: 0 0 0 0 0 0 0 0 Thermal event interrupts
THR: 0 0 0 0 0 0 0 0 Threshold APIC interrupts
MCE: 0 0 0 0 0 0 0 0 Machine check exceptions
MCP: 4 4 4 4 4 4 4 4 Machine check polls
ERR: 0
MIS: 0

Same behavior,…

16: 22153 0 0 0 0 0 0 0 IO-APIC-fasteoi snd_gina24, nvidia

The gina24 and the video card are sharing the same IRQ. I suggest that, if possible, you should move the gina24 or the video card to another physical slot. Then check the interrupts again.

If it is not possible, try the rtirq-init script to raise the priority of the gina24.

As Pablo suggested, this could be the issue, if you cannot move the card to another pci slot then you WILL NEED a real time-preemtible kernel for this since the rtirq script will not run in a normal kernel, when you do have such kernel running with rtirq script, then reassign priorities.

The command

ps -eLo rtprio,cls,pid,pri,nice,cmd | grep “FF” | sort -r

will help you figure out what value to put in qjackctl as the real time priority, the trick is that JACK should run right under your main audio device and that command will show you where JACK is in priority level, so make sure you are running JACK when you run that command and check the value it has, if necessary raise/lower the value in qjackctl until it sits right below the GINA24, and NVIDIA should be like somewhere in the bottom…

In the rtirq settings you can optionally change snd to snd_gina24 so it focuses precisely on that very same device.

[root@casino ~]# cat /proc/interrupts
CPU0 CPU1 CPU2 CPU3 CPU4 CPU5 CPU6 CPU7
0: 127 0 0 0 0 0 0 0 IO-APIC-edge timer
1: 3 0 0 0 0 0 0 0 IO-APIC-edge i8042
5: 0 0 0 0 0 0 0 0 IO-APIC-edge parport0
8: 1 0 0 0 0 0 0 0 IO-APIC-edge rtc0
9: 0 0 0 0 0 0 0 0 IO-APIC-fasteoi acpi
12: 4 0 0 0 0 0 0 0 IO-APIC-edge i8042
16: 692647 0 0 0 0 0 0 0 IO-APIC-fasteoi pata_via, snd_gina24, nvidia
17: 200 0 0 0 0 0 0 0 IO-APIC-fasteoi snd_hda_intel
20: 12512 80687 155546 53280 0 0 0 0 IO-APIC-fasteoi ata_piix, ata_piix
23: 22183 3173896 1000090 100023 0 0 0 0 IO-APIC-fasteoi ehci_hcd:usb1, ehci_hcd:usb2
40: 0 0 0 0 0 0 0 0 PCI-MSI-edge PCIe PME
41: 0 0 0 0 0 0 0 0 PCI-MSI-edge PCIe PME
42: 0 0 0 0 0 0 0 0 PCI-MSI-edge PCIe PME
43: 0 0 0 0 0 0 0 0 PCI-MSI-edge PCIe PME
44: 0 0 0 0 0 0 0 0 PCI-MSI-edge PCIe PME
45: 0 0 0 0 0 0 0 0 PCI-MSI-edge xhci_hcd
46: 0 0 0 0 0 0 0 0 PCI-MSI-edge xhci_hcd
47: 0 0 0 0 0 0 0 0 PCI-MSI-edge xhci_hcd
48: 0 0 0 0 0 0 0 0 PCI-MSI-edge xhci_hcd
49: 0 0 0 0 0 0 0 0 PCI-MSI-edge xhci_hcd
50: 0 0 0 0 0 0 0 0 PCI-MSI-edge xhci_hcd
51: 0 0 0 0 0 0 0 0 PCI-MSI-edge xhci_hcd
52: 0 0 0 0 0 0 0 0 PCI-MSI-edge xhci_hcd
53: 12 0 0 0 0 0 0 0 PCI-MSI-edge mei
54: 7160768 0 0 0 0 0 0 0 PCI-MSI-edge p6p1
NMI: 5124 4706 4320 5254 724 803 814 1585 Non-maskable interrupts
LOC: 11570747 11005376 11403874 22169309 3004289 3171653 3275093 13789473 Local timer interrupts
SPU: 0 0 0 0 0 0 0 0 Spurious interrupts
PMI: 5124 4706 4320 5254 724 803 814 1585 Performance monitoring interrupts
IWI: 0 0 0 0 0 0 0 0 IRQ work interrupts
RTR: 6 0 0 0 0 0 0 0 APIC ICR read retries
RES: 7467149 2380647 207750 398404 19549 12090 12239 43459 Rescheduling interrupts
CAL: 104020 129059 111576 119292 152161 152487 151125 152113 Function call interrupts
TLB: 105700 114384 91081 82154 17925 21147 16131 13357 TLB shootdowns
TRM: 0 0 0 0 0 0 0 0 Thermal event interrupts
THR: 0 0 0 0 0 0 0 0 Threshold APIC interrupts
MCE: 0 0 0 0 0 0 0 0 Machine check exceptions
MCP: 259 259 259 259 259 259 259 259 Machine check polls
ERR: 0
MIS: 0

I was using the MOTU with another version of fedora, and it worked.
However, I want the Gina to get to work. …

I’m on IRC and I try to narrow it down.

Yes, it seems to be a jack-fedora17 system configuration issue.

I have tried most of the stuff from the link you mentioned. The situation didn’t change. …

I was reading somewhere that Rosegarden uses some different techniqe for timers, so I thought I try it too.

Rosgarden produces the same error-effect, … therefore I think it is a Fedora 17 - Jack issue.
Found only this thread related to this on FedoraForum http://forums.fedoraforum.org/showthread.php?t=283138

Anyway, the difference is that Rosgarden’s Transport, the timer, goes fluently even if audio struggles, … Ardour’s Transport slow’s down, when in struggle. …

And actually there are no error messages when it comes to this error-effect. I have verbosity on, and sometimes it floods with messages, but sometimes it does not. …

I missed you are running JACK2 and forgot to tell you to try to run JACK in “sync” mode, this only applies for JACK2 (should reduce xruns and improve performace and latency), to do that place -S in the Server Path of qjackctl settings so it reads:

jackd -S