Runs autotune for all backends Symmetric heap can be allocated after nvshmem_init, which is done during plan creation
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(dtfft_platform_t), | intent(in) | :: | platform |
Platform to create plan for |
||
| type(MPI_Comm), | intent(in) | :: | comms(:) |
1D comms |
||
| type(MPI_Comm), | intent(in) | :: | cart_comm |
3D Cartesian comm |
||
| type(dtfft_effort_t), | intent(in) | :: | effort | |||
| type(MPI_Datatype), | intent(in) | :: | base_dtype |
Base MPI_Datatype |
||
| type(pencil), | intent(in) | :: | pencils(:) |
Source meta |
||
| 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 |
||
| logical, | intent(in) | :: | is_z_slab |
Is Z-slab optimization enabled |
||
| integer(kind=int8), | intent(inout) | :: | best_forward_ids(:) |
Best Datatype ids for forward plan |
||
| integer(kind=int8), | intent(inout) | :: | best_backward_ids(:) |
Best Datatype ids for backward plan |
||
| 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 | :: | best_time |
Elapsed time for best backend |
|
| type(dtfft_backend_t), | intent(out), | optional | :: | best_backend |
Best backend selected |