Re: [Faudiostream-users] compiler hangs on this program?
> On Feb 22, 2018, at 10:23 AM, Oleg Nesterovwrote: > > On 02/22, Mykle Hansen wrote: >> >> My latest problem: my Faust program seems to hang the compiler, >> locking up one CPU on my system until I terminate it. > ... > >> betanoise(beta) = real, imag : an.ifft(N) : select2(0) >> with { >> N=8192; // 2^13 > > Well, an.ifft(8192) needs some time to compile ;) Aha. Or rather, d’oh. > but it seems that you do not really understand what it does. You can't use N > > 1, > inputs(an.ifft(N)) == 2 * N and it must be equal to 2 == outputs(real, imag). You’re right, I sure don’t. =) I thought N was an evaluation window size, or something. I was just experimenting with Bourke’s approach, which I get in theory but not in practice. The signal his code is feeding to fft(-1) is a complex waveform with exponentially decreasing magnitude over time (dithered with noise) & random phase. He runs it through IFFT to convert that into 1/f noise, with exponentially decreasing power over frequency. Peering at analyzers.lib a little deeper now … am I right that N is the number of evaluation bins, i.e. as would be produced by a forward FFT analysis of a signal? (So 32 would be plenty for audio, and that compiles quickly enough.) If so, I guess my whole approach is 90 degrees off — the magnitudes need to be fed in parallel to ifft(), not in series. Does that seem right? I admit I’ve never done an IFFT before. =) -mykle- -- Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot ___ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/faudiostream-users
Re: [Faudiostream-users] FAUST Compiler for GPGPU?
> Le 23 févr. 2018 à 09:55, Christoph Kuhra écrit : > > Hey, > > perhapes some topic to discuss on LAC2018? > >> 1) GPU computation is not really adapted to the need of general audio >> algorithms, but more for highly « data parallel » needs (likes images). In >> audio code, as soon as your code is doing recursions, GPU are quite >> inefficient and not used the way they like >> >> 2) the code generation strategy was very naive, so probably even under-using >> what could be theoretically achieved >> >> 3) GPU/CPU memory transfer suffers from high latency, so is not adapted to >> real-time computation with small buffer sizes > I did some recent research on that. > http://ceur-ws.org/Vol-2009/fmt-proceedings-2017-paper10.pdf > > With NVidia Pascal architecture ( > GT 10XX) and newer you have Zero-Copy > Data Transfer. > Sadly now Pascal Card around :-/ > > With GT 900 we could achieve 512 Samples / 48k @ 2Ch. Very interesting indeed ! > > >> >> I read later on that the Csound guys did some experiment, see here about the >> CUDA thing: http://www.csounds.com/manual/html/PrefaceWhatsNew.html. Victor >> Lazzarini on this list can probably develop here. >> >> So my conclusion is that OpenCL/CUDA *could* be interesting again assuming >> 1) a subset of audio algorithms only would be compiled, 2) the Faust >> compiler possibly need some new primitives (vector, matrix..) more adapted >> to GPU processing, and code generation would have two be improved, 3) the >> latency issues would have to be revisited with more recent and powerful >> cards. > > I am not very familiar with using Faust, just followed it on LAC. I just > think this would be a really interesting topic, espacially with the Faust web > interpreter Do you mean using WebGL for GPGPU ? > You could do some serious online signal processing like virtual soundscapes, > which is something we are considering in our research project fast-music > (www.soundjack.eu). > Or am I on a wrong path regarding Faust? > Well I suggest you dig a bit more the language itself, with them documentation and libraries here : http://faust.grame.fr/Documentation/ Then "FAUST Compiler for GPGPU could then be an interesting topic for «Round Table Topics » for IFC: here http://www.ifc18.uni-mainz.de ? Would you be there? Stéphane -- Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot ___ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/faudiostream-users
Re: [Faudiostream-users] FAUST Compiler for GPGPU?
Hey, perhapes some topic to discuss on LAC2018? 1) GPU computation is not really adapted to the need of general audio algorithms, but more for highly « data parallel » needs (likes images). In audio code, as soon as your code is doing recursions, GPU are quite inefficient and not used the way they like 2) the code generation strategy was very naive, so probably even under-using what could be theoretically achieved 3) GPU/CPU memory transfer suffers from high latency, so is not adapted to real-time computation with small buffer sizes I did some recent research on that. http://ceur-ws.org/Vol-2009/fmt-proceedings-2017-paper10.pdf With NVidia Pascal architecture ( > GT 10XX) and newer you have Zero-Copy Data Transfer. Sadly now Pascal Card around :-/ With GT 900 we could achieve 512 Samples / 48k @ 2Ch. I read later on that the Csound guys did some experiment, see here about the CUDA thing: http://www.csounds.com/manual/html/PrefaceWhatsNew.html. Victor Lazzarini on this list can probably develop here. So my conclusion is that OpenCL/CUDA *could* be interesting again assuming 1) a subset of audio algorithms only would be compiled, 2) the Faust compiler possibly need some new primitives (vector, matrix..) more adapted to GPU processing, and code generation would have two be improved, 3) the latency issues would have to be revisited with more recent and powerful cards. I am not very familiar with using Faust, just followed it on LAC. I just think this would be a really interesting topic, espacially with the Faust webinterpreter. You could do some serious online signal processing like virtual soundscapes, which is something we are considering in our research project fast-music (www.soundjack.eu). Or am I on a wrong path regarding Faust? BR, Ck Stéphane Le 23 févr. 2018 à 08:07, Christoph Kuhra écrit : Hi *, I wonder if there is some work on a CUDA/OpenCL Compiler for Faust? Would this not be a very interesting feature? BR, Ck -- Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot ___ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/faudiostream-users -- Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot ___ Faudiostream-users mailing list Faudiostream-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/faudiostream-users