Csound Csound-dev Csound-tekno Search About

[Cs-dev] FFTW3

Date2015-06-26 21:04
FromSteven Yi
Subject[Cs-dev] FFTW3
Hi All,

I was looking at other music systems and saw that some (PD, SC3) have
optional dependencies to use FFTW3, depending on availability, and
fallback to internal implementations (SC3 will also use VDSP if on
APPLE).  I don't remember if anyone has done benchmarks comparing our
FFT implementation in Csound to FFTW or VDSP,  or if anyone has tried
using FFTW3 in Csound already.

One thing I saw is that FFTW3 is GPL.  One thing that I think would be
possible is if we made FFT functions in Csound plugin-overridable.  If
we do that, we should be able to make a GPL FFTW3 Csound plugin, yes?
(I get a little hazy on the licensing when something is a plugin).

I'm assuming VDSP would work for licensing as SC3 is using it and
they're GPL3.

Anyways, I thought it would be an interesting thing to discuss. :)

Thanks!
steven

------------------------------------------------------------------------------
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors 
network devices and physical & virtual servers, alerts via email & sms 
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2015-06-26 21:11
FromVictor Lazzarini
SubjectRe: [Cs-dev] FFTW3
I’m skeptical as to how much gain we would get with FFTW3 as opposed to the
fftlib we use, in the pow-of-two radix cases. I might be wrong, but FFTW3 might 
present an advantage in other cases, and also big multidimensional transforms.
Using the Apple libs may give us speedups as I think there could be hand-tuned
vectorial code there. Not sure. We need someone to do benchmarks for us.

========================
Dr Victor Lazzarini
Dean of Arts, Celtic Studies and Philosophy,
Maynooth University,
Maynooth, Co Kildare, Ireland
Tel: 00 353 7086936
Fax: 00 353 1 7086952 

> On 26 Jun 2015, at 21:04, Steven Yi  wrote:
> 
> Hi All,
> 
> I was looking at other music systems and saw that some (PD, SC3) have
> optional dependencies to use FFTW3, depending on availability, and
> fallback to internal implementations (SC3 will also use VDSP if on
> APPLE).  I don't remember if anyone has done benchmarks comparing our
> FFT implementation in Csound to FFTW or VDSP,  or if anyone has tried
> using FFTW3 in Csound already.
> 
> One thing I saw is that FFTW3 is GPL.  One thing that I think would be
> possible is if we made FFT functions in Csound plugin-overridable.  If
> we do that, we should be able to make a GPL FFTW3 Csound plugin, yes?
> (I get a little hazy on the licensing when something is a plugin).
> 
> I'm assuming VDSP would work for licensing as SC3 is using it and
> they're GPL3.
> 
> Anyways, I thought it would be an interesting thing to discuss. :)
> 
> Thanks!
> steven
> 
> ------------------------------------------------------------------------------
> Monitor 25 network devices or servers for free with OpManager!
> OpManager is web-based network management software that monitors 
> network devices and physical & virtual servers, alerts via email & sms 
> for fault. Monitor 25 devices for free with no restriction. Download now
> http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel


------------------------------------------------------------------------------
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors 
network devices and physical & virtual servers, alerts via email & sms 
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo

Date2015-06-26 22:28
FromEdward Costello
SubjectRe: [Cs-dev] FFTW3
AttachmentsNone  None  
Hi,
I’ve had a look at some FFT libraries, fastest fourier transform in the south claim to be the fastest, theres some graphs http://anthonix.com/ffts/benchmarks/graphs.html, and a paper http://www.cs.waikato.ac.nz/~ihw/papers/13-AMB-IHW-MJC-FastFourier.pdf, also it’s BSD licensed which I think is more permissive than GPL.

On 26 Jun 2015, at 22:11, Victor Lazzarini <Victor.Lazzarini@nuim.ie> wrote:

I’m skeptical as to how much gain we would get with FFTW3 as opposed to the
fftlib we use, in the pow-of-two radix cases. I might be wrong, but FFTW3 might
present an advantage in other cases, and also big multidimensional transforms.
Using the Apple libs may give us speedups as I think there could be hand-tuned
vectorial code there. Not sure. We need someone to do benchmarks for us.

========================
Dr Victor Lazzarini
Dean of Arts, Celtic Studies and Philosophy,
Maynooth University,
Maynooth, Co Kildare, Ireland
Tel: 00 353 7086936
Fax: 00 353 1 7086952

On 26 Jun 2015, at 21:04, Steven Yi <stevenyi@gmail.com> wrote:

Hi All,

I was looking at other music systems and saw that some (PD, SC3) have
optional dependencies to use FFTW3, depending on availability, and
fallback to internal implementations (SC3 will also use VDSP if on
APPLE).  I don't remember if anyone has done benchmarks comparing our
FFT implementation in Csound to FFTW or VDSP,  or if anyone has tried
using FFTW3 in Csound already.

One thing I saw is that FFTW3 is GPL.  One thing that I think would be
possible is if we made FFT functions in Csound plugin-overridable.  If
we do that, we should be able to make a GPL FFTW3 Csound plugin, yes?
(I get a little hazy on the licensing when something is a plugin).

I'm assuming VDSP would work for licensing as SC3 is using it and
they're GPL3.

Anyways, I thought it would be an interesting thing to discuss. :)

Thanks!
steven

------------------------------------------------------------------------------
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors
network devices and physical & virtual servers, alerts via email & sms
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/csound-devel


------------------------------------------------------------------------------
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors
network devices and physical & virtual servers, alerts via email & sms
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/csound-devel


Date2015-06-27 02:18
FromSteven Yi
SubjectRe: [Cs-dev] FFTW3
Thanks Ed for that; looks promising! It's good that it runs on iOS and
Android too.  I suppose it's worth doing a benchmark as Victor
suggested of Csound's code then, and maybe we can target FFTW3, FFTS,
and VDSP.

Just to keep track of this, I've filed an issue[1] on Csound's
tracker.  I guess whoever has bandwidth first can feel free to take a
look at the ticket.

[1] - https://github.com/csound/csound/issues/495

On Fri, Jun 26, 2015 at 5:28 PM, Edward Costello  wrote:
> Hi,
> I’ve had a look at some FFT libraries, fastest fourier transform in the
> south claim to be the fastest, theres some graphs
> http://anthonix.com/ffts/benchmarks/graphs.html, and a paper
> http://www.cs.waikato.ac.nz/~ihw/papers/13-AMB-IHW-MJC-FastFourier.pdf, also
> it’s BSD licensed which I think is more permissive than GPL.
>
> On 26 Jun 2015, at 22:11, Victor Lazzarini  wrote:
>
> I’m skeptical as to how much gain we would get with FFTW3 as opposed to the
> fftlib we use, in the pow-of-two radix cases. I might be wrong, but FFTW3
> might
> present an advantage in other cases, and also big multidimensional
> transforms.
> Using the Apple libs may give us speedups as I think there could be
> hand-tuned
> vectorial code there. Not sure. We need someone to do benchmarks for us.
>
> ========================
> Dr Victor Lazzarini
> Dean of Arts, Celtic Studies and Philosophy,
> Maynooth University,
> Maynooth, Co Kildare, Ireland
> Tel: 00 353 7086936
> Fax: 00 353 1 7086952
>
> On 26 Jun 2015, at 21:04, Steven Yi  wrote:
>
> Hi All,
>
> I was looking at other music systems and saw that some (PD, SC3) have
> optional dependencies to use FFTW3, depending on availability, and
> fallback to internal implementations (SC3 will also use VDSP if on
> APPLE).  I don't remember if anyone has done benchmarks comparing our
> FFT implementation in Csound to FFTW or VDSP,  or if anyone has tried
> using FFTW3 in Csound already.
>
> One thing I saw is that FFTW3 is GPL.  One thing that I think would be
> possible is if we made FFT functions in Csound plugin-overridable.  If
> we do that, we should be able to make a GPL FFTW3 Csound plugin, yes?
> (I get a little hazy on the licensing when something is a plugin).
>
> I'm assuming VDSP would work for licensing as SC3 is using it and
> they're GPL3.
>
> Anyways, I thought it would be an interesting thing to discuss. :)
>
> Thanks!
> steven
>
> ------------------------------------------------------------------------------
> Monitor 25 network devices or servers for free with OpManager!
> OpManager is web-based network management software that monitors
> network devices and physical & virtual servers, alerts via email & sms
> for fault. Monitor 25 devices for free with no restriction. Download now
> http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel
>
>
>
> ------------------------------------------------------------------------------
> Monitor 25 network devices or servers for free with OpManager!
> OpManager is web-based network management software that monitors
> network devices and physical & virtual servers, alerts via email & sms
> for fault. Monitor 25 devices for free with no restriction. Download now
> http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel
>
>
>
> ------------------------------------------------------------------------------
> Monitor 25 network devices or servers for free with OpManager!
> OpManager is web-based network management software that monitors
> network devices and physical & virtual servers, alerts via email & sms
> for fault. Monitor 25 devices for free with no restriction. Download now
> http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel
>

------------------------------------------------------------------------------
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors 
network devices and physical & virtual servers, alerts via email & sms 
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net
https://

Date2015-06-27 05:17
FromMichael Gogins
SubjectRe: [Cs-dev] FFTW3
AttachmentsNone  None  

I dimly recall using FFTW for something computer music related. It was indeed fast. People who should know what to use, use it, like MathWorks.

-----------------------------------------------------
Michael Gogins
Irreducible Productions
http://michaelgogins.tumblr.com
Michael dot Gogins at gmail dot com

I’m skeptical as to how much gain we would get with FFTW3 as opposed to the
fftlib we use, in the pow-of-two radix cases. I might be wrong, but FFTW3 might
present an advantage in other cases, and also big multidimensional transforms.
Using the Apple libs may give us speedups as I think there could be hand-tuned
vectorial code there. Not sure. We need someone to do benchmarks for us.

========================
Dr Victor Lazzarini
Dean of Arts, Celtic Studies and Philosophy,
Maynooth University,
Maynooth, Co Kildare, Ireland
Tel: 00 353 7086936
Fax: 00 353 1 7086952

> On 26 Jun 2015, at 21:04, Steven Yi <stevenyi@gmail.com> wrote:
>
> Hi All,
>
> I was looking at other music systems and saw that some (PD, SC3) have
> optional dependencies to use FFTW3, depending on availability, and
> fallback to internal implementations (SC3 will also use VDSP if on
> APPLE).  I don't remember if anyone has done benchmarks comparing our
> FFT implementation in Csound to FFTW or VDSP,  or if anyone has tried
> using FFTW3 in Csound already.
>
> One thing I saw is that FFTW3 is GPL.  One thing that I think would be
> possible is if we made FFT functions in Csound plugin-overridable.  If
> we do that, we should be able to make a GPL FFTW3 Csound plugin, yes?
> (I get a little hazy on the licensing when something is a plugin).
>
> I'm assuming VDSP would work for licensing as SC3 is using it and
> they're GPL3.
>
> Anyways, I thought it would be an interesting thing to discuss. :)
>
> Thanks!
> steven
>
> ------------------------------------------------------------------------------
> Monitor 25 network devices or servers for free with OpManager!
> OpManager is web-based network management software that monitors
> network devices and physical & virtual servers, alerts via email & sms
> for fault. Monitor 25 devices for free with no restriction. Download now
> http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel


------------------------------------------------------------------------------
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors
network devices and physical & virtual servers, alerts via email & sms
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/csound-devel

Date2015-06-27 15:31
FromAndres Cabrera
SubjectRe: [Cs-dev] FFTW3
AttachmentsNone  None  
Very interesting learning about FFTS. It's not clear whether there is Windows support. Maybe there isn't?

Cheers,
Andrés

On Fri, Jun 26, 2015 at 9:17 PM, Michael Gogins <michael.gogins@gmail.com> wrote:

I dimly recall using FFTW for something computer music related. It was indeed fast. People who should know what to use, use it, like MathWorks.

-----------------------------------------------------
Michael Gogins
Irreducible Productions
http://michaelgogins.tumblr.com
Michael dot Gogins at gmail dot com

I’m skeptical as to how much gain we would get with FFTW3 as opposed to the
fftlib we use, in the pow-of-two radix cases. I might be wrong, but FFTW3 might
present an advantage in other cases, and also big multidimensional transforms.
Using the Apple libs may give us speedups as I think there could be hand-tuned
vectorial code there. Not sure. We need someone to do benchmarks for us.

========================
Dr Victor Lazzarini
Dean of Arts, Celtic Studies and Philosophy,
Maynooth University,
Maynooth, Co Kildare, Ireland
Tel: 00 353 7086936
Fax: 00 353 1 7086952

> On 26 Jun 2015, at 21:04, Steven Yi <stevenyi@gmail.com> wrote:
>
> Hi All,
>
> I was looking at other music systems and saw that some (PD, SC3) have
> optional dependencies to use FFTW3, depending on availability, and
> fallback to internal implementations (SC3 will also use VDSP if on
> APPLE).  I don't remember if anyone has done benchmarks comparing our
> FFT implementation in Csound to FFTW or VDSP,  or if anyone has tried
> using FFTW3 in Csound already.
>
> One thing I saw is that FFTW3 is GPL.  One thing that I think would be
> possible is if we made FFT functions in Csound plugin-overridable.  If
> we do that, we should be able to make a GPL FFTW3 Csound plugin, yes?
> (I get a little hazy on the licensing when something is a plugin).
>
> I'm assuming VDSP would work for licensing as SC3 is using it and
> they're GPL3.
>
> Anyways, I thought it would be an interesting thing to discuss. :)
>
> Thanks!
> steven
>
> ------------------------------------------------------------------------------
> Monitor 25 network devices or servers for free with OpManager!
> OpManager is web-based network management software that monitors
> network devices and physical & virtual servers, alerts via email & sms
> for fault. Monitor 25 devices for free with no restriction. Download now
> http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel


------------------------------------------------------------------------------
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors
network devices and physical & virtual servers, alerts via email & sms
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/csound-devel

------------------------------------------------------------------------------
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors
network devices and physical & virtual servers, alerts via email & sms
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/csound-devel



Date2015-06-27 16:32
FromMichael Gogins
SubjectRe: [Cs-dev] FFTW3
AttachmentsNone  None  
A lot of projects that use GNU autotools will build just fine on WIndows using MinGW/MSys. I haven't tried this one, but I might. In any event, even if autotools turn out not to work on WIndows, there are various projects that seem to port ffts to MSVC, e.g. https://github.com/linkotec/ffts.




-----------------------------------------------------
Michael Gogins
Irreducible Productions
http://michaelgogins.tumblr.com
Michael dot Gogins at gmail dot com

On Sat, Jun 27, 2015 at 10:31 AM, Andres Cabrera <mantaraya36@gmail.com> wrote:
Very interesting learning about FFTS. It's not clear whether there is Windows support. Maybe there isn't?

Cheers,
Andrés

On Fri, Jun 26, 2015 at 9:17 PM, Michael Gogins <michael.gogins@gmail.com> wrote:

I dimly recall using FFTW for something computer music related. It was indeed fast. People who should know what to use, use it, like MathWorks.

-----------------------------------------------------
Michael Gogins
Irreducible Productions
http://michaelgogins.tumblr.com
Michael dot Gogins at gmail dot com

I’m skeptical as to how much gain we would get with FFTW3 as opposed to the
fftlib we use, in the pow-of-two radix cases. I might be wrong, but FFTW3 might
present an advantage in other cases, and also big multidimensional transforms.
Using the Apple libs may give us speedups as I think there could be hand-tuned
vectorial code there. Not sure. We need someone to do benchmarks for us.

========================
Dr Victor Lazzarini
Dean of Arts, Celtic Studies and Philosophy,
Maynooth University,
Maynooth, Co Kildare, Ireland
Tel: 00 353 7086936
Fax: 00 353 1 7086952

> On 26 Jun 2015, at 21:04, Steven Yi <stevenyi@gmail.com> wrote:
>
> Hi All,
>
> I was looking at other music systems and saw that some (PD, SC3) have
> optional dependencies to use FFTW3, depending on availability, and
> fallback to internal implementations (SC3 will also use VDSP if on
> APPLE).  I don't remember if anyone has done benchmarks comparing our
> FFT implementation in Csound to FFTW or VDSP,  or if anyone has tried
> using FFTW3 in Csound already.
>
> One thing I saw is that FFTW3 is GPL.  One thing that I think would be
> possible is if we made FFT functions in Csound plugin-overridable.  If
> we do that, we should be able to make a GPL FFTW3 Csound plugin, yes?
> (I get a little hazy on the licensing when something is a plugin).
>
> I'm assuming VDSP would work for licensing as SC3 is using it and
> they're GPL3.
>
> Anyways, I thought it would be an interesting thing to discuss. :)
>
> Thanks!
> steven
>
> ------------------------------------------------------------------------------
> Monitor 25 network devices or servers for free with OpManager!
> OpManager is web-based network management software that monitors
> network devices and physical & virtual servers, alerts via email & sms
> for fault. Monitor 25 devices for free with no restriction. Download now
> http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
> _______________________________________________
> Csound-devel mailing list
> Csound-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/csound-devel


------------------------------------------------------------------------------
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors
network devices and physical & virtual servers, alerts via email & sms
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/csound-devel

------------------------------------------------------------------------------
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors
network devices and physical & virtual servers, alerts via email & sms
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/csound-devel



------------------------------------------------------------------------------
Monitor 25 network devices or servers for free with OpManager!
OpManager is web-based network management software that monitors
network devices and physical & virtual servers, alerts via email & sms
for fault. Monitor 25 devices for free with no restriction. Download now
http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/csound-devel