User Manual
Features Overview and ConfigurationRev 2.3-1.0.1
Mellanox Technologies
152
3.2.6.3 Dynamically Connected Transport (DCT)
Dynamically Connected transport (DCT) service is an extension to transport services to enable a
higher degree of scalability while maintaining high performance for sparse traf
fic. Utilization of
DCT reduces the total number of QPs required system wide by having Reliable type QPs dynam-
ically connect and disconnect from any remote node. DCT connections only stay connected
while they are active.
This results in smaller memory footprint, less overhead to set connections
and higher on-chip cache utilization and hence increased performance. DCT is supported only in
mlx5 driver.
3.2.7 Optimized Memory Access
3.2.7.1 Contiguous Pages
Contiguous Pages improves performance by allocating user memory regions over physical con-
tiguous pages. It enables a user application to ask low level drivers to allocate contiguous mem-
ory for it as part of ibv_reg_mr.
Additional performance improvements can be reached by allocating Queue Pair (QP) and Com-
pletion Queue (CQ|) buffers to the Contiguous Pages.
To activate set the below environment variables with values of PREFER_CONTIG or CONTIG.
• For QP: MLX_QP_ALLOC_TYPE
• For CQ: MLX_CQ_ALLOC_TYPE
The following are all the possible values that can be allocated to the buffer:
Possible Value
1
1. Values are NOT case sensitive.
ANON Use current pages ANON small ones.
HUGE Force huge pages.
CONTIG Force contiguous pages.
PREFER_CONTIG Try contiguous fallback to ANON small pages. (Default)
PREFER_HUGE Try huge fallback to ANON small pages.
ALL Try huge fallback to contiguous if failed fallback to ANON small pages.
Usage:
The application calls the
ibv_exp_reg_mr API which turns on the
IBV_EXP_ACCESS_ALLOCATE_MR bit and sets the input address to NULL. Upon success, the
address field of the struct
ibv_mr will hold the address to the allocated memory block. This block
will be freed implicitly when the
ibv_dereg_mr() is called.
Description