炼数成金 门户 CUDA 查看内容

ubuntu下安装openmp和mpi环境

2015-9-11 12:38| 发布者: 炼数成金_小数| 查看: 3015| 评论: 0|原作者: 氘氚|来自: 网易博客

摘要: OPENMP 环境:openmp库都是随编译器一起发布的,如果你的程序是源代码编译的,只要编译器支持openmp编译选项就肯定能用。GNU,intel的都支持,包括gcc,gfortran,icc,ifort。如果是GCC,那么编译的命令应该是 gcc -fop ...

测试 服务器

1.进入终端,选择一个自己的目录,安装MPICH2
   运行命令:sudo apt-get install mpich2

2.安装配置文件并且进行设置
   运行命令1:touch mpd.conf
   运行命令2:chmod 600 mpd.conf
   在mpd.conf文件中输入以下文本内容并保存:
   MPD_SECRETWORD=mr.chen

3.开启mpi服务器并且进行编译执行mpi文件
   3.1 开启mpi环境:mpdboot (我没有手动开启,后面的操作也成功)
   3.2 编译mpi文件(-o Hello 指定输出文件的名称):mpicc -o Hello Hello.c
   3.3 执行生成的二进制文件(-np 4:表示用4个进程):mpirun -np 4 ./Hello
   运行结果如下:
   user@ubuntu:~/test_mpi_examples$ mpirun -np 4 ./Hello
Hello world! Processor 0 of 4 on ubuntu
Hello world! Processor 1 of 4 on ubuntu
Hello world! Processor 3 of 4 on ubuntu
Hello world! Processor 2 of 4 on ubuntu

4.关闭mpi服务器
   运行命令:mpdcleanup

附加测试文件(Hello.c):

#include "mpi.h"
#include
#include

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);

fprintf(stderr, "Hello world! Processor %d of %d on %s\n", myid, numprocs, processor_name);

MPI_Finalize();
return 0;
}
OPENMP 环境:openmp库都是随编译器一起发布的,如果你的程序是源代码编译的,只要编译器支持openmp编译选项就肯定能用。GNU,intel的都支持,包括gcc,gfortran,icc,ifort。
如果是GCC,那么编译的命令应该是 gcc -fopenmp -o exefile sourcefile,这里的-fopenmp很重要。

鲜花

握手

雷人

路过

鸡蛋

最新评论

热门频道

  • 大数据
  • 商业智能
  • 量化投资
  • 科学探索
  • 创业

即将开课

热门文章

     

    GMT+8, 2020-1-21 20:36 , Processed in 0.106181 second(s), 23 queries .