• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: multithreaded mixer
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: multithreaded mixer


  • Subject: Re: multithreaded mixer
  • From: William Stewart <email@hidden>
  • Date: Wed, 4 Feb 2004 17:13:49 -0800

On 04/02/2004, at 1:56 PM, Stefan Werner wrote:

Hi,

On 04.02.2004, at 22:22, email@hidden wrote:
Also, let's not forget about the cost of constantly transitioning
between all these threads. This doesn't take a trivial amount of time,
especially since so much state (think about all the FPU and Altivec
registers that need to be saved on a G5) needs to be saved for each
transition. Depending on how you do things, you could easily wipe out
all your gains with managing the overhead.

In short, there's no proper way in which I could make my application make better use of a dual G5? I put my own non-IOProc related code in separate threads wherever possible, but the performance bottleneck are clearly the one dozens of AUConverter and AUVarispeeds that I have plugged into a Matrix Mixer.

Sure - I think every major host application now uses threading to utilise more than a single processor for DSP - but this is done very carefully.

You can think of layers (as Jeff was saying) where different jobs can be done at different priorities, different times, and so forth. But, and I think this is the take home point, you have to know what you are doing, know what locks you are taking, (if any!), which threads are involved, what their likely contention points are, and so forth. The fact that several shipping apps do this just fine (and have been for a number of years) is more than sufficient evidence that it can be done - its not a question of "can", but "how".

Bill


BTW, any chance of seeing kAudioUnitProperty_RenderQuality being available for the Varispeed AU in a future release?

Thanks,
Stefan
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.


-- mailto:email@hidden
tel: +1 408 974 4056

________________________________________________________________________ __
"Much human ingenuity has gone into finding the ultimate Before.
The current state of knowledge can be summarized thus:
In the beginning, there was nothing, which exploded" - Terry Pratchett
________________________________________________________________________ __
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.
References: 
 >Re: multithreaded mixer (From: Stefan Werner <email@hidden>)

  • Prev by Date: Re: HALOutputUnit (Pt 1)
  • Next by Date: [ANN] Sample-code: A 'cheap' oscilloscope
  • Previous by thread: Re: multithreaded mixer
  • Next by thread: Re: multithreaded mixer
  • Index(es):
    • Date
    • Thread