Runs through all possible grid decompositions and selects the best one based on the lowest average execution time
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=int32), | intent(in) | :: | dims(:) |
Global sizes of the transform requested |
||
integer(kind=int32), | intent(in) | :: | transposed_dims(:,:) |
Transposed dimensions |
||
type(MPI_Comm), | intent(in) | :: | base_comm |
3D comm |
||
integer(kind=int64), | intent(in) | :: | base_storage |
Number of bytes needed to store single element |
||
type(dtfft_stream_t), | intent(in) | :: | stream |
Stream to use |
||
integer(kind=int32), | intent(out) | :: | best_decomposition(:) |
Best decomposition found |
||
type(dtfft_backend_t), | intent(in), | optional | :: | backend |
GPU Backend to test. Should be passed only when effort is |
|
real(kind=real32), | intent(out), | optional | :: | min_execution_time |
Elapsed time for best plan selected |
|
type(dtfft_backend_t), | intent(out), | optional | :: | best_backend |
Best backend selected |