[lkml]   [2003]   [Nov]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: Audio skips when RAM is ~full
    Willy Tarreau wrote:
    > Hello !
    > On Sat, Nov 01, 2003 at 12:31:15AM -0500, Anthony DiSante wrote:
    >>The kernel is buffering the contents of each directory (album) that it
    >>reads (and also, mpg321 copies each mp3 file into RAM before playing it?).
    >>I understand that the idea is to stuff as much into RAM as possible to
    >>reduce pagefile usage, and that the kernel will reclaim memory utilized by
    >>buffers if/when it needs to. But apparently that isn't happening fast
    >>enough to allow a realtime process like music-playing to work skip-free on
    >>this system with this soundcard. I think that if I could regularly
    >>forcibly dump the buffered stuff out of the RAM (dropping the used-RAM
    >>percentage down to, say, 10%, like at boot time) then this would make the
    >>skipping stop.
    > 1) are you certain that none of your programs (including mpg321) leaks
    > memory ? As I understand it, it's really the cache which fills memory.

    No, I'm not certain that mpg321 (or any other app, though there's
    next-to-nothing else running) is leak-free.

    > 2) you can try to preload your file into the cache just before playing it :
    > cp $file /dev/null ; mpg321 $file

    But wouldn't "cp $file /tmp/ramdisk0; mpg321 /tmp/ramdisk0/$file" accomplish
    the same thing? (I've done that.)

    >>So... do I have a correct understanding of the problem, and a correct
    >>analysis of the kernel/mem issues that are related to it? Is it possible
    >>to clear some of the RAM; if so, would that help?
    > Unless a leak happens somewhere in the kernel, sound driver, etc..., memory
    > consumed by programs is restored when your programs exit. The only part which
    > is not restored immediately is the cache.
    > BTW, there may be one other reason for your problem. Considering that you
    > scan your disk to find random albums, I think that the system updates all
    > directories access time after 5s, thus preventing your player from reading
    > an uncached file fast enough. You might be interested in mounting it with
    > the 'noatime,nodiratime' options in /etc/fstab.

    Actually, I don't scan the disk to find random albums; I have a text file
    that contains a list of every album's full path, and I pick a random line
    from that file. So only the selected album's directory gets scanned. And
    the mp3 partition is mounted read-only (I should have mentioned that
    before), so the atimes shouldn't be getting written as it is.

    > You might also want to try 2.4.23pre9 which includes VM changes compared to
    > 2.4.22, and seems quite stable to me.

    Maybe I will give that a try.

    So I'm guessing that there isn't actually a way to manually move buffer-data
    out of RAM?

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 13:58    [W:0.024 / U:0.720 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site