> On Sep 22, 2015, at 8:32 AM, Stéphane Letz <l...@grame.fr> wrote:
> 
> Hi,
> 
> We have the following project of using JavaScriptCore framework on iOS in an 
> audio context :
> 
> - we generate optimized asm.js code from a Domain Specific Language (actually 
> an asm.js module for the audio code itself + some additional standard JS 
> functions)
> 
> - the asm.js module contains a "compute" function that receive an array of 
> input float buffers, process them, and returns an array of output float 
> buffers.
> 
> - the array of input float buffers is typically got from a realtime CoreAudio 
> audio callback, and the array of output float buffers has to be given back to 
> the callback. So we would basically need to transfer C float arrays to the 
> asm.js code and back.
> 
> Now the questions :
> 
> - since the asm.js code does not allocate memory, we hope calling the asm.js 
> "compute" function directly  form the CoreAudio callback will work, so 
> basically that asm.js code can be called from a real-time callback. Is that a 
> correct assumption?

It's true that in steady state, asm.js code probably won't allocate memory. But 
I order to execute the code the engine will parse things, compile things, and 
generate code - all of which requires memory allocation and may acquire locks 
held by lower priority threads. So, using JSC from a real time callback seems 
dangerous even if you're using asm.js. 

> 
> - what would be the most efficient manner to transfer C float arrays to the 
> asm.js code and back? Is there a way to completely avoid copies during the 
> process? Since JavaScriptCore can be used using a Objective C API (but not 
> pure C API right?) do we need to use intermediate Objective C arrays to 
> transfer data?

Would this help: https://bugs.webkit.org/show_bug.cgi?id=120112

> 
> Thanks for any advance or code example to look at.
> 
> Stéphane Letz
> _______________________________________________
> webkit-dev mailing list
> webkit-dev@lists.webkit.org
> https://lists.webkit.org/mailman/listinfo/webkit-dev
_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-dev

Reply via email to