Hi Julius, I tried to come up with a minimal example, and came to the conclusion that it's not any particular piece of dsp that is at fault, but it's just that the compiler gets slow with elaborate constructions.
Since originally the stable filters where suspect, I tested with my classicVocoder.dsp, which has 2 or 3 high passes and many bandpasses. All of them can be switched for unstable ones by setting a variable in lib/constants.lib to 0 and recompiling. In the same file, you can set the number of bands the vocoder has. Note: Changing the nrBands only changes how many of everything we have, it's the same dsp. To duplicate my experiment, do: git clone https://github.com/magnetophon/VoiceOfFaust.git or, if you already have it, git checkout master. cd VoiceOfFaust cp lib/smallConstants.lib lib/constants.lib all testing is done with: faust2jack -t 99999 -time -osc -vec classicVocoder.dsp with nrBands = 4 and stableFilters 1, classicVocoder.dsp compiles in 40s so there is no problem with stableFilters or the way it's used here. with nrBands = 32 and stableFilters = 0, it takes 2min40,which makes sense, cause it's doing a lot more work. so a high number of bands is also no problem. with nrBands = 16 and stableFilters = 1, it takes 2min05 so no problem with medium nr of bands and stable filters either but then: with nrBands = 32 and stableFilters = 1, we're looking at 7min50! to show that the problem is also not necessarily in stableFilters or high number of bands: cp lib/bigConstants.lib lib/constants.lib It has nrBands = 16, stableFilters = 0, but lot's of other features turned on, and takes 6min25 To give a bit of context on how big the resulting dsp's are: with bigConstants iit takes 24% cpu at runtime, and with smallConstants with nrBands changed to 32 takes about the same. Unfortunately, the version that I'd like to use, bigConstants with 16 bands and stableFilters, takes 3 hours and 51 minutes to compile, even though it uses no more than 20% of my RAM. It uses 31% CPU at runtime. For my entry in the Faust Awards, I have 9 different of these beasts, so it'd be nice if they could compile quicker! ;) Many thanks, Bart. On Wed, Jun 15, 2016 at 04:14:08PM -0700, Julius Smith wrote: >Hi Bart, > >Actually I am on the master branch. > >6 minutes is still very long for a compile time! If any minimized >example takes more than a few seconds to compile, I would like to >drill down into that. We need that minimized example. > >As I mentioned earlier, there appeared to be a circular dependency in >the Evaluation phase for the compiler. However, something had to have >terminated the evaluation, so maybe infinite recursion is not a >possible explanation? > >- Julius > > >On Wed, Jun 15, 2016 at 1:55 AM, Bart Brouns <b...@magnetophon.nl> wrote: >> Hi Julius, >> >> Looks like you are using faust 2, right? >> >> I built the latest faust 1 to reproduce your issue, and got 12 min compile >> time for the stable highpass and 6 min for the regular one. >> >> Faust 2.0-a41 gives me a huge RAM usage and endless build time. >> >> I'm unable to build Faust 2 from git because my distro only provides .so >> libs for llvm, while Faust looks for .a libs. >> >> Thanks, >> Bart. >> >> >> On Tue, Jun 14, 2016 at 09:08:40PM -0700, Julius Smith wrote: >>> >>> I tried >>> >>> highpassStable(N,fc) = highpass(N,fc); >>> >>> and it still compiles forever >> >> >> > > > >-- >Julius O. Smith III <j...@ccrma.stanford.edu> >Professor of Music and, by courtesy, Electrical Engineering >CCRMA, Stanford University >http://ccrma.stanford.edu/~jos/ ------------------------------------------------------------------------------ What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic patterns at an interface-level. Reveals which users, apps, and protocols are consuming the most bandwidth. Provides multi-vendor support for NetFlow, J-Flow, sFlow and other flows. Make informed decisions using capacity planning reports. http://sdm.link/zohomanageengine _______________________________________________ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/faudiostream-users