2017-10-17 62 views
0

目前我是新来使用IMB基准,并希望确保如何保证过程的数量适当分配给每个节点

是否检查的过程(NP)的配置数量是平均分配节点和每个芯

目前IMB-基准提供了基于消息的持续时间为

的固定尺寸。例如象下面这样一个固定大小每秒的吞吐量。

$ mpirun -np 64 -machinefile hosts_infin ./IMB-MPI1 -map 32x2 Sendrecv 

#----------------------------------------------------------------------------- 
     #bytes #repetitions t_min[usec] t_max[usec] t_avg[usec] Mbytes/sec 
      0   1000   0.76   0.76   0.76   0.00 
      1   1000   0.85   0.85   0.85   2.35 
      2   1000   0.79   0.79   0.79   5.06 
      4   1000   0.80   0.80   0.80  10.00 
      8   1000   0.78   0.78   0.78  20.45 
      16   1000   0.79   0.80   0.80  40.16 
      32   1000   0.79   0.79   0.79  80.61 
      64   1000   0.79   0.79   0.79  162.59 
      128   1000   0.82   0.82   0.82  311.41 
      256   1000   0.91   0.91   0.91  565.42 
      512   1000   0.95   0.95   0.95  1082.13 
     1024   1000   0.99   0.99   0.99  2076.87 
     2048   1000   1.27   1.27   1.27  3229.91 
     4096   1000   1.71   1.71   1.71  4802.87 
     8192   1000   2.49   2.50   2.50  6565.97 
     16384   1000   4.01   4.01   4.01  8167.28 
     32768   1000   7.08   7.09   7.08  9249.23 
     65536   640  22.89  22.89  22.89  5725.50 
     131072   320  37.45  37.45  37.45  6999.22 
     262144   160  65.74  65.76  65.75  7972.53 
     524288   80  120.10  120.15  120.12  8727.37 
     1048576   40  228.63  228.73  228.68  9168.57 
     2097152   20  445.38  445.69  445.53  9410.86 
     4194304   10  903.77  905.97  904.87  9259.29 

#----------------------------------------------------------------------------- 

但是,这并不能保证当我配置不同数量的处理器时,这些进程均匀分布到节点上。

分配给特定的核心可以在IMB基准测试中吗?还是我需要使用替代基准来做到这一点?

回答

0

进程(mpi等级)分配到节点的方式取决于mpi启动器(mpirun在你的情况下),它与应用程序无关,虽然应用程序性能会受到影响,应用程序也会受到影响如果使用本地资源(如本地文件系统中的文件)则执行。顺便说一句,固定到特定内核的进程也是mpi启动程序或mpi库的责任。

既然你没有指定你使用的mpi实现,我强烈建议你看看man mpirun。一些mpirun命令允许-ppn指定每个节点的进程数量。其他可以让你限制机器文件中的插槽数量。

最后,一些mpi启动器提供了一定程度的冗长度,以向用户显示进程如何映射到节点中。

相关问题