Skip to content

Commit ef1dd2d

Browse files
committed
TOPO: format decls, hoist locals to top
Align the static resolver declarations per .clang-format and move all locals in ucc_sysinfo_cuda_update_fabric_info to the top of the function (UCC C89 style). The versioned fabric struct is renamed to fabric_info_v to avoid a same-name/different-type collision now that both branch locals share function scope. No functional change. Signed-off-by: Tomislav Janjusic <tomislavj@nvidia.com>
1 parent 8f7629a commit ef1dd2d

1 file changed

Lines changed: 35 additions & 43 deletions

File tree

src/components/topo/cuda/ucc_sysinfo_cuda.c

Lines changed: 35 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ typedef nvmlReturn_t (*ucc_nvmlDeviceGetGpuFabricInfoV_t)(
9494
static ucc_nvmlDeviceGetGpuFabricInfoV_t
9595
ucc_sysinfo_cuda_nvml_get_gpu_fabric_info_v_fn(void)
9696
{
97-
static int resolved;
97+
static int resolved;
9898
static ucc_nvmlDeviceGetGpuFabricInfoV_t fn;
9999

100100
if (!resolved) {
@@ -114,7 +114,7 @@ typedef nvmlReturn_t (*ucc_nvmlDeviceGetGpuFabricInfo_t)(
114114
static ucc_nvmlDeviceGetGpuFabricInfo_t
115115
ucc_sysinfo_cuda_nvml_get_gpu_fabric_info_fn(void)
116116
{
117-
static int resolved;
117+
static int resolved;
118118
static ucc_nvmlDeviceGetGpuFabricInfo_t fn;
119119

120120
if (!resolved) {
@@ -131,32 +131,33 @@ static void ucc_sysinfo_cuda_update_fabric_info(nvmlDevice_t nvml_dev,
131131
ucc_gpu_info_t *gpu)
132132
{
133133
nvmlReturn_t nvml_st;
134-
135134
#ifdef HAVE_NVML_GPU_FABRIC_INFO_V
136135
ucc_nvmlDeviceGetGpuFabricInfoV_t get_fabric_info_v;
136+
nvmlGpuFabricInfoV_t fabric_info_v;
137+
#endif
138+
#ifdef HAVE_NVML_GPU_FABRIC_INFO
139+
ucc_nvmlDeviceGetGpuFabricInfo_t get_fabric_info;
140+
nvmlGpuFabricInfo_t fabric_info;
141+
#endif
137142

143+
#ifdef HAVE_NVML_GPU_FABRIC_INFO_V
138144
get_fabric_info_v = ucc_sysinfo_cuda_nvml_get_gpu_fabric_info_v_fn();
139145
if (get_fabric_info_v) {
140-
nvmlGpuFabricInfoV_t fabric_info;
141-
142-
memset(&fabric_info, 0, sizeof(fabric_info));
143-
fabric_info.version = nvmlGpuFabricInfo_v2;
144-
nvml_st = get_fabric_info_v(nvml_dev, &fabric_info);
145-
UCC_STATIC_ASSERT(
146-
sizeof(fabric_info.clusterUuid) ==
147-
UCC_GPU_FABRIC_CLUSTER_UUID_LEN);
146+
memset(&fabric_info_v, 0, sizeof(fabric_info_v));
147+
fabric_info_v.version = nvmlGpuFabricInfo_v2;
148+
nvml_st = get_fabric_info_v(nvml_dev, &fabric_info_v);
149+
UCC_STATIC_ASSERT(sizeof(fabric_info_v.clusterUuid) ==
150+
UCC_GPU_FABRIC_CLUSTER_UUID_LEN);
148151
if (nvml_st == NVML_SUCCESS) {
149-
if (fabric_info.state == NVML_GPU_FABRIC_STATE_COMPLETED) {
152+
if (fabric_info_v.state == NVML_GPU_FABRIC_STATE_COMPLETED) {
150153
gpu->caps |= UCC_GPU_CAP_FABRIC;
151-
gpu->fabric_clique_id = fabric_info.cliqueId;
154+
gpu->fabric_clique_id = fabric_info_v.cliqueId;
152155
#ifdef HAVE_NVML_FABRIC_PARTITION_ID
153-
gpu->fabric_partition_id = fabric_info.partitionId;
156+
gpu->fabric_partition_id = fabric_info_v.partitionId;
154157
#endif
155158
/* Globally-unique fabric id; needed for cross-node match. */
156-
memcpy(
157-
gpu->fabric_cluster_uuid,
158-
fabric_info.clusterUuid,
159-
UCC_GPU_FABRIC_CLUSTER_UUID_LEN);
159+
memcpy(gpu->fabric_cluster_uuid, fabric_info_v.clusterUuid,
160+
UCC_GPU_FABRIC_CLUSTER_UUID_LEN);
160161
}
161162
return;
162163
}
@@ -166,31 +167,22 @@ static void ucc_sysinfo_cuda_update_fabric_info(nvmlDevice_t nvml_dev,
166167
#endif
167168

168169
#ifdef HAVE_NVML_GPU_FABRIC_INFO
169-
{
170-
ucc_nvmlDeviceGetGpuFabricInfo_t get_fabric_info;
171-
172-
get_fabric_info = ucc_sysinfo_cuda_nvml_get_gpu_fabric_info_fn();
173-
if (get_fabric_info) {
174-
nvmlGpuFabricInfo_t fabric_info;
175-
176-
memset(&fabric_info, 0, sizeof(fabric_info));
177-
nvml_st = get_fabric_info(nvml_dev, &fabric_info);
178-
UCC_STATIC_ASSERT(
179-
sizeof(fabric_info.clusterUuid) ==
180-
UCC_GPU_FABRIC_CLUSTER_UUID_LEN);
181-
if (nvml_st == NVML_SUCCESS &&
182-
fabric_info.state == NVML_GPU_FABRIC_STATE_COMPLETED) {
183-
gpu->caps |= UCC_GPU_CAP_FABRIC;
184-
gpu->fabric_clique_id = fabric_info.cliqueId;
185-
/* Globally-unique fabric id; needed for cross-node match. */
186-
memcpy(
187-
gpu->fabric_cluster_uuid,
188-
fabric_info.clusterUuid,
189-
UCC_GPU_FABRIC_CLUSTER_UUID_LEN);
190-
} else if (nvml_st != NVML_SUCCESS) {
191-
ucc_debug("nvmlDeviceGetGpuFabricInfo failed: %s",
192-
nvmlErrorString(nvml_st));
193-
}
170+
get_fabric_info = ucc_sysinfo_cuda_nvml_get_gpu_fabric_info_fn();
171+
if (get_fabric_info) {
172+
memset(&fabric_info, 0, sizeof(fabric_info));
173+
nvml_st = get_fabric_info(nvml_dev, &fabric_info);
174+
UCC_STATIC_ASSERT(sizeof(fabric_info.clusterUuid) ==
175+
UCC_GPU_FABRIC_CLUSTER_UUID_LEN);
176+
if (nvml_st == NVML_SUCCESS &&
177+
fabric_info.state == NVML_GPU_FABRIC_STATE_COMPLETED) {
178+
gpu->caps |= UCC_GPU_CAP_FABRIC;
179+
gpu->fabric_clique_id = fabric_info.cliqueId;
180+
/* Globally-unique fabric id; needed for cross-node match. */
181+
memcpy(gpu->fabric_cluster_uuid, fabric_info.clusterUuid,
182+
UCC_GPU_FABRIC_CLUSTER_UUID_LEN);
183+
} else if (nvml_st != NVML_SUCCESS) {
184+
ucc_debug("nvmlDeviceGetGpuFabricInfo failed: %s",
185+
nvmlErrorString(nvml_st));
194186
}
195187
}
196188
#endif

0 commit comments

Comments
 (0)