#10305·cupy

Deprecate explicit fft Plan instantiation

Author: sebergCreated Sep 14, 2026Updated Sep 14, 2026
Labelscat:otherprio:medium

The plan objects are currently exposed cupy.cuda.cufft.Plan* as objects to the user.

Some (very rare) users are using these directly (mostly Plan1d actually). After some discussion with @leofang and @yangcal nvmath.fft is ready for such use-cases (if people want to still use a Plan* style API directly for some reason).

So we'd suggest to deprecate one of the two by pointing to nvmath.fft:

  • __init__()
  • cufft module level __getattr__ could deprecate on first access of Plan*

(I haven't made up my mind quite what is better, both seems fine).

We may also want to go one step further and get rid of get_fft_plan() completely.