NVIDIA DOCA SDK Data Center on a Chip Framework Documentation
dpa_all_to_all_core.h File Reference
#include <mpi.h>
#include <doca_dpa.h>
#include <doca_buf_array.h>
#include <doca_mmap.h>
#include <doca_dev.h>
#include <doca_error.h>
#include <doca_sync_event.h>
#include <doca_rdma.h>
Include dependency graph for dpa_all_to_all_core.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  a2a_config
 
struct  a2a_resources
 
struct  dpa_a2a_request
 

Macros

#define MAX_DEVICES   (2) /* Max number of IB devices to use*/
 
#define MAX_USER_IB_DEVICE_NAME_LEN   (256) /* Maximum user IB device name string length */
 
#define MAX_IB_DEVICE_NAME_LEN   (MAX_USER_IB_DEVICE_NAME_LEN + 1) /* Maximum IB device name string length */
 
#define IB_DEVICE_DEFAULT_NAME   "NOT_SET" /* IB device default name */
 
#define MAX_NUM_THREADS   (8) /* Maximum number of threads to run the kernel */
 
#define MESSAGE_SIZE_DEFAULT_LEN   (-1) /* Message size default length */
 
#define MAX_NUM_PROC   (16) /* Maximum number of processes */
 
#define SYNC_EVENT_MASK_FFS   (0xFFFFFFFFFFFFFFFF) /* Mask for doca_sync_event_wait_gt() wait value */
 

Functions

bool dpa_device_exists_check (const char *device_name)
 
bool rdma_device_exists_check (const char *device_name)
 
doca_error_t dpa_a2a_req_finalize (struct dpa_a2a_request *req)
 
doca_error_t dpa_a2a_req_wait (struct dpa_a2a_request *req)
 
doca_error_t dpa_a2a_init (struct a2a_resources *resources)
 
doca_error_t dpa_a2a_destroy (struct a2a_resources *resources)
 
doca_error_t dpa_ialltoall (void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm, struct dpa_a2a_request *req)
 
doca_error_t dpa_alltoall (void *sendbuf, int sendcount, MPI_Datatype sendtype, void *recvbuf, int recvcount, MPI_Datatype recvtype, MPI_Comm comm)
 
doca_error_t dpa_a2a (int argc, char **argv, struct a2a_config *cfg)
 

Macro Definition Documentation

◆ IB_DEVICE_DEFAULT_NAME

#define IB_DEVICE_DEFAULT_NAME   "NOT_SET" /* IB device default name */

Definition at line 42 of file dpa_all_to_all_core.h.

◆ MAX_DEVICES

#define MAX_DEVICES   (2) /* Max number of IB devices to use*/

Definition at line 39 of file dpa_all_to_all_core.h.

◆ MAX_IB_DEVICE_NAME_LEN

#define MAX_IB_DEVICE_NAME_LEN   (MAX_USER_IB_DEVICE_NAME_LEN + 1) /* Maximum IB device name string length */

Definition at line 41 of file dpa_all_to_all_core.h.

◆ MAX_NUM_PROC

#define MAX_NUM_PROC   (16) /* Maximum number of processes */

Definition at line 45 of file dpa_all_to_all_core.h.

◆ MAX_NUM_THREADS

#define MAX_NUM_THREADS   (8) /* Maximum number of threads to run the kernel */

Definition at line 43 of file dpa_all_to_all_core.h.

◆ MAX_USER_IB_DEVICE_NAME_LEN

#define MAX_USER_IB_DEVICE_NAME_LEN   (256) /* Maximum user IB device name string length */

Definition at line 40 of file dpa_all_to_all_core.h.

◆ MESSAGE_SIZE_DEFAULT_LEN

#define MESSAGE_SIZE_DEFAULT_LEN   (-1) /* Message size default length */

Definition at line 44 of file dpa_all_to_all_core.h.

◆ SYNC_EVENT_MASK_FFS

#define SYNC_EVENT_MASK_FFS   (0xFFFFFFFFFFFFFFFF) /* Mask for doca_sync_event_wait_gt() wait value */

Definition at line 46 of file dpa_all_to_all_core.h.

Function Documentation

◆ dpa_a2a()

doca_error_t dpa_a2a ( int  argc,
char **  argv,
struct a2a_config cfg 
)

Definition at line 2012 of file dpa_all_to_all_core.c.

◆ dpa_a2a_destroy()

doca_error_t dpa_a2a_destroy ( struct a2a_resources resources)

Definition at line 1692 of file dpa_all_to_all_core.c.

◆ dpa_a2a_init()

doca_error_t dpa_a2a_init ( struct a2a_resources resources)

Definition at line 1569 of file dpa_all_to_all_core.c.

◆ dpa_a2a_req_finalize()

doca_error_t dpa_a2a_req_finalize ( struct dpa_a2a_request req)

Definition at line 1834 of file dpa_all_to_all_core.c.

◆ dpa_a2a_req_wait()

doca_error_t dpa_a2a_req_wait ( struct dpa_a2a_request req)

Definition at line 1852 of file dpa_all_to_all_core.c.

◆ dpa_alltoall()

doca_error_t dpa_alltoall ( void *  sendbuf,
int  sendcount,
MPI_Datatype  sendtype,
void *  recvbuf,
int  recvcount,
MPI_Datatype  recvtype,
MPI_Comm  comm 
)

Definition at line 1974 of file dpa_all_to_all_core.c.

◆ dpa_device_exists_check()

bool dpa_device_exists_check ( const char *  device_name)

Definition at line 149 of file dpa_all_to_all_core.c.

◆ dpa_ialltoall()

doca_error_t dpa_ialltoall ( void *  sendbuf,
int  sendcount,
MPI_Datatype  sendtype,
void *  recvbuf,
int  recvcount,
MPI_Datatype  recvtype,
MPI_Comm  comm,
struct dpa_a2a_request req 
)

Definition at line 1893 of file dpa_all_to_all_core.c.

◆ rdma_device_exists_check()

bool rdma_device_exists_check ( const char *  device_name)

Definition at line 190 of file dpa_all_to_all_core.c.