---
title: 满核运行集合通信(i)osu_alltoall(v)/(i)osu_scatter(v)/(i)osu_gather(v)节点卡住挂死
description: "在满核下运行 (i)osu_alltoall(v)/(i)osu_scatter(v)/(i)osu_gather(v)，当使用默认的max_message_size（1MB）时，节点会卡住挂死。"
url: https://www.hikunpeng.com/document/detail/zh/kunpenghpcs/hpckit/devg/userg_huaweimpi_0067.html
sourcePath: /source/zh/kunpenghpcs/hpckit/devg/userg_huaweimpi_0067.html
indexId: 2c9f0e3dd920d4d068d365acac34d8a9f47b881fe132092e2556028539af84a860
---
# 满核运行集合通信(i)osu_alltoall(v)/(i)osu_scatter(v)/(i)osu_gather(v)节点卡住挂死

#### 现象描述

在满核下运行 (i)osu_alltoall(v)/(i)osu_scatter(v)/(i)osu_gather(v)，当使用默认的max_message_size（1MB）时，节点会卡住挂死。


#### 可能原因

运行集合通信需要的内存超出节点实际内存。下图给出了不同OSU版本部分集合通信占用内存的情况。

图1 不同OSU版本节点内占用内存分析

- PPN -- 每个节点的进程数。

- np -- 总进程数。

- max_msg_size -- 指定集合通信最大包长。


#### 恢复步骤

根据单节点实际内存，代入不同OSU版本的(i)osu_alltoall(v)/(i)osu_scatter(v)/(i)osu_gather(v)内存占用公式中计算max_msg_size，在mpirun命令中通过-m参数指定最大包长的值。
