cuDecomp
0.4.0
Overview
What is cuDecomp?
Decomposition Layout
Basic Usage Guide
Starting up cuDecomp
Creating a grid descriptor
Allocate pencil memory
Working with pencil data
C/C++
Fortran
Allocating workspace
Transposing the data
Updating halo regions
Cleaning up and finalizing the library
Building and running the example
Autotuning
Autotuning process
Autotuning usage
Creating a grid descriptor with autotuning enabled
Autotuner output and querying results
Working with NVSHMEM-enabled builds
Controlling the symmetric heap size
MPI compatibility
cuDecomp API
cuDecomp C API
Types
Internal types
Grid Descriptor Configuration
Pencil Information
Communication Backends
Additional Enumerators
Functions
Library Initialization/Finalization
Grid Descriptor Management
Workspace Management
Helper Functions
Transposition Functions
Halo Exchange Functions
cuDecomp Fortran API
Types
Internal types
Grid Descriptor Configuration
Pencil Information
Communication Backends
Additional Enumerators
Functions
Library Initialization/Finalization
Grid Descriptor Management
Workspace Management
Helper Functions
Transposition Functions
Halo Exchange Functions
Environment Variables
CUDECOMP_ENABLE_NCCL_UBR
cuDecomp
Index
Index
C
C
cudecompAutotuneGridMode_t (C++ enum)
cudecompAutotuneGridMode_t::CUDECOMP_AUTOTUNE_GRID_HALO (C++ enumerator)
cudecompAutotuneGridMode_t::CUDECOMP_AUTOTUNE_GRID_TRANSPOSE (C++ enumerator)
cudecompDataType_t (C++ enum)
cudecompDataType_t::CUDECOMP_DOUBLE (C++ enumerator)
cudecompDataType_t::CUDECOMP_DOUBLE_COMPLEX (C++ enumerator)
cudecompDataType_t::CUDECOMP_FLOAT (C++ enumerator)
cudecompDataType_t::CUDECOMP_FLOAT_COMPLEX (C++ enumerator)
cudecompFinalize (C++ function)
cudecompFinalize() (fortran function)
cudecompFree (C++ function)
cudecompFree() (fortran function)
cudecompGetDataTypeSize (C++ function)
cudecompGetDataTypeSize() (fortran function)
cudecompGetGridDescConfig (C++ function)
cudecompGetGridDescConfig() (fortran function)
cudecompGetHaloWorkspaceSize (C++ function)
cudecompGetHaloWorkspaceSize() (fortran function)
cudecompGetPencilInfo (C++ function)
cudecompGetPencilInfo() (fortran function)
cudecompGetShiftedRank (C++ function)
cudecompGetShiftedRank() (fortran function)
cudecompGetTransposeWorkspaceSize (C++ function)
cudecompGetTransposeWorkspaceSize() (fortran function)
cudecompGridDesc (fortran type)
cudecompGridDesc_t (C++ type)
cudecompGridDescAutotuneOptions (fortran type)
cudecompGridDescAutotuneOptions_t (C++ struct)
cudecompGridDescAutotuneOptions_t::allow_uneven_decompositions (C++ member)
cudecompGridDescAutotuneOptions_t::autotune_halo_backend (C++ member)
cudecompGridDescAutotuneOptions_t::autotune_transpose_backend (C++ member)
cudecompGridDescAutotuneOptions_t::disable_nccl_backends (C++ member)
cudecompGridDescAutotuneOptions_t::disable_nvshmem_backends (C++ member)
cudecompGridDescAutotuneOptions_t::dtype (C++ member)
cudecompGridDescAutotuneOptions_t::grid_mode (C++ member)
cudecompGridDescAutotuneOptions_t::halo_axis (C++ member)
cudecompGridDescAutotuneOptions_t::halo_extents (C++ member)
cudecompGridDescAutotuneOptions_t::halo_periods (C++ member)
cudecompGridDescAutotuneOptions_t::n_trials (C++ member)
cudecompGridDescAutotuneOptions_t::n_warmup_trials (C++ member)
cudecompGridDescAutotuneOptions_t::skip_threshold (C++ member)
cudecompGridDescAutotuneOptions_t::transpose_op_weights (C++ member)
cudecompGridDescAutotuneOptions_t::transpose_use_inplace_buffers (C++ member)
cudecompGridDescAutotuneOptionsSetDefaults (C++ function)
cudecompGridDescAutotuneOptionsSetDefaults() (fortran function)
cudecompGridDescConfig (fortran type)
cudecompGridDescConfig_t (C++ struct)
cudecompGridDescConfig_t::gdims (C++ member)
cudecompGridDescConfig_t::gdims_dist (C++ member)
cudecompGridDescConfig_t::halo_comm_backend (C++ member)
cudecompGridDescConfig_t::pdims (C++ member)
cudecompGridDescConfig_t::transpose_axis_contiguous (C++ member)
cudecompGridDescConfig_t::transpose_comm_backend (C++ member)
cudecompGridDescConfigSetDefaults (C++ function)
cudecompGridDescConfigSetDefaults() (fortran function)
cudecompGridDescCreate (C++ function)
cudecompGridDescCreate() (fortran function)
cudecompGridDescDestroy (C++ function)
cudecompGridDescDestroy() (fortran function)
cudecompHaloCommBackend_t (C++ enum)
cudecompHaloCommBackend_t::CUDECOMP_HALO_COMM_MPI (C++ enumerator)
cudecompHaloCommBackend_t::CUDECOMP_HALO_COMM_MPI_BLOCKING (C++ enumerator)
cudecompHaloCommBackend_t::CUDECOMP_HALO_COMM_NCCL (C++ enumerator)
cudecompHaloCommBackend_t::CUDECOMP_HALO_COMM_NVSHMEM (C++ enumerator)
cudecompHaloCommBackend_t::CUDECOMP_HALO_COMM_NVSHMEM_BLOCKING (C++ enumerator)
cudecompHaloCommBackendToString (C++ function)
cudecompHaloCommBackendToString() (fortran function)
cudecompHandle (fortran type)
cudecompHandle_t (C++ type)
cudecompInit (C++ function)
cudecompInit() (fortran function)
cudecompMalloc (C++ function)
cudecompMalloc() (fortran function)
cudecompPencilInfo (fortran type)
cudecompPencilInfo_t (C++ struct)
cudecompPencilInfo_t::halo_extents (C++ member)
cudecompPencilInfo_t::hi (C++ member)
cudecompPencilInfo_t::lo (C++ member)
cudecompPencilInfo_t::order (C++ member)
cudecompPencilInfo_t::shape (C++ member)
cudecompPencilInfo_t::size (C++ member)
cudecompResult_t (C++ enum)
cudecompResult_t::CUDECOMP_RESULT_CUDA_ERROR (C++ enumerator)
cudecompResult_t::CUDECOMP_RESULT_CUTENSOR_ERROR (C++ enumerator)
cudecompResult_t::CUDECOMP_RESULT_INTERNAL_ERROR (C++ enumerator)
cudecompResult_t::CUDECOMP_RESULT_INVALID_USAGE (C++ enumerator)
cudecompResult_t::CUDECOMP_RESULT_MPI_ERROR (C++ enumerator)
cudecompResult_t::CUDECOMP_RESULT_NCCL_ERROR (C++ enumerator)
cudecompResult_t::CUDECOMP_RESULT_NOT_SUPPORTED (C++ enumerator)
cudecompResult_t::CUDECOMP_RESULT_NVSHMEM_ERROR (C++ enumerator)
cudecompResult_t::CUDECOMP_RESULT_SUCCESS (C++ enumerator)
cudecompTransposeCommBackend_t (C++ enum)
cudecompTransposeCommBackend_t::CUDECOMP_TRANSPOSE_COMM_MPI_A2A (C++ enumerator)
cudecompTransposeCommBackend_t::CUDECOMP_TRANSPOSE_COMM_MPI_P2P (C++ enumerator)
cudecompTransposeCommBackend_t::CUDECOMP_TRANSPOSE_COMM_MPI_P2P_PL (C++ enumerator)
cudecompTransposeCommBackend_t::CUDECOMP_TRANSPOSE_COMM_NCCL (C++ enumerator)
cudecompTransposeCommBackend_t::CUDECOMP_TRANSPOSE_COMM_NCCL_PL (C++ enumerator)
cudecompTransposeCommBackend_t::CUDECOMP_TRANSPOSE_COMM_NVSHMEM (C++ enumerator)
cudecompTransposeCommBackend_t::CUDECOMP_TRANSPOSE_COMM_NVSHMEM_PL (C++ enumerator)
cudecompTransposeCommBackendToString (C++ function)
cudecompTransposeCommBackendToString() (fortran function)
cudecompTransposeXToY (C++ function)
cudecompTransposeXToY() (fortran function)
cudecompTransposeYToX (C++ function)
cudecompTransposeYToX() (fortran function)
cudecompTransposeYToZ (C++ function)
cudecompTransposeYToZ() (fortran function)
cudecompTransposeZToY (C++ function)
cudecompTransposeZToY() (fortran function)
cudecompUpdateHalosX (C++ function)
cudecompUpdateHalosX() (fortran function)
cudecompUpdateHalosY (C++ function)
cudecompUpdateHalosY() (fortran function)
cudecompUpdateHalosZ (C++ function)
cudecompUpdateHalosZ() (fortran function)