[linux-audio-dev] streaming with 2.4.0test11

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: [linux-audio-dev] streaming with 2.4.0test11
From: Kai Vehmanen (k_AT_eca.cx)
Date: Wed Nov 22 2000 - 04:02:58 EET


As some of you know, I've been rewriting ecasound's i/o double-buffering
for some time now. My test setup is a SMP-box, with 2.4.0test11 kernel
(no patches), hdparm-tuned 7200rpm IDE drive and the latest ALSA-drivers.
The approach I've taken is a combination of the ecasound's old
diskbuffering system, the latest design used in EVO and Ardour, with
fragment idea resembling ALSA. Main differences are:

1) the double-buffering system is based on a (lock-free) ringbuffer
   of audio fragments/blocks instead of "raw" data buffers
2) buffering is implemented as a proxy class, so its use should
   not affect the engine nor the buffered client --> this makes
   it possible to double-buffer any non-realtime object types

But, but, basicly the same idea. Now on to the problem. Most of the time
running my test stream (32bit-10ch-44kHz, not much but good for basic
testing) goes smoothly. I can stress both cpu- and disk-wise and the
buffer-area stays full. But in some circumstances ('find /', and few other
heavy io-operations), the audiothread (speaking in lad terms :)) starts to
dominate and eats away the whole db-area (that's upto 1-2secs of audio!).
The same happens with SCHED_FIFO scheduling. Even changing the relative
priority or audio and disk threads, or adding sched_yield()s doesn't seem
to help.

Now I suspect I'm just running out of disk i/o capacity, although it seems
odd that processes running as normal user without rt-priority can choke
rt-processes. Have you experienced anything similar? When I have the time,
I'll have to test different kernel versions. That should prove to be
interesting.

All in all test11 looks a lot better than older test-releases (without
patches). I'm just streaming ~2MB/s audio without clitches and system load
is over 4.00 (that's quite a lot for a SMP machine).

-- 
 . http://www.eca.cx ... [ audio software for linux ] /\ . 
 . http://www.eca.cx/sculpscape [ my armchair-tunes mp3/ra/wav ]


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Wed Nov 22 2000 - 04:03:12 EET