clMathLibraries / clFFT

a software library containing FFT functions written in OpenCL
Apache License 2.0
620 stars 192 forks source link

if i want to process a signal which length is 149, how to set the clLengths in clfftCreateDefaultPlan????? #238

Closed HirataYurina closed 3 years ago

clSharp commented 3 years ago

Unfortunately clFFT does not support a length of 149, because it is a prime number > 13. In the documentation you can find:

supports dimension lengths that can be any combination of powers of 2, 3, 5, 7, 11 and 13.

HirataYurina commented 3 years ago

Thanks. So, i need to pad my array.

Almajester commented 3 years ago

You either pad your array or maybe see if an irrational-base transform could be used. See the work by Crandall on modular fft arithmetic on p-bit numbers where p is prime. I've only used it for Mersenne prime testing, but it's pretty cool.

Get Outlook for iOShttps://aka.ms/o0ukef


From: Joker @.> Sent: Thursday, September 23, 2021 11:19:07 PM To: clMathLibraries/clFFT @.> Cc: Subscribed @.***> Subject: [External] Re: [clMathLibraries/clFFT] if i want to process a signal which length is 149, how to set the clLengths in clfftCreateDefaultPlan????? (#238)

CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.

Thanks. So, i need to pad my array.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/clMathLibraries/clFFT/issues/238#issuecomment-926312126, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AALCOEBNT5ZK6R6ZTRDURJDUDPU2XANCNFSM5ESXPTGQ. Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

HirataYurina commented 3 years ago

It's so cool.