2012-10-22 36 views

回答

3

如果MPI implmentation是开放MPI可以用穷人的并行工具箱(TM),它可以让您在多个节点上并行运行许多MATLAB情况下,让每个人做不同的事情,例如运行一个不同的脚本。成功的关键在于开放MPI出口当前进程的排名在环境变量OMPI_COMM_WORLD_RANK和一个简单的shell脚本可以用来包裹执行回避的事实。下面是一个示例:

#!/bin/bash 

file_num=script$(printf "%03d" $(($OMPI_COMM_WORLD_RANK + 1))).m 
matlab < $file_num 

人们会推出这项为:

mpiexec -np 24 ./script.sh 

这将启动MATLAB的24份,从不同的脚本每个接收输入。第一个将从script001.m获得命令,第二个从script002.m开始,等等。

当然,你可以写在C或C++,甚至Fortran语言的并行代码,并使用MPI那里。然后将代码编译为共享库,可从MATLAB加载和调用。

相关问题