14 #ifndef PHOTON_CONFIG_H 15 #define PHOTON_CONFIG_H 27 #define PHOTON_ORDER_DEFAULT 0x0000 28 #define PHOTON_ORDER_NONE 0x0001 29 #define PHOTON_ORDER_STRICT 0x0002 31 static const char*
const PHOTON_ORDER_TO_STRING[] = {
49 static const char*
const PHOTON_BACKEND_TO_STRING[] = {
struct photon_config_t::@5 ugni
Options for the uGNI backend.
const char * domain
Set the libfabric domain string.
int ledger_entries
The number of ledger entries (default 64)
int default_rd
Initial number of request descriptors allocated per peer (default 1024)
int bte_thresh
Message size in bytes where BTE will be used (default 8192, 0 to disable BTE)
struct photon_config_t::@8 cap
int use_rcq
Use remote completions when possible (default 0, disabled)
int max_rd
Max number of request descriptors, power of 2 (default 1M, set 0 for unbounded)
The main Photon configuration structure, passed to photon_init(). -1 may be set for integer values to...
int nproc
The total number of processes.
int meta_exch
See PHOTON_EXCH types below (default MPI)
photon_cfg_coll_iface_t coll
The collective implementation to initialize.
int(* barrier)(void *)
Method that implements a global barrier.
int use_cma
Use the RMA connection manager to establish RDMA context.
const char * service
Set the libfabric service string.
struct photon_config_t::@7 forwarder
EXPERIMENTAL: forwarder interface to XSPd.
struct photon_config_t::@10 exch
Metadata exchange function pointers.
void * comm
Optional communicator to use for exchange.
int num_srq
The number of shared receive queues for remote completions (default 0)
const char * ib_dev
IB interface name filter, e.g.: 'qib0:1+mlx4_0:2'.
int(* allgather)(void *, void *, void *, int)
Method that implements a global allgather.
int use_ud
EXPERIMENTAL: unreliable datagram mode (uses multicast)
const char * eth_dev
Interface name for CMA mode.
const char * node
Set the libfabric node string.
Use Verbs photon backend.
int address
The process rank.
int small_msg_size
Messages <= bytes will use eager buffers (default 1024, set 0 to disable)
photon_cfg_backend_t
The network fabric backends Photon can use.
int eager_buf_size
Size of eager buffer per rank in bytes (default 64K, set 0 to disable)
struct photon_config_t::@9 attr
Photon library attributes.
int small_pwc_size
Messages <= bytes will be packed in PWC buffer (default 128, set 0 to disable)
Set a default backend (verbs).
int pwc_buf_size
Size of PWC packed buffer per rank in bytes (default 64K, set 0 to disable)
struct photon_config_t::@4 ibv
Options for the verbs backend.
int num_cq
Number of completion queues to assign peers (default 1)
const char * provider
Set the libfabric provider string (e.g. "sockets" or "psm2")
int comp_order
specify completion ordering constraints (NONE, STRICT)
int max_cid_size
Max size of completion IDs in bytes for PWC (default 8)
photon_cfg_backend_t backend
The backend for Photon to initialize.
struct photon_config_t::@6 fi
Options for the libfabric (fi) backend.
const char * ud_gid_prefix
EXPERIMENTAL: GID prefix to use for UD multicast.