Team Management

ACLSHMEM_TEAM_MY_PE

ACLSHMEM_DEVICE_PREFIX int aclshmem_team_my_pe(aclshmem_team_t team)
ACLSHMEM_HOST_PREFIX int aclshmem_team_my_pe(aclshmem_team_t team)

获取当前PE在分组内的PE id。

参数:

team – [in] 一个分组句柄,类型为aclshmem_team_t。

返回:

当前PE在指定分组内的PE id。

ACLSHMEM_TEAM_N_PES

ACLSHMEM_DEVICE_PREFIX int aclshmem_team_n_pes(aclshmem_team_t team)
ACLSHMEM_HOST_PREFIX int aclshmem_team_n_pes(aclshmem_team_t team)

获取指定分组的PE数量。

参数:

team – [in] 一个分组句柄,类型为aclshmem_team_t。

返回:

指定分组的PE数量。

ACLSHMEM_TEAM_CONFIG_T

struct aclshmem_team_config_t

分组管理配置

ACLSHMEM_TEAM_GET_CONFIG

ACLSHMEM_HOST_PREFIX void aclshmem_team_get_config(aclshmem_team_t team, aclshmem_team_config_t *config)

获取指定分组的配置

参数:
  • team – [in] 一个分组句柄,类型为aclshmem_team_t

  • config – [in] 对应分组的配置指针

返回:

None

ACLSHMEM_TEAM_TRANSLATE_PE

ACLSHMEM_DEVICE_PREFIX int aclshmem_team_translate_pe(aclshmem_team_t src_team, int src_pe, aclshmem_team_t dst_team)
ACLSHMEM_HOST_PREFIX int aclshmem_team_translate_pe(aclshmem_team_t src_team, int src_pe, aclshmem_team_t dst_team)

根据源分组中PE获取在目的team中的PE编号

参数:
  • src_team – [in] 源分组

  • src_pe – [in] 源分组中的PE编号

  • dst_team – [in] 目的分组中的PE编号

返回:

该PE在目的分组中的PE编号

ACLSHMEM_TEAM_SPLIT_STRIDED

ACLSHMEM_HOST_PREFIX int aclshmem_team_split_strided(aclshmem_team_t *parent_team, int pe_start, int pe_stride, int pe_size, const aclshmem_team_config_t *config, long config_mask, aclshmem_team_t *new_team)

通过Stride方式从父分组中获取一个子分组

参数:
  • parent_team – [in] 父分组

  • pe_start – [in] 子分组在父分组中的起始位置

  • pe_stride – [in] 子分组的stride

  • pe_size – [in] 子分组的大小

  • config – [in] 子分组的配置

  • config_mask – [in] 子分组的配置掩码

  • new_team – [out] 通过stride方式获取的子分组

返回:

错误码

ACLSHMEM_TEAM_SPLIT_2D

ACLSHMEM_HOST_PREFIX int aclshmem_team_split_2d(aclshmem_team_t *parent_team, int xrange, const aclshmem_team_config_t *xaxis_config, long xaxis_mask, aclshmem_team_t *xaxis_team, const aclshmem_team_config_t *yaxis_config, long yaxis_mask, aclshmem_team_t *yaxis_team)

通过二维分裂方式从父分组中获取一个子分组

参数:
  • parent_team – [in] 父分组

  • xrange – [in] x轴方向所包含的PE数量

  • xaxis_config – [in] x轴方向对应的子分组配置

  • xaxis_mask – [in] x轴方向对应的子分组配置掩码

  • yaxis_config – [in] y轴方向对应的子分组配置

  • yaxis_mask – [in] y轴方向对应的子分组配置掩码

  • xaxis_team – [in] x轴方向对应的子分组

  • yaxis_team – [in] y轴方向对应的子分组

返回:

错误码

ACLSHMEM_TEAM_DESTROY

ACLSHMEM_HOST_PREFIX void aclshmem_team_destroy(aclshmem_team_t team)

销毁指定分组

参数:

team – [in] 一个分组句柄,类型为aclshmem_team_t

返回:

None