photon  1.1
Data Fields
photonConfig Struct Reference

The main Photon configuration structure, passed to photon_init(). -1 may be set for integer values to request the library default. More...

#include <photon_config.h>

Data Fields

int address
 The process rank. More...
 
int nproc
 The total number of processes. More...
 
struct {
   const char *   eth_dev
 Interface name for CMA mode. More...
 
   const char *   ib_dev
 IB interface name filter, e.g.: 'qib0:1+mlx4_0:2'. More...
 
   int   use_cma
 Use the RMA connection manager to establish RDMA context. More...
 
   int   use_ud
 EXPERIMENTAL: unreliable datagram mode (uses multicast) More...
 
   int   num_srq
 The number of shared receive queues for remote completions (default 0) More...
 
   const char *   ud_gid_prefix
 EXPERIMENTAL: GID prefix to use for UD multicast. More...
 
ibv
 Options for the verbs backend. More...
 
struct {
   const char *   eth_dev
 Interface name for the given processing element. More...
 
   int   bte_thresh
 Message size in bytes where BTE will be used (default 8192, 0 to disable BTE) More...
 
ugni
 Options for the uGNI backend. More...
 
struct {
   const char *   eth_dev
 Use a specific interface name. More...
 
   const char *   domain
 Set the libfabric domain string. More...
 
   const char *   node
 Set the libfabric node string. More...
 
   const char *   service
 Set the libfabric service string. More...
 
   const char *   provider
 Set the libfabric provider string (e.g. "sockets" or "psm2") More...
 
fi
 Options for the libfabric (fi) backend. More...
 
struct {
   int   use_forwarder
 
   char **   forwarder_eids
 
forwarder
 EXPERIMENTAL: forwarder interface to XSPd. More...
 
struct {
   int   max_cid_size
 Max size of completion IDs in bytes for PWC (default 8) More...
 
   int   eager_buf_size
 Size of eager buffer per rank in bytes (default 64K, set 0 to disable) More...
 
   int   pwc_buf_size
 Size of PWC packed buffer per rank in bytes (default 64K, set 0 to disable) More...
 
   int   small_msg_size
 Messages <= bytes will use eager buffers (default 1024, set 0 to disable) More...
 
   int   small_pwc_size
 Messages <= bytes will be packed in PWC buffer (default 128, set 0 to disable) More...
 
   int   ledger_entries
 The number of ledger entries (default 64) More...
 
   int   max_rd
 Max number of request descriptors, power of 2 (default 1M, set 0 for unbounded) More...
 
   int   default_rd
 Initial number of request descriptors allocated per peer (default 1024) More...
 
   int   num_cq
 Number of completion queues to assign peers (default 1) More...
 
   int   use_rcq
 Use remote completions when possible (default 0, disabled) More...
 
cap
 
struct {
   int   comp_order
 specify completion ordering constraints (NONE, STRICT) More...
 
attr
 Photon library attributes. More...
 
struct {
   int(*   barrier )(void *)
 Method that implements a global barrier. More...
 
   int(*   allgather )(void *, void *, void *, int)
 Method that implements a global allgather. More...
 
exch
 Metadata exchange function pointers. More...
 
void * comm
 Optional communicator to use for exchange. More...
 
int meta_exch
 See PHOTON_EXCH types below (default MPI) More...
 
photon_cfg_backend_t backend
 The backend for Photon to initialize. More...
 
photon_cfg_coll_iface_t coll
 The collective implementation to initialize. More...
 

Detailed Description

The main Photon configuration structure, passed to photon_init(). -1 may be set for integer values to request the library default.

Definition at line 59 of file photon_config.h.

Field Documentation

◆ address

int photonConfig::address

The process rank.

Definition at line 60 of file photon_config.h.

◆ allgather

int(* photonConfig::allgather) (void *, void *, void *, int)

Method that implements a global allgather.

Definition at line 116 of file photon_config.h.

◆ attr

struct { ... } photonConfig::attr

Photon library attributes.

◆ backend

photon_cfg_backend_t photonConfig::backend

The backend for Photon to initialize.

Definition at line 121 of file photon_config.h.

◆ barrier

int(* photonConfig::barrier) (void *)

Method that implements a global barrier.

Definition at line 115 of file photon_config.h.

◆ bte_thresh

int photonConfig::bte_thresh

Message size in bytes where BTE will be used (default 8192, 0 to disable BTE)

Definition at line 76 of file photon_config.h.

◆ cap

struct { ... } photonConfig::cap

◆ coll

photon_cfg_coll_iface_t photonConfig::coll

The collective implementation to initialize.

Definition at line 122 of file photon_config.h.

◆ comm

void* photonConfig::comm

Optional communicator to use for exchange.

Definition at line 119 of file photon_config.h.

◆ comp_order

int photonConfig::comp_order

specify completion ordering constraints (NONE, STRICT)

Definition at line 110 of file photon_config.h.

◆ default_rd

int photonConfig::default_rd

Initial number of request descriptors allocated per peer (default 1024)

Definition at line 103 of file photon_config.h.

◆ domain

const char* photonConfig::domain

Set the libfabric domain string.

Definition at line 82 of file photon_config.h.

◆ eager_buf_size

int photonConfig::eager_buf_size

Size of eager buffer per rank in bytes (default 64K, set 0 to disable)

Definition at line 97 of file photon_config.h.

◆ eth_dev

const char* photonConfig::eth_dev

Interface name for CMA mode.

Use a specific interface name.

Interface name for the given processing element.

Definition at line 65 of file photon_config.h.

◆ exch

struct { ... } photonConfig::exch

Metadata exchange function pointers.

◆ fi

struct { ... } photonConfig::fi

Options for the libfabric (fi) backend.

◆ forwarder

struct { ... } photonConfig::forwarder

EXPERIMENTAL: forwarder interface to XSPd.

◆ forwarder_eids

char** photonConfig::forwarder_eids

Definition at line 91 of file photon_config.h.

◆ ib_dev

const char* photonConfig::ib_dev

IB interface name filter, e.g.: 'qib0:1+mlx4_0:2'.

Definition at line 66 of file photon_config.h.

◆ ibv

struct { ... } photonConfig::ibv

Options for the verbs backend.

◆ ledger_entries

int photonConfig::ledger_entries

The number of ledger entries (default 64)

Definition at line 101 of file photon_config.h.

◆ max_cid_size

int photonConfig::max_cid_size

Max size of completion IDs in bytes for PWC (default 8)

Definition at line 96 of file photon_config.h.

◆ max_rd

int photonConfig::max_rd

Max number of request descriptors, power of 2 (default 1M, set 0 for unbounded)

Definition at line 102 of file photon_config.h.

◆ meta_exch

int photonConfig::meta_exch

See PHOTON_EXCH types below (default MPI)

Definition at line 120 of file photon_config.h.

◆ node

const char* photonConfig::node

Set the libfabric node string.

Definition at line 83 of file photon_config.h.

◆ nproc

int photonConfig::nproc

The total number of processes.

Definition at line 61 of file photon_config.h.

◆ num_cq

int photonConfig::num_cq

Number of completion queues to assign peers (default 1)

Definition at line 104 of file photon_config.h.

◆ num_srq

int photonConfig::num_srq

The number of shared receive queues for remote completions (default 0)

Definition at line 69 of file photon_config.h.

◆ provider

const char* photonConfig::provider

Set the libfabric provider string (e.g. "sockets" or "psm2")

Definition at line 85 of file photon_config.h.

◆ pwc_buf_size

int photonConfig::pwc_buf_size

Size of PWC packed buffer per rank in bytes (default 64K, set 0 to disable)

Definition at line 98 of file photon_config.h.

◆ service

const char* photonConfig::service

Set the libfabric service string.

Definition at line 84 of file photon_config.h.

◆ small_msg_size

int photonConfig::small_msg_size

Messages <= bytes will use eager buffers (default 1024, set 0 to disable)

Definition at line 99 of file photon_config.h.

◆ small_pwc_size

int photonConfig::small_pwc_size

Messages <= bytes will be packed in PWC buffer (default 128, set 0 to disable)

Definition at line 100 of file photon_config.h.

◆ ud_gid_prefix

const char* photonConfig::ud_gid_prefix

EXPERIMENTAL: GID prefix to use for UD multicast.

Definition at line 70 of file photon_config.h.

◆ ugni

struct { ... } photonConfig::ugni

Options for the uGNI backend.

◆ use_cma

int photonConfig::use_cma

Use the RMA connection manager to establish RDMA context.

Definition at line 67 of file photon_config.h.

◆ use_forwarder

int photonConfig::use_forwarder

Definition at line 90 of file photon_config.h.

◆ use_rcq

int photonConfig::use_rcq

Use remote completions when possible (default 0, disabled)

Definition at line 105 of file photon_config.h.

◆ use_ud

int photonConfig::use_ud

EXPERIMENTAL: unreliable datagram mode (uses multicast)

Definition at line 68 of file photon_config.h.


The documentation for this struct was generated from the following file: