(写来骗浏览量访问量的,没什么技术含量)
环境配置:
1.gcc g++ gdb
1.1检查是否安装:
which gcc
which g++
which gdb
能查到说明有
1.2安装教程:(我因为之前就安好了所以没有靠谱的教程,但是网上有大把)
2.安装mpich
2.1: 下载链接:http://www.mpich.org/static/downloads/3.1/mpich-3.1.tar.gz
2.2:如果你用的虚拟机且文件在主机上且不会挂载共享文件夹:挂载方法:https://blog.csdn.net/wy_1997/article/details/89929721
(虽然现在是递归的解决问题但总有一天你会发现你电脑上什么都已经装好了)
2.3:解压文件:tar -zxvf 文件名.tar.gz -C 解压路径
2.4:进入目录下执行命令(下面是三条):
./configure --prefix=/home/lvlv/mpi_install --disable-f77 --disable-fc
make
make install
2.5:
更改etc/bashrc
在文件后加上:
export MPI_ROOT=你的路径/lvlv/mpi_install
(注意这里你可以看到你压缩包那里文件夹里多了文件夹/lvlv/mpi_install 路径注意不要写错)
export PATH=$MPI_ROOT/bin:$PATH
3.环境测试代码:holle.c
#include "mpi.h"
#include <stdio.h>
int main(int argc,char* argv[])
{
int myid,numprocs;
int namelen;
char processor_name[MPI_MAX_PROCESSOR_NAME];
MPI_Init(&argc,&argv);
MPI_Comm_rank(MPI_COMM_WORLD,&myid);
MPI_Comm_size(MPI_COMM_WORLD,&numprocs);
MPI_Get_processor_name(processor_name,&namelen);
printf("Hello World! Process %d of %d on %s\n",myid,numprocs,processor_name);
MPI_Finalize();
return 0;
}
执行:mpicc hello.c -o hello
mpirun -n 4 ./hello
测试显示:
4.并行奇偶交换排序代码:
https://blog.csdn.net/Splend520/article/details/78815968
链接里的代码测试过没有问题~
5.错误及解决方法:
5.1执行命令
mpirun -n 4 hello
出现错误:
分析:找不到文件,把hello改成./hello