Linux Sound subsystem development
 help / color / mirror / Atom feed
From: Benno Senoner <sbenno@gardena.net>
To: linux-sound@vger.kernel.org
Subject: Re: Streaming disk I/O kills file buffering and makes Linux unusable
Date: Mon, 23 Aug 1999 18:06:42 +0000	[thread overview]
Message-ID: <marc-linux-sound-93543160108034@msgid-missing> (raw)
In-Reply-To: <marc-linux-sound-93541443318803@msgid-missing>

On Mon, 23 Aug 1999, Linus Torvalds wrote:
> On Mon, 23 Aug 1999, Peter Monta wrote:
> > 
> > > I think without some buffer-cache usage limiting, or buffering disabling,
> > > Linux is actually UNSUITABLE for streaming applications which do run
> > > concurrently with other apps.
> > 
> > I agree; the raw-io system will make this much more pleasant.
> 
> Why do you think so?
> 
> IO is IO, whether it is raw or not. And it will eat up resources from
> everybody else trying to do IO.
> 
> I think this is a case of believing in magic cures and supernatural
> beings.
> 
> 		Linus

IO is IO, BUT:   buffering algorithms do work well almost all the time
under _NORMAL_ conditions , but
streaming hundreds of MBytes from disk (reading) , allocates all buffers
for these files (which you read only once, therefore buffering is not required),
and all other apps and files ( your browser , windowmanager, X server xterm ,
bash etc) are evicted from the buffer cache, and every time (with maybe 10-30
secs in between) you launch a new xterm, click to the KDE's application bar,
the disk has to reload the page for the executables, which makes you run
the disk as it were not buffered.

Is it hard to implement unbuffered disk I/O in Linux (at least for reading) on
per file basis so that reading large files doesn't monopolizes the buffer cache
decreasing the overall caching effectiveness ?

Another solution could be limiting file buffering on a per-process basis,
If the streaming app can tell to the kernel "give me only 4MB of your buffer
cache", then the rest of the apps will still get a chunk of the buffer cache so
that launching my xterm multiple times will work nicely without reading from
disk every time.
Is the second solution maybe easier to implement ?

I'm afraid, if we want that Linux will be a good multimedia OS, this is a
_STRONGLY_NEEDED_  feature.

The user wants to playback his video/audio from disk, and still be able
to launch his apps, without waiting 10 secs for loading a simple xterm.

The SCT's  raw-io patches are nice, but not very suitable in a general purpose
multimedia enviroment, since you can't tell to the user to store his videos on a
raw partition.
  
regards,
Benno.

  parent reply	other threads:[~1999-08-23 18:06 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-08-23 13:20 Streaming disk I/O kills file buffering and makes Linux unusable Benno Senoner
1999-08-23 17:06 ` Peter Monta
1999-08-23 17:25 ` Linus Torvalds
1999-08-23 17:42 ` Peter Monta
1999-08-23 18:06 ` Benno Senoner [this message]
1999-08-23 18:32 ` Alan Cox
1999-08-23 18:39 ` Chuck Lever
1999-08-23 19:25 ` Andrea Arcangeli
1999-08-23 20:20 ` Benno Senoner
1999-08-23 20:50 ` Benno Senoner
1999-08-23 20:51 ` Benno Senoner
1999-08-23 21:01 ` Andrea Arcangeli
1999-08-24  0:48 ` Dave Mielke
1999-08-24  7:37 ` Gerard Roudier
1999-08-24  7:56 ` Gerard Roudier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=marc-linux-sound-93543160108034@msgid-missing \
    --to=sbenno@gardena.net \
    --cc=linux-sound@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox