栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > .Net

MPICH2安装&Visio Studio环境配置

.Net 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

MPICH2安装&Visio Studio环境配置

MPICH2安装

下载Mpich2
Windows系统选择 mpich2-1.4.1p1-win-x86-64.msi(64位),或者 mpich2-1.4.1p1-win-ia32.msi(32位),建议各位道友选择64位下载,同时需要编制64位应用程序。 其他操作系统的可以选择mpich2-1.4.1p1.tar.gz。 如果要使用其他版本的MPICh2,可以点击该页面上的“parent directory”进行查找。

这里题主安装的是window10 64位。

双击下载好的msi一路next。
可参考【mpich2】图文教程:mpich2的安装、配置、测试、vs配置、命令行测试(没有使用)
讲解得非常详细,此处不再赘述。

VS环境配置

若上面步骤的环境配置出现了不可言说的bug,可参考VS2019配置MPI环境

可能出现的bug

(a)双击下载的msi文件,出现以下提示

可参考vs应用程序安装问题:This setup requires the .NET Framework version 2.0. Please install the .NET Framework…
NET Framework 3.5安装出错误解决

(b)在VS中配置好并行程序运行环境后,执行代码报错


关于这个问题,网友们有不同的解决方式,我挨个儿试了一下,都不行。
我的解决方法就是将程序调试模式从debug切换为release,就可以了。。。

Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。Release
称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。

深入理解可参看Visual Studio下Debug和Release区别

(c)执行MPI程序时,报错。

#include 
#include 
int main(int argc, char* argv[])
{
        // 定义变量
        int myrank, nprocs;
        // 初始化MPI环境
        MPI_Init(&argc, &argv);
        // 获取当前进程在通信器MPI_COMM_WORLD中的进程号
        MPI_Comm_size(MPI_COMM_WORLD, &nprocs);
        MPI_Comm_rank(MPI_COMM_WORLD, &myrank);
        printf("Hellow, world! %dth of totalTaskNum = %dn", myrank, nprocs);
        MPI_Finalize();
        return 0;
}


多半是因为环境配置环节出了问题,重新配置VS环境即可。

(d)由上图可知,我们运行的是MPI并行程序,但是控制台只输出了一条结果,并不是我们期待的那样输出了多条语句。
这时可以利用wmpiexec来执行代码。

可能有的机器使用这种方式跑出来的程序不会输出任何结果就结束了,可以换成项目文件下的release>X64>EXE文件执行(记得下图换成x86)。

总结

因为科学计算导论需要使用,所以去安装了MPI。每次安装陌生软件最头疼的就是环境配置,一是不熟悉,二是配置环节稍微出了点问题,就得掉头重来。
不过,一路走了过来,就会熟悉很多了。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/985362.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号