Skip to content

Conversation

@cliffburdick
Copy link
Collaborator

@cliffburdick cliffburdick commented Feb 10, 2024

This PR adds initial support for FFTs on ARM using NVPL. NVPL follows the FFTW interface, which prevents a few features cuFFT has. Most notable half-precision support is missing and FFTW requires the data pointer to be part of the plan. This makes caching somewhat pointless since the same size FFT with different pointers cannot reuse a plan.

Included in the PR is full unit test coverage for all FFT tests that had fp32/fp64 support. Once the NVPL API evolves to possible allow plans without pointers we can rewrite this to use the cuFFT method of having plans based on 1D/2D classes.

You may also notice a seemingly unrelated change in conv2d. This is an nvcc compiler bug that only affects ARM. This change will be reverted once the compiler bug is addressed

This commit also moves all unit tests to the tuple format so we can switch executors per test quickly.

@cliffburdick
Copy link
Collaborator Author

/blossom-ci

@cliffburdick cliffburdick force-pushed the nvpl_fft branch 2 times, most recently from efd570b to 5b059f2 Compare February 10, 2024 02:45
@cliffburdick
Copy link
Collaborator Author

/blossom-ci

@cliffburdick cliffburdick force-pushed the nvpl_fft branch 3 times, most recently from 5f7628c to b73be7d Compare February 10, 2024 02:56
@cliffburdick
Copy link
Collaborator Author

/blossom-ci

1 similar comment
@cliffburdick
Copy link
Collaborator Author

/blossom-ci

@cliffburdick
Copy link
Collaborator Author

/blossom-ci

@cliffburdick
Copy link
Collaborator Author

/blossom-ci

@cliffburdick cliffburdick force-pushed the nvpl_fft branch 3 times, most recently from 4f4495e to 8996029 Compare March 11, 2024 03:31
@cliffburdick
Copy link
Collaborator Author

/blossom-ci

@cliffburdick
Copy link
Collaborator Author

/blossom-ci

@cliffburdick
Copy link
Collaborator Author

/blossom-ci

Switched all unit tests to use tuple with executor and type
@cliffburdick
Copy link
Collaborator Author

/blossom-ci

@cliffburdick cliffburdick merged commit ad4009d into main Mar 12, 2024
@cliffburdick cliffburdick deleted the nvpl_fft branch March 12, 2024 15:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants