Lowlatency letter to linus

Hi SDL folks,

Paul Barton-Davis is seeking for signatures for his lowlatency letter to Linus
in order to sensibilize him about the need of low latency support within
the Linux kernel.
(like the patches produced by Ingo Molnar)

As game programmers I think you are all interested in getting
smooth performance , without frame dropouts or audio skips during gameplay.
(actually Windows and Mac worst case latencies are about 5-15times BETTER
than linux, with the lowlatency patch, Linux becomes 3-5times better than
win and Mac, thus improving from 100ms worst case to 1-2ms worst case !)

If you agree with the letter below, please send your signature
with name, mail and project affiliation (for example linux game-developer),
to Paul Barton Davis. ( pbd at op.net )

It would be nice to have the support from the Loki folks too.
( Sam & friends)

cheers,
Benno.On Sun, 25 Jun 2000, Paul Barton-Davis wrote:

[ LAD readers have already seen a version of this. this is a slightly
modified version. The final version will be sent to all signatorees
before sending to Linus. ]

There are a few people on this list who are not, i think, on
linux-audio-dev. In particular, I would very much appreciate getting
Jaroslav and Abramo to sign this.

There are currently more than 60 co-signers, and I plan to send this
to Linus next week. Please add your name if you are a developer and
are concerned about this issue.

–p


Dear Linus,

we are a group of programmers designing, writing and extending audio and MIDI
applications for Linux. We have no particular affiliation, other than all
reading the linux-audio-dev mailing list, and other lists relevant to audio
development. As you could tell from the list of signatorees below, we
represent the developers of many significant and substantial audo+MIDI
applications for Linux, as well as members/employees of several well known
music and audio research institutions and companies.

One member of our group, Benno Senoner, did a lot of work last year in
investigating and documenting problems involved in using Linux for real-time
audio applications. Others, such as Juhana Sadeharju, had long noted problems
using Linux for hard disk recording of audio data. Partly as a result of
Benno’s work, Ingo Molnar did a fantastic job of coming up with a patch for
the 2.2 series that dramatically improved the latencies that could be obtained
from Linux.

How good? Well, good enough that members of our community who were convinced
that RTLinux was needed to do a professional job with audio changed their
minds. Good enough that we were close to (or sometimes better than) BeOS, an
OS that has had a lot of excellent press in the audio world as a replacement
for the known-to-be-problematic Windows and MacOS systems. Good enough that in
some cases, Linux is as good as dedicated hardware solutions, offering
latencies in the realm of 2-3ms for our applications.

There was a lot of excitement that 2.4 might include a version of the low
latency patches. The excitement came from the possibility that the next
release of the various distributions of Linux would represent a set of
"desktops" that were ready for excellent, “real-time” audio and MIDI
applications. CPU and disk performance has improved to the point where we are
on the threshold of a revolution in the way that sound synthesis and
processing is done, and many of us want to ride Linux into the heart of that
revolution.

However, it turns out, as best we can gather, that you were not happy with the
basic structure of some or all of Ingo’s low latency work. Our impression is
that you want to see more careful code design that avoids interrupt disabling
or holding high level locks for more than 50usec, rather than using preemption
points. So, as far as we can tell right now, 2.4 will represent more of the
same as far as low latency limitations, and for us, more of the same means
performance much worse than Windows or MacOS present.

How much worse ? Linux currently offers worst-cases latencies that are 10-15
times worse than Windows or MacOS. Developers for those platforms still
complain about their performance with respect to latency - imagine their
response to the situation with Linux as it stands today!

We understand that we could try to maintain a version of Ingo’s low latency
patches in parallel to the current kernel. But this is not a good situation
for us. We would like to persuade several companies that produce applications
and API’s for audio+MIDI work to make their code, designs and programs
available for Linux. We would like to be able to produce our own "real-time"
applications and not have to tell users (who will likely know nothing about
Linux, or computers in general) that they need to patch their kernel before
using them. Neither of these goals are realistic given the current state of
low latency support in the emerging 2.4.

We would like to know:

  • what are your general feelings on modifying Linux to support
    the kind of applications we are concerned with ?

  • what kinds of compromises, if any, you might accept in order
    to get good low latency performance into the kernel sooner,
    rather than later ?

  • what design goals you have in mind when you talk about
    doing low latency “right”, rather than “wrong, as in
    Ingo’s approach” ?

Above all, we are all interested in having fun with Linux and
audio/music/MIDI. We would invite you to come tour a professional studio,
watch the cool and wonderful stuff that can be done right now (with lots of
annoying problems) on machines that runs Windows and MacOS, and get a sense of
the extent to which general purpose computers are about to replace a whole
bunch of expensive stuff sitting around in a typical studio. We want to see
penguins there, and soon!

Several of the signees below have noted that lowering latency improves the
quality of games, most kinds of multimedia and many non-hard-real-time
automated systems. Incorporating a low-latency patch could be seen as
extremely helpful in providing competitive performance in areas
outside of audio as well.

Thank you for your consideration, for Linux and your benign dictatorship.

To unsubscribe from mailing list send message
’unsubscribe’ in the body of message to .
BUG/SMALL PATCH REPORTING SYSTEM: http://www.alsa-project.org/cgi-bin/bugs

Benno Senoner
E-Mail: @Benno_Senoner
Linux low-latency audio / scheduling latency benchmarks
http://www.gardena.net/benno/linux/audio