当前位置: 首页 > 第一原理 >【求助】为什么并行计算比单节点的要慢非常多呢?

【求助】为什么并行计算比单节点的要慢非常多呢?

作者 tubaxu
来源: 小木虫 550 11 举报帖子
+关注

菜鸟刚刚接触集群系统的计算。这两天在折腾MS的并行计算。现在可以实行并行计算,但是多节点并行计算的速度,远远低于单节点的计算速度,不知道是为什么?
  集群是曙光系统,共六个节点,每个节点有8个核,内存node1最大,其他五个内存一样大。安装好后,并行可以进行,6个节点48个cpu运行是可以跑的,但是不如用单节点8个cpu跑的快。跑CASTEP程序,单节点8cpu只需要一两分钟就可以返回的结果,6个节点48个cpu却要至少20多分钟。
   请问各位大虾,是什么原因导致这种情况?是并行文件配置的不好?还是因为节点间用的是千兆交换机,影响了数据的交换?还是其他原因?恳请达人给予指点。
    刚刚接触,真的比较菜,让各位见笑了。 返回小木虫查看更多

今日热帖
  • 精华评论
  • yqzhang6518

    不是CPU越多就越快的,CPU之间通讯需要时间,对于一般的集群系统,超过8个CPU后效率会直线下降!

  • chimegreen

    castep有一个节点8个核跑跑试试,呵呵
    刷刷的。
    并行计算是个很复杂的问题,核间通讯要比节点间通讯快的多,节点间通讯还有一些等待,所以并行效率就会降低,MS因为源码不开饭,也没有办法调整,只能顺着来了
    祝你好运

  • tubaxu

    引用回帖:
    Originally posted by tubaxu at 2010-1-9 23:07:
    菜鸟刚刚接触集群系统的计算。这两天在折腾MS的并行计算。现在可以实行并行计算,但是多节点并行计算的速度,远远低于单节点的计算速度,不知道是为什么?
      集群是曙光系统,共六个节点,每个节点有8个核,内存 ...

    的确是,跑dmol3,6个节点跑,要80多秒,而一个节点,只要50秒。看来真不如只用一个节点。多谢回复

  • tubaxu

    引用回帖:
    Originally posted by yqzhang6518 at 2010-1-10 10:04:
    不是CPU越多就越快的,CPU之间通讯需要时间,对于一般的集群系统,超过8个CPU后效率会直线下降!

    并行应该比单节点快,只所以慢,也许是通讯太慢,也许是并行文件设置不当吧。我新手,一点也不懂。

  • xirainbow

    你跑一个几分钟的程序是没意义的
    其中真正并行的部分只占你总计算时间的很少一部分
    再加上通讯时间:(

    跑个需要两三天的任务试试;)

  • tubaxu

    引用回帖:
    Originally posted by xirainbow at 2010-1-10 17:23:
    你跑一个几分钟的程序是没意义的
    其中真正并行的部分只占你总计算时间的很少一部分
    再加上通讯时间:(

    跑个需要两三天的任务试试;)

    明白了。三克油

  • fuzp

    我跑castep,跑几天的程序也是这样,单节点就是比3个节点的快,而且查网络通讯,交换速度并没有满,有些奇怪。
    也许硬盘速度也有关系。

    引用回帖:
    Originally posted by xirainbow at 2010-1-10 17:23:
    你跑一个几分钟的程序是没意义的
    其中真正并行的部分只占你总计算时间的很少一部分
    再加上通讯时间:(

    跑个需要两三天的任务试试;)

猜你喜欢