[ardour-users] Ardour not fast enough (again)

audio lathe audiolathe at gmail.com
Thu Aug 25 04:22:28 PDT 2005


G'day Ardourist's,
Further to a thread back in July (ardour-users-ardour.org Digest, Vol
18, Issue 28, ardour-users-ardour.org Digest, Vol 18, Issue 15)
"Ardour was not fast enough" I am encountering the same problems when
playing back 16 and recording 16 tracks at 44100 using two delta
1010lt's. I've attempted to answer many of the questions that were
directed at Devlin's original post and hope that I've provided enough
detail.

The machine is a Gigabyte GA-81PE100 Pro2, 2.8 Ghz P4 with 2Gb ram. I
also have a dedicated data disk, a western digital 120Gb SATA with a
8Mb cache on board, this is the performance stats,

hdparm -tT /dev/sda
/dev/sda:
 Timing buffer-cache reads:   3912 MB in  2.00 seconds = 1955.32 MB/sec
 Timing buffered disk reads:  162 MB in  3.02 seconds =  53.72 MB/sec

(All disks are tuned as fast as they will go - this is the data disk)

The installed system is Fedora core 2 with a 2.6.10 kernel, cut down
as much as possible and configured with the deadline I/O scheduler.
Jack is version 0.100.0 called from the command line

  jackd -R -d alsa -d jack --hwmon -r 44100 -p 512

JACK compiled with System V SHM support.
loading driver ..
apparent rate = 44100
creating alsa driver ... jack|jack|512|2|44100|0|0|hwmon|swmeter|-|32bit
configuring for 44100Hz, period = 512 frames, buffer = 2 periods
nperiods = 2 for capture
nperiods = 2 for playback
jack main caught signal 2
no message buffer overruns

and Ardour is 0.9beta29, Ardour/gtk 0.600.5 libardour: 0.896.4
downloaded/compiled from one of the cvs snapshots on 22nd August.

My sessions have upto 20 tracks using various frequency filters and
effects like gverb etc.

Other commands ran 

uname -a
Linux audiolathe.com.au 2.6.10 #20 Tue Aug 16 10:02:26 EST 2005 i686
i686 i386 GNU/Linux

lspci
00:00.0 Host bridge: Intel Corp. 82865G/PE/P DRAM Controller/Host-Hub
Interface (rev 02)
00:01.0 PCI bridge: Intel Corp. 82865G/PE/P PCI to AGP Controller (rev 02)
00:1d.0 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #1 (rev 02)
00:1d.1 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #2 (rev 02)
00:1d.2 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #3 (rev 02)
00:1d.3 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #4 (rev 02)
00:1d.7 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB2 EHCI
Controller (rev 02)
00:1e.0 PCI bridge: Intel Corp. 82801BA/CA/DB/EB/ER Hub interface to
PCI Bridge (rev c2)
00:1f.0 ISA bridge: Intel Corp. 82801EB/ER (ICH5/ICH5R) LPC Bridge (rev 02)
00:1f.1 IDE interface: Intel Corp. 82801EB/ER (ICH5/ICH5R) Ultra ATA
100 Storage Controller (rev 02)
00:1f.2 IDE interface: Intel Corp. 82801EB (ICH5) Serial ATA 150
Storage Controller (rev 02)
00:1f.3 SMBus: Intel Corp. 82801EB/ER (ICH5/ICH5R) SMBus Controller (rev 02)
01:00.0 VGA compatible controller: Matrox Graphics, Inc. MGA G400 AGP (rev 82)
02:01.0 Multimedia audio controller: IC Ensemble Inc ICE1712 [Envy24] (rev 02)
02:02.0 Multimedia audio controller: IC Ensemble Inc ICE1712 [Envy24] (rev 02)

lsmod
Module                  Size  Used by
snd_seq                46608  0 
snd_ice1712            56004  5 
snd_ice17xx_ak4xxx      3200  1 snd_ice1712
snd_ak4xxx_adda         5504  2 snd_ice1712,snd_ice17xx_ak4xxx
snd_cs8427              8576  1 snd_ice1712
snd_ac97_codec         66528  1 snd_ice1712
snd_pcm                81416  2 snd_ice1712,snd_ac97_codec
snd_timer              20484  2 snd_seq,snd_pcm
snd_page_alloc          7428  1 snd_pcm
snd_i2c                 4608  2 snd_ice1712,snd_cs8427
snd_mpu401_uart         5888  1 snd_ice1712
snd_rawmidi            19488  1 snd_mpu401_uart
snd_seq_device          6924  2 snd_seq,snd_rawmidi
snd_mixer_oss          16512  1 
snd                    43492  20
snd_seq,snd_ice1712,snd_ak4xxx_adda,snd_cs8427,snd_ac97_codec,snd_pcm,snd_timer,snd_i2c,snd_mpu401_uart,snd_rawmidi,snd_seq_device,snd_mixer_oss
soundcore               7264  2 snd
ipt_REJECT              5632  1 
ipt_state               1664  4 
ip_conntrack           38900  1 ipt_state
iptable_filter          3072  1 
ip_tables              16384  3 ipt_REJECT,ipt_state,iptable_filter
floppy                 52048  0 
sg                     32672  0  
ipv6                  228736  6 
joydev                  8000  0 
uhci_hcd               29200  0 
ehci_hcd               26116  0 
video                  13572  0 
button                  5008  0 
battery                 7556  0 
ac                      3460  0 
ata_piix                6532  1 
sd_mod                 12944  2 

cat /proc/interrupts
           CPU0       
  0:    6059996    IO-APIC-edge  timer
  1:       5596    IO-APIC-edge  i8042
  8:          1    IO-APIC-edge  rtc
  9:          0   IO-APIC-level  acpi
  14:      17121    IO-APIC-edge  ide0
  15:       1337    IO-APIC-edge  ide1
  16:          0   IO-APIC-level  uhci_hcd, uhci_hcd
  18:       3691   IO-APIC-level  libata, uhci_hcd
  19:      31137   IO-APIC-level  uhci_hcd
  21:      23321   IO-APIC-level  ICE1712
  22:      23322   IO-APIC-level  ICE1712
  23:         19   IO-APIC-level  ehci_hcd
NMI:          0 
LOC:    6060079 
ERR:          0
MIS:          0

cat /proc/asound/cards
0 [M1010LT        ]: ICE1712 - M Audio Delta 1010LT
                     M Audio Delta 1010LT at 0x9000, irq 21
1 [M1010LT_1      ]: ICE1712 - M Audio Delta 1010LT
                     M Audio Delta 1010LT at 0xa000, irq 22

cat /proc/asound/version
Advanced Linux Sound Architecture Driver Version 1.0.6 (Sun Aug 15
07:17:53 2004 UTC).
Compiled on Aug 16 2005 for kernel 2.6.10.


Certainly my memory of previous versions were more stable but I did'nt
have the second 1010lt which I have been using successfully since my
last post to the list back in april. I'd be happy to compile ardour
with debugging enabled and post results if that would help - just let
me know what to look for.

I'd like to step the recording rate up to 96Khz but I'm not sure if I
am encountering a resource problem or other issue here, in addition to
the requested information I tried a few other things, I don't know if
it will help

this is an output of vmstat 1 

A is after the session has loaded and everything has settled down

B is when I begin to playback 17 tracks

C is when I press stop and the error message appears

procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
  r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa
 0  0      0 1264192  45816 472528    0    0  2176   160 1401   908 33
 1 60  6 <-- A
 0  0      0 1264192  45816 472528    0    0     0     0 1487  1148 36  1 63  0
 0  0      0 1264192  45816 472528    0    0     0     0 1433   962 34  1 65  0
 0  0      0 1264192  45816 472528    0    0     0     0 1526  1160 38  1 61  0
 1  0      0 1264192  45824 472528    0    0     0    16 1369   944 32  1 67  0
 0  0      0 1264192  45824 472528    0    0     0    24 1450  1095 35  1 64  0
 1  0      0 1264192  45832 472528    0    0     0    16 1654  1593 42  2 56  0
 0  0      0 1264192  45832 472528    0    0     0     0 1617  1484 38  3 59  0
 0  0      0 1264192  45832 472528    0    0     0     0 1391   972 33  1 66  0
 0  0      0 1264176  45840 472528    0    0     0    16 1421  1140 54  1 45  0
 0  0      0 1259168  45928 477392    0    0  4868   172 1427   955 43
 2 42 13 <-- B
 0  0      0 1254304  45928 482256    0    0  4864     0 1402   938 42  2 38 18
 0  0      0 1254304  45928 482256    0    0     0     0 1351   895 43  1 56  0
 0  0      0 1249440  45928 487120    0    0  4864     0 1403   937 43  1 43 12
 0  0      0 1244568  45936 491984    0    0  4864    16 1404   961 50  2 33 16
 2  0      0 1244248  46020 492240    0    0   256   168 1377   931 50  1 49  1
 0  0      0 1239576  46020 496848    0    0  4608     0 1400   954 49  2 38 10
 0  0      0 1234648  46076 501712    0    0  4920     0 1498  1107 50  3 34 14
 0  1      0 1234520  46076 501840    0    0   128     0 1555  1342 51  2 44  3
 0  0      0 1229784  46080 506576    0    0  4740     0 1593  1302 52  2 32 14
 0  0      0 1224856  46172 511440    0    0  4864   176 1425   967 49  2 35 15
 1  1      0 1223192  46172 513104    0    0  1664     0 1372   924 49  2 45  5
 0  0      0 1219992  46172 516304    0    0  3200     0 1382   925 49  1 41  8
 1  0      0 1246296  46176 520596    0    0  4424     0 1259  1260 40
39 17  5 <-- C
 2  0      0 1246296  46176 520596    0    0     0     0 1275   768 17 83  0  0
 1  0      0 1211800  46276 521024    0    0     0   240 1309   753 17 83  0  0
 1  0      0 1211736  46276 521024    0    0     0     0 1481   841 15 85  0  0
 1  0      0 1211736  46276 521024    0    0     0     0 1346   591 14 86  0  0
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
  r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa
 1  0      0 1211752  46284 521024    0    0     0    28 1493   857 15 85  0  0
 1  0      0 1211752  46284 521024    0    0     0     0 1353   850 19 81  0  0
 
and these are the messages from jackd

 
**** alsa_pcm: xrun of at least 0.027 msecs
 
ALSA: could not complete playback of 512 frames: error = -32
cycle execution failure, exiting
DRIVER NT: could not run driver cycle
jack main caught signal 12
no message buffer overruns

I'm sure there are things I can do like tuning the system flush cache
to disk timing etc but I thought it would be better to consult the
ardour community before goose chasing. Ardour rocks!!!

Hope this is useful - Thanks all.



More information about the Ardour-Users mailing list