Windows11下配置环境运行MPI程序

MPI是高性能计算和并行计算的一个重要的库,想要运行MPI的程序,得先配置好他。

这个教程是在win11的环境下基于VScode的开发环境进行配置

1.下载编译器和MPI库

Mingw-w64:MinGW-w64 - for 32 and 64 bit Windows - Browse Files at SourceForge.net

可以用最下面的installer安装器 

安装完之后打开cmd,用命令gcc -v查看安装版本号,出现版本号即表示安装完成 

MicrosoftMPI:Download Microsoft MPI v10.1.2 from Official Microsoft Download Center

 点击Download后全选两个文件下载,然后安装

 在cmd中用set msmpi命令查看是否安装完成,显示出路径就表示安装完成,记住这些路径 

 2.配置编译器和库

安装完编译器之后要先配置好环境变量,可以直接在win11的搜索栏搜索打开

 点击环境变量进入编辑

 在系统变量中选择path,然后点击编辑

 

 

挑两个空白的行填入路径 

VScode需要用到的插件有这两个,C/C++和Cunner

  

我们直接对Coderunner进行扩展设置,在setting.json中编辑

注释掉原来的这两行,新增加两行,注意替换成自己的路径,替换代码如下

"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt -fopenmp -l msmpi -L \"C:\\Program Files (x86)\\Microsoft SDKs\\MPI\\Lib\\x64\" -I \"C:\\Program Files (x86)\\Microsoft SDKs\\MPI\\Include\" && mpiexec -n 8 $fileNameWithoutExt",
        
"cpp": "cd $dir && g++ $fileName -o $fileNameWithoutExt -fopenmp -l msmpi -L \"C:\\Program Files (x86)\\Microsoft SDKs\\MPI\\Lib\\x64\" -I \"C:\\Program Files (x86)\\Microsoft SDKs\\MPI\\Include\" && mpiexec -n 8 $fileNameWithoutExt",

 然后按住ctrl+shift+p,搜索C/C++,找到编辑配置

 在左侧找到编辑配置JSON

打开json文件在includepath中添加你的mpi的include路径

 用绝对路径,要注意替换成你的安装路径

3.测试

#include <stdio.h>
#include <mpi.h>
int main(){
    MPI_Status status;
    char string[]="xxxxx";
    int myid;
    MPI_Init(NULL,NULL);
    MPI_Comm_rank(MPI_COMM_WORLD,&myid);
    if(myid==2)
        MPI_Send("HELLO",5,MPI_CHAR,7,1234,MPI_COMM_WORLD);
    if(myid==7){
        MPI_Recv(string,5,MPI_CHAR,2,MPI_ANY_TAG,MPI_COMM_WORLD,&status);
        printf("Got %s from P%d, tag %d\n",string,status.MPI_SOURCE,status.MPI_TAG);
        fflush(stdout);
    }
    MPI_Finalize();
}

这里准备了一个hello程序测试

成功运行 

4.修改多线程

修改线程数,要在Coderunner的setting.json文件中修改,修改我们刚刚修改的两个语句的后缀,这里默认了8个线程

  • 12
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

哆啦叮当

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值