Re: [LAD] PCI MIDI jitter - comparison Ubuntu (bad) and Suse (might be ok)

From: Ralf Mardorf <ralf.mardorf@email-addr-hidden-dsl.net>
Date: Sun Jul 11 2010 - 18:18:39 EEST

Hi Robin :)

On Sun, 2010-07-11 at 17:11 +0200, Robin Gareus wrote:
> Hi Ralf,
>
> You are comparing a banana and an orange to find out which one is
> sweeter. Given the nature of the problem it would help a lot to have as
> little differences between the systems under test, otherwise it's
> impossible to track it down.
>
> I hazard a guess that it's Ubuntu's 2.6.32 realtime-preemt-kernel.
> There are no official 2.6.32 rt-patches and it's likely that some of the
> back/forward ports have screwed things up.

Good argument! OTOH an audio distro shouldn't use a kernel that will
increase latency. I'll build 2.6.31.6-rt19 for Ubuntu Studio, btw. I had
this kernel for 64 Studio too, but only in combination with USB MIDI.

> Is 'cat /proc/interrupts' identical on both systems?
> what about 'ps ax | wc -l' and
> 'ps -eo pid,class,rtprio,ni,pri,pcpu,stat,comm --sort -rtprio'
> Are there high-priority jobs present on Ubuntu which are not on SuSE?

I dunno, I'll run those commands and post them later, building a kernel
will take some time.

To be continued.
Ralf

> What happens if you use the same kernel (SuSE's kernel on Ubuntu, or
> vice versa) but different disto user-lands? Is there still a difference
> in your measurements?
>
> ciao,
> robin
>
> On 07/11/2010 04:53 PM, Ralf Mardorf wrote:
> > Hi :)
> >
> > today I compared a default Ubuntu Studio with and without the
> > proprietary NVIDIA driver. Note that for Ubuntu Studio 2 tests failed
> > because of time out errors, but even the tests that were passed with
> > success are significantly less good, than the tests with openSUSE, were
> > I set up audio myself.
> > Ubuntu based Linux until now were my music Linux, e.g 64 Studio 3.0 and
> > 3.3, but I wonder if bad MIDI latency is depending to Ubuntu.
> > For Ubuntu Studio even PCI MIDI has got more jitter, but USB MIDI for
> > Suse, see older test in the archives.
> >
> > What might be the difference between Ubuntu and Suse?
> >
> > Could anybody compare different distros too?
> >
> > ------------------------------------------------------------------------
> > Ubuntu Studio 10.04 amd64
> > 2 x Terratec EWX 24/96 (2 single cards, but 1 virtual card)
> > Frequency scaling ?
> > ------------------------------------------------------------------------
> >
> > spinymouse@email-addr-hidden:~$ hwinfo --gfxcard
> > Driver: "nouveau"
> > Driver Modules: "drm"
> > IRQ: 18
> > spinymouse@email-addr-hidden:~$ alsa-midi-latency-test -l
> > Port Client name Port name
> > 14:0 Midi Through Midi Through Port-0
> > 16:0 TerraTec EWX24/96 TerraTec EWX24/96 MIDI
> > 20:0 TerraTec EWX24/96 TerraTec EWX24/96 MIDI
> > 128:0 TiMidity TiMidity port 0
> > 128:1 TiMidity TiMidity port 1
> > 128:2 TiMidity TiMidity port 2
> > 128:3 TiMidity TiMidity port 3
> > spinymouse@email-addr-hidden:~$ alsa-midi-latency-test -Rrw=2 -o20:0 -i20:0
> >> alsa-midi-latency-test 0.0.3
> >> set_realtime_priority(SCHED_FIFO, 99).. done.
> >> clock resolution: 0.000000001 s
> >> SUCCESS
> >
> > best latency was 1.00 ms
> > worst latency was 1.97 ms, which is great.
> >
> > spinymouse@email-addr-hidden:~$ alsa-midi-latency-test -Rrw=2 -o20:0 -i20:0
> >> alsa-midi-latency-test 0.0.3
> >> set_realtime_priority(SCHED_FIFO, 99).. done.
> >> clock resolution: 0.000000001 s
> >> SUCCESS
> >
> > best latency was 1.00 ms
> > worst latency was 3.36 ms, which is great.
> >
> > spinymouse@email-addr-hidden:~$ alsa-midi-latency-test -Rrw=2 -o16:0 -i16:0
> >> alsa-midi-latency-test 0.0.3
> >> set_realtime_priority(SCHED_FIFO, 99).. done.
> >> clock resolution: 0.000000001 s
> >> SUCCESS
> >
> > best latency was 0.99 ms
> > worst latency was 1.93 ms, which is great.
> >
> > spinymouse@email-addr-hidden:~$ alsa-midi-latency-test -Rrw=2 -o16:0 -i16:0
> >> alsa-midi-latency-test 0.0.3
> >> set_realtime_priority(SCHED_FIFO, 99).. done.
> >> clock resolution: 0.000000001 s
> >> SUCCESS
> >
> > best latency was 0.99 ms
> > worst latency was 1.74 ms, which is great.
> >
> > spinymouse@email-addr-hidden:~$ uname -a
> > Linux ubuntu 2.6.32-23-preempt #37-Ubuntu SMP PREEMPT Fri Jun 11
> > 10:19:07 UTC 2010 x86_64 GNU/Linux
> > spinymouse@email-addr-hidden:~$ envy24control
> > 0xcf00, irq 20, Master Clock int 44100
> >
> > No envy24control for
> > 0xcb00, irq 21, Master Clock ?
> >
> > 20:0 opto S/PDIF out --> 16:00 opto S/PDIF in
> >
> > ------------------------------------------------------------------------
> > Ubuntu Studio 10.04 amd64
> > 2 x Terratec EWX 24/96 (2 single cards, but 1 virtual card)
> > Frequency scaling ?
> > ------------------------------------------------------------------------
> >
> > spinymouse@email-addr-hidden:~$ hwinfo --gfxcard
> > Driver: "nvidia"
> > Driver Modules: "nvidia"
> > IRQ: 18
> > spinymouse@email-addr-hidden:~$ alsa-midi-latency-test -l
> > Port Client name Port name
> > 14:0 Midi Through Midi Through Port-0
> > 16:0 TerraTec EWX24/96 TerraTec EWX24/96 MIDI
> > 20:0 TerraTec EWX24/96 TerraTec EWX24/96 MIDI
> > 128:0 TiMidity TiMidity port 0
> > 128:1 TiMidity TiMidity port 1
> > 128:2 TiMidity TiMidity port 2
> > 128:3 TiMidity TiMidity port 3
> > pinymouse@email-addr-hidden:~$ alsa-midi-latency-test -Rrw=2 -o20:0 -i20:0
> >> alsa-midi-latency-test 0.0.3
> >> set_realtime_priority(SCHED_FIFO, 99).. done.
> >> clock resolution: 0.000000001 s
> >> SUCCESS
> >
> > best latency was 1.00 ms
> > worst latency was 1.84 ms, which is great.
> >
> > spinymouse@email-addr-hidden:~$ alsa-midi-latency-test -Rrw=2 -o20:0 -i20:0
> >> alsa-midi-latency-test 0.0.3
> >> set_realtime_priority(SCHED_FIFO, 99).. done.
> >> clock resolution: 0.000000001 s
> >> SUCCESS
> >
> > best latency was 1.00 ms
> > worst latency was 1.27 ms, which is great.
> >
> > spinymouse@email-addr-hidden:~$ alsa-midi-latency-test -Rrw=2 -o16:0 -i16:0
> >> alsa-midi-latency-test 0.0.3
> >> set_realtime_priority(SCHED_FIFO, 99).. done.
> >> clock resolution: 0.000000001 s
> >> SUCCESS
> >
> > best latency was 0.99 ms
> > worst latency was 1.92 ms, which is great.
> >
> > spinymouse@email-addr-hidden:~$ alsa-midi-latency-test -Rrw=2 -o16:0 -i16:0
> >> alsa-midi-latency-test 0.0.3
> >> set_realtime_priority(SCHED_FIFO, 99).. done.
> >> clock resolution: 0.000000001 s
> >> SUCCESS
> >
> > best latency was 0.99 ms
> > worst latency was 1.72 ms, which is great.
> >
> > spinymouse@email-addr-hidden:~$ uname -a
> > Linux ubuntu 2.6.32-23-preempt #37-Ubuntu SMP PREEMPT Fri Jun 11
> > 10:19:07 UTC 2010 x86_64 GNU/Linux
> > spinymouse@email-addr-hidden:~$ envy24control
> > 0xcf00, irq 20, Master Clock int 44100
> >
> > No envy24control for
> > 0xcb00, irq 21, Master Clock ?
> >
> > 20:0 opto S/PDIF out --> 16:00 opto S/PDIF in
> >
> > ------------------------------------------------------------------------
> > openSUSE 11.2 amd64
> > 2 x Terratec EWX 24/96 (2 single cards, but 1 virtual card)
> > Frequency scaling performance
> > ------------------------------------------------------------------------
> >
> > spinymouse11.2@email-addr-hidden-2:~> su -c "hwinfo --gfxcard"
> > Driver: "nvidia"
> > Driver Modules: "nvidia"
> > IRQ: 18
> > spinymouse11.2@email-addr-hidden-2:~> alsa-midi-latency-test -l
> > Port Client name Port name
> > 14:0 Midi Through Midi Through Port-0
> > 16:0 TerraTec EWX24/96 TerraTec EWX24/96 MIDI
> > 24:0 TerraTec EWX24/96 TerraTec EWX24/96 MIDI
> > spinymouse11.2@email-addr-hidden-2:~> alsa-midi-latency-test -l
> > Port Client name Port name
> > 14:0 Midi Through Midi Through Port-0
> > 16:0 TerraTec EWX24/96 TerraTec EWX24/96 MIDI
> > 24:0 TerraTec EWX24/96 TerraTec EWX24/96 MIDI
> > spinymouse11.2@email-addr-hidden-2:~> alsa-midi-latency-test -Rrw=2 -o24:0 -i24:0
> >> alsa-midi-latency-test 0.0.3
> >> set_realtime_priority(SCHED_FIFO, 99).. done.
> >> clock resolution: 0.000000001 s
> >> SUCCESS
> >
> > best latency was 0.99 ms
> > worst latency was 1.07 ms, which is great.
> >
> > spinymouse11.2@email-addr-hidden-2:~> alsa-midi-latency-test -Rrw=2 -o24:0 -i24:0
> >> alsa-midi-latency-test 0.0.3
> >> set_realtime_priority(SCHED_FIFO, 99).. done.
> >> clock resolution: 0.000000001 s
> >> SUCCESS
> >
> > best latency was 0.99 ms
> > worst latency was 1.08 ms, which is great.
> >
> > spinymouse11.2@email-addr-hidden-2:~> alsa-midi-latency-test -Rrw=2 -o16:0 -i16:0
> >> alsa-midi-latency-test 0.0.3
> >> set_realtime_priority(SCHED_FIFO, 99).. done.
> >> clock resolution: 0.000000001 s
> >> SUCCESS
> >
> > best latency was 0.99 ms
> > worst latency was 1.06 ms, which is great.
> >
> > spinymouse11.2@email-addr-hidden-2:~> alsa-midi-latency-test -Rrw=2 -o16:0 -i16:0
> >> alsa-midi-latency-test 0.0.3
> >> set_realtime_priority(SCHED_FIFO, 99).. done.
> >> clock resolution: 0.000000001 s
> >> SUCCESS
> >
> > best latency was 0.99 ms
> > worst latency was 1.05 ms, which is great.
> >
> > spinymouse11.2@email-addr-hidden-2:~> uname -a
> > Linux suse11-2 2.6.31.6-rt19 #1 SMP PREEMPT RT Wed Nov 18 16:59:26 CET
> > 2009 x86_64 x86_64 x86_64 GNU/Linux
> > spinymouse11.2@email-addr-hidden-2:~> envy24control
> > spinymouse@email-addr-hidden:~$ envy24control
> > 0xcf00, irq 20, Master Clock int 44100
> >
> > No envy24control for
> > 0xcb00, irq 21, Master Clock ?
> >
> > 24:0 opto S/PDIF out --> 16:00 opto S/PDIF in
> >
> > I still have got some tests to do, e.g. a real test by listening to MIDI
> > music and I'll test what happens if two sound cards become one virtual
> > sound card, http://www.jrigg.co.uk/linuxaudio/ice1712multi.html and
> > before doing this I need to test if the second, new second hand card
> > from Ebay isn't broken for audio, resp. I'll compare the sound quality
> > for my old and the new Terratec EWX 24/96 sound card, before they become
> > one virtual sound card.
> >
> > Cheers!
> >
> > Ralf

_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@email-addr-hidden
http://lists.linuxaudio.org/listinfo/linux-audio-dev
Received on Sun Jul 11 20:15:05 2010

This archive was generated by hypermail 2.1.8 : Sun Jul 11 2010 - 20:15:06 EEST