Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Benchmark against other libraries #1

Closed
indutny opened this issue Mar 4, 2017 · 11 comments
Closed

Benchmark against other libraries #1

indutny opened this issue Mar 4, 2017 · 11 comments

Comments

@indutny
Copy link
Owner

indutny commented Mar 4, 2017

This library is most likely one of the fastest implementations of Cooley-Tukey FFT algorithm. It would be interesting to see how it compares to other JS implementations.

indutny added a commit that referenced this issue Mar 4, 2017
@indutny
Copy link
Owner Author

indutny commented Mar 4, 2017

Added "framework" for introducing more benchmarks. Right now comparing to:

@drom
Copy link

drom commented Mar 4, 2017

indutny added a commit that referenced this issue Mar 4, 2017
@indutny
Copy link
Owner Author

indutny commented Mar 4, 2017

@drom done

@faroit
Copy link

faroit commented Mar 5, 2017

Hey, this is a great implementation!

Have you tested compared to the builtin FFT in web audio? Even though this would be bit unfair because it's not js, it would still be interesting to see if fft.js would be fast enough to use this for realtime audio.

@indutny
Copy link
Owner Author

indutny commented Mar 5, 2017

@faroit good idea!

Just curious, how many bands do you actually use in web audio? fft.js can do 2k ops/sec on 16384 bands, which means that it will add less than 0.5ms of latency. On 4096 bands it is about 0.1ms of added latency.

@humphd
Copy link

humphd commented Mar 11, 2017

+@corbanbrook who worked on the Firefox Audio stuff with me and wrote dsp.js. He's done a lot of perf work on this stuff in the past, see also https://gist.github.com/corbanbrook/469c325734e458ba1415509f52d9c096

@indutny
Copy link
Owner Author

indutny commented Mar 11, 2017

This gist is a part of our discussion with @corbanbrook with regards to fft.js performance and comparing it to dsp.js . After few improvements to benchmarks and the library code, I'm quite confident that current benchmarks are accurate and fft.js outperforms dsp.js on all of input sizes.

@indutny
Copy link
Owner Author

indutny commented Mar 11, 2017

Thank you for adding it to this discussion, though!

@Matt-Esch
Copy link

https://github.com/Matt-Esch/browser-fft/blob/master/index.js an example using the browser "native" fft with a web audio hack

@indutny
Copy link
Owner Author

indutny commented Mar 15, 2017

@Matt-Esch this is cool, however it is rather non obvious how the latency can be measured with WebAudio. I suppose one can insert JS node before and after and calculate delta, but this is obviously not how this is going to be used.

@indutny
Copy link
Owner Author

indutny commented Apr 13, 2017

I guess this can be closed now.

@indutny indutny closed this as completed Apr 13, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants