-
Notifications
You must be signed in to change notification settings - Fork 16
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
fluid.bufnmf~
crashes with fft size larger than 65k
#258
Comments
This is on version 1.0.6+sha.e748875.core.sha.f694a366 but I have some of the new bits that @tremblap has posted on discourse. Here's a crash report with the spicy bit being here methinks:
And a simple patch to cause the crash.
|
ok I can reproduce in SC:
|
actually, I'll change the bug title, as I can reproduce with anything above 65536 of fft size.
@rconstanzo are you able to run any FFTSize above 65k by any chance. @weefuzzy did we hard-code somewhere that as maximum? |
Ideally this would zero pad and still finish the frame of analysis (just to be able to run big analyses on whatever files and not always need to check sizes vs windows first). Hmm, I don't know if I tried that methodically. I'll try that now. |
Indeed, it does crash with 131072 even on longer/larger files. I guess it just so happened I found this with |
indeed, this crashes (1024 -1 131072) this is now a @weefuzzy question :)
|
fluid.bufnmf~
crashes with fft size larger than file lengthfluid.bufnmf~
crashes with fft size larger than 65k
Is @weefuzzy the reason we've been limited to such crude and small FFT sizes all these years?! |
There is a default maximum, iirc, can't remember what it is. But whatever it is, things shouldn't crash if you ask for more (it should clip). I'll need to remind myself how it all works. My vague memory is that you can set whatever maximum you think you'll need with a 4th arg to the fftsettings. |
4th argument, or maxfftsize, still crash, but I will investigate further and make a better report, thanks |
You know the drill 😸 Although I see now that the crash is in a system call. So either we're talking to it wrong, or there's a limit to that API we weren't aware of. Us being wrong is much more likely. |
it'll be a fun one to track I think, good for me, I'll report back |
Don't worry, I've found it. Currently a hard ceiling of 65356 since a change some time ago to stop making (expensive) FFT setup objects here there and everywhere. Now there is a global. So two issues to fix:
2nd of these should be a separate issue |
Fix is non-obvious, see PR #281 above. Idea is to try and have both Nice Things: efficiency of having a default fft setup for routine use, but also to allow this sort of wanton profligacy. |
ok I'll review and learn, once again humbled |
Please tell us what you were doing! You can include code and files by drag and dropping them into the text area.
So was trying to do something with
fluid.bufnmf~
where I analyze using really large fft windows hoping to catch changes in "material" in there, and found a reproducible instacrash.I tried to do a 3 component NMF decomposition using
@fftsettings 131072 2048 131072
onjongly.aif
(which is only 124438 samples long) and it instantly crashes.What was the expected result?
It should analyze the buffer with these settings, perhaps zero padding the end of the window, or at least return an error saying the file has to be
<
the FFT size.What was the actual result?
Instacrash.
What operating system were you using?
Mac
Operating system version
macOS 13.4.1
FluCoMa Version
1.0.6
The text was updated successfully, but these errors were encountered: