[LAU] Realtime latency kernel testing

ailo ailo.at at gmail.com
Sun Dec 12 17:03:46 UTC 2010


On 12/12/2010 05:17 PM, Robin Gareus wrote:
> long-answer and brainstorm:
>
> The question is whether it is worth the time to make it, and what can be
> learned from the information.
>
> End-users won't learn much from those statistics. Unless you have
> exactly the same hardware, it is close to impossible to draw
> conclusions. One would need to
>   a) isolate the correlating factors and there are certainly much more
> than just the kernel-revision, flavor, CPU-speed and audio-interface.
>   b) find values that can be measured reliably.
>
> eg. what would you learn from information such as:
>    With kernel A on system B using sound-card C and jack-settings D
>    one can run for>=X seconds without an x-run.
> where D is chosen to maximize X while f.i. minimizing latency.
>
> Besides there is no common goal: some end-users require huge I/O (read
> 128 audio tracks from disk). Others only need one channel but low
> latency, yet others only CPU power for effect-processing.
>
>
> As for making something that is useful for developers: compare different
> versions, do regression tests on the same system. It will take huge
> effort to pull it off. Maybe the Phoronix can be used as basis: They
> already laid a solid basis for statistical analysis and are working on a
> system that allows to cherry-pick revisions, change-sets and compare
> those. However AFAIK it runs in virtual-machine which makes it useless
> for testing rt performance, but there may be options to use it on
> bare-metal.
>
> IMHO low-latency is quite overrated. There are few use-cases that
> actually require it. If one really needs reliable low-latency (lets say
> <20ms) - s/he needs a realtime-kernel (and for live-performances also
> some other tweaks e.g. disable updated).
>

This is what I am thinking too. Which is why I think rt-kernels should 
only be recommended to those users who need them, considering that 
rt-kernels often cause non audio-related issues (problems installing 
graphic drivers, etc).
Then there is the developers point of view. To whom and for what end are 
they maintaining rt-kernels?

> A RT-linux system either works or it does not. The performance
> differences between different working rt-kernel revisions are usually
> quite subtle, and it is always possible to overload the system because
> of hardware limitations.
>
> For benchmarking different kernel revisions/systems: I suggest to stick
> to the rt-test tools such as hwlatdetect, cyclictest, pi_stress etc.
>
> Something that would be useful to have is a jack-audio stress-test suite!
> After installing a new system or getting new hardware: automatically run
> some tests to check the limits of the system.
> ardour's jacktest.c is a first step in that direction (testing CPU/DSP
> load). It could be supplemented by an I/O test tool (read audio-files
> from disk). An extended version of latentor, that uses jack_delay to
> find the lowest possible latency with no x-runs may be a 3rd, etc
>
> But that information would only be useful for you, not for others.
>
> 2c,
> robin




-- 
ailo


More information about the Linux-audio-user mailing list