> Le 4 déc. 2018 à 18:41, Joshua Peschke <j...@wavecasual.com> a écrit :
> 
> hello everyone,
> i am wondering about how to optimise faust processors. i have a pretty big 
> processor that is comprised of multiple parts (its a synth voice with 
> multiple oscillators, filters, modulators) and it seems that turning the 
> individual parts off doesn’t help performance. i read somewhere that 
> everything in faust is “always on”. am i right to assume that means that all 
> signal paths get evaluated even when they do not contribute to the final 
> signal?
> is there a way to optimise this?

Well they are two « still not official » primitives, which are  « enable » and 
« control » with the following semantic :

(x, y : control) == x 
but x is only computed when y is true (y != 0)

'Control' is a variant of 'enable 'and the two are related in the following way:
(x, y : enable) ==> (x*y, y>0 : control)

They can be used to stop part of the computation, depending of the « y » 
signal. Not that  « enable » and « control » can only be used in scalar mode in 
the old C++ backend that is: faust -lang ocpp …… » 

> my current solution would be to split the large processor up and turn the 
> individual parts on and off in c++ which would work, but be kind of a pain. 
> also are there other tipps you have to achieve better performance? i noticed 
> for example that the smoothing of parameters seems to affect performance 
> quite much (if there are lots of them..). do you have any suggestions on how 
> to minimise this? any hints are very much appreciated!
> 
> in general i have to say great work! faust is awesome! 
> 
> 

Assuming you are not using  « enable » and « control », you can also try the « 
faustbench » and  « faustbench-llvm » tools, to find out the best compilation 
options: https://github.com/grame-cncm/faust/tree/master-dev/tools/benchmark

Stéphane 

_______________________________________________
Faudiostream-users mailing list
Faudiostream-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-users

Reply via email to