gpt4 book ai didi

带屏障的 MPI allreduce

转载 作者:行者123 更新时间:2023-12-04 03:43:46 29 4
gpt4 key购买 nike

关于MPI allreduce操作的内部结构及其与MPI屏障的关系的信息很少,这几条信息是不一致的。所以,我试图澄清以下两个问题:

  • 我应该在 allreduce 中使用屏障吗(我的 MPI 版本是 3.1.3)?
  • 在并行编程的上下文中,同步和阻塞是否相同,如果不是它们与 allreduce 和屏障操作的关系?
  • 最佳答案

    除了 MPI_Barrier 之外,没有 MPI 集合具有屏障语义,尽管其他一些操作由于数据依赖性而具有屏障语义。 MPI_All{reduce,gather,toall} 至少对于非零计数而言,具有此类数据依赖性,因此会产生障碍。

    因此,不,您永远不应该向 allreduce 添加障碍,除非您想在计数为零时设置障碍。

    我知道在某些 super 计算机上的集体之前添加障碍的性能原因,但这确实是一个实现问题。

    同步和阻塞不是一回事。非阻塞集合在完成时同步。有关这些术语的更详细定义,请参阅 MPI 标准。

    这有帮助吗?如果没有,我会添加到它,直到它。

    关于带屏障的 MPI allreduce,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32020683/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com