################################## # ML collective configuration file ################################## # NOTE (by Pasha): # Since ML configuration infrastructure is limited on this stage we do not support some tunings, even so parser # understands this values and keys, but we do not have place to load all this values. # threshold - ML infrastructure does not handle multiple thresholds. # fragmentation - ML infrastructure does not fragmentation tuning per collective. ################################## # Defining collective section [BARRIER] # Defining message size section. We will support small/large. In future we may add more options. Barrier is very specific case, because it is only collective that does not transfer any data, so for this specific case we use small # Since ML does not define any algorithm for BARRIER, we just use default. Later we have to introduce some algorithm name for Barrier algorithm = ML_BARRIER_DEFAULT # Hierarchy setup: # # full_hr - means all possible levels of hierarchy (list of possible is defined by user command line) # full_hr_no_basesocket - means all possible levels of hierarchy (list of possible is defined by user command line) # except the basesocket subgroup. # ptp_only - only ptp hierarchy # iboffload_only - only iboffload hierarhcy hierarchy = full_hr [IBARRIER] algorithm = ML_BARRIER_DEFAULT hierarchy = full_hr [BCAST] # bcast supports: ML_BCAST_SMALL_DATA_KNOWN, ML_BCAST_SMALL_DATA_UNKNOWN, ML_BCAST_SMALL_DATA_SEQUENTIAL algorithm = ML_BCAST_SMALL_DATA_KNOWN hierarchy = full_hr # bcast supports: ML_BCAST_LARGE_DATA_KNOWN, ML_BCAST_LARGE_DATA_UNKNOWN, ML_BCAST_LARGE_DATA_SEQUENTIAL algorithm = ML_BCAST_LARGE_DATA_KNOWN hierarchy = full_hr [IBCAST] algorithm = ML_BCAST_SMALL_DATA_KNOWN hierarchy = full_hr algorithm = ML_BCAST_LARGE_DATA_KNOWN hierarchy = full_hr [GATHER] # gather supports: ML_SMALL_DATA_GATHER algorithm = ML_SMALL_DATA_GATHER hierarchy = full_hr # gather supports: ML_LARGE_DATA_GATHER algorithm = ML_LARGE_DATA_GATHER hierarchy = full_hr [IGATHER] # gather supports: ML_SMALL_DATA_GATHER algorithm = ML_SMALL_DATA_GATHER hierarchy = full_hr # gather supports: ML_LARGE_DATA_GATHER algorithm = ML_LARGE_DATA_GATHER hierarchy = full_hr [ALLGATHER] # allgather supports: ML_SMALL_DATA_ALLGATHER algorithm = ML_SMALL_DATA_ALLGATHER hierarchy = full_hr # allgather supports: ML_LARGE_DATA_ALLGATHER algorithm = ML_LARGE_DATA_ALLGATHER hierarchy = full_hr [IALLGATHER] # allgather supports: ML_SMALL_DATA_ALLGATHER algorithm = ML_SMALL_DATA_ALLGATHER hierarchy = full_hr # allgather supports: ML_LARGE_DATA_ALLGATHER algorithm = ML_LARGE_DATA_ALLGATHER hierarchy = full_hr [ALLTOALL] # alltoall supports: ML_SMALL_DATA_ALLTOALL algorithm = ML_SMALL_DATA_ALLTOALL hierarchy = ptp_only # alltoall supports: ML_LARGE_DATA_ALLTOALL algorithm = ML_LARGE_DATA_ALLTOALL hierarchy = ptp_only [IALLTOALL] # alltoall supports: ML_SMALL_DATA_ALLTOALL algorithm = ML_SMALL_DATA_ALLTOALL hierarchy = ptp_only # alltoall supports: ML_LARGE_DATA_ALLTOALL algorithm = ML_LARGE_DATA_ALLTOALL hierarchy = ptp_only [ALLREDUCE] # allreduce supports: ML_SMALL_DATA_ALLREDUCE algorithm = ML_SMALL_DATA_ALLREDUCE hierarchy = full_hr # allreduce supports: ML_LARGE_DATA_ALLREDUCE algorithm = ML_LARGE_DATA_ALLREDUCE hierarchy = full_hr [IALLREDUCE] # allreduce supports: ML_SMALL_DATA_ALLREDUCE algorithm = ML_SMALL_DATA_ALLREDUCE hierarchy = full_hr # allreduce supports: ML_LARGE_DATA_ALLREDUCE algorithm = ML_LARGE_DATA_ALLREDUCE hierarchy = full_hr [REDUCE] # scatter supports: ML_SCATTER_SMALL_DATA_SEQUENTIAL algorithm = ML_SMALL_DATA_REDUCE hierarchy = full_hr # scatter supports: ML_SCATTER_SMALL_DATA_SEQUENTIAL algorithm = ML_LARGE_DATA_REDUCE hierarchy = full_hr [IREDUCE] # scatter supports: ML_SCATTER_SMALL_DATA_SEQUENTIAL algorithm = ML_SMALL_DATA_REDUCE hierarchy = full_hr # scatter supports: ML_SCATTER_SMALL_DATA_SEQUENTIAL algorithm = ML_LARGE_DATA_REDUCE hierarchy = full_hr [SCATTER] # scatter supports: ML_SCATTER_SMALL_DATA_SEQUENTIAL algorithm = ML_SCATTER_SMALL_DATA_SEQUENTIAL hierarchy = full_hr # scatter supports: ML_SCATTER_SMALL_DATA_SEQUENTIAL algorithm = ML_SCATTER_SMALL_DATA_SEQUENTIAL hierarchy = full_hr [ISCATTER] # scatter supports: ML_SCATTER_SMALL_DATA_SEQUENTIAL algorithm = ML_SCATTER_SMALL_DATA_SEQUENTIAL hierarchy = full_hr # scatter supports: ML_SCATTER_SMALL_DATA_SEQUENTIAL algorithm = ML_SCATTER_SMALL_DATA_SEQUENTIAL hierarchy = full_hr