Re: [Jackit-devel] Re: jack, PREEMPT_DESKTOP, delayed interrupts?

From: Jack O'Quin (joq_at_io.com)
Date: 08/31/05

  • Next message: Jens Axboe: "Re: Where is the performance bottleneck?"
    To: Ingo Molnar <mingo@elte.hu>
    Date:	Wed, 31 Aug 2005 07:08:08 -0500
    
    

    Ingo Molnar <mingo@elte.hu> writes:

    > - if everything fails and automatic latency tracing does not show
    > anything out of ordinary, then you could try to do "user-triggered
    > tracing" of jackd's critical path. This is more laborous to do, but
    > should pinpoint the latency reason in a pretty sure way.
    >
    > user-triggered tracing is done via adding those special gettimeofday
    > calls to jackd and recompiling jackd. I've attached an older hack
    > against jackd below, you might need to merge it to recent jackd. NOTE:
    > this patch will only work if you are getting xrun messages from ALSA.
    > It has to be reworked if your latencies are not actual xruns.

    JACK sources already include a CHECK_PREEMPTION() macro which expands
    to Ingo's special gettimeofday() calls. The trace is turned on and
    then off automatically before and after the realtime critical section
    in the process thread (see libjack/client.c).

    Ingo's suggested ALSA backend patch is not presently included.

    There are probably some other places where these macros could usefully
    be added. We will integrate patches adding them in appropriate spots.
    They do no harm in vanilla kernels without tracing enabled.

    -- 
      joq
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at  http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at  http://www.tux.org/lkml/
    

  • Next message: Jens Axboe: "Re: Where is the performance bottleneck?"

    Relevant Pages

    • Re: [patch] Real-Time Preemption, -RT-2.6.9-mm1-V0.4
      ... into jackd whenever such a ~720 usecs maximum is hit? ... It should be a relatively simple hack to jackd. ... No tracing happens by default, but tracing starts if the application ... this for channel 0 processing! ...
      (Linux-Kernel)
    • 2.6.19-rt1: max latencies with jackd
      ... jackd running 2x128 @48KHz, ... [Maybe I need to just enable tracing all the time instead of just ... tracing inside the jack client loop?] ...
      (Linux-Kernel)