Ubuntu下Openmpi安装_TaoistQu的博客-程序员宅基地

技术标签: 分布式计算  深度学习  

1、安装包下载

openmpi下载路径

2、OpenMPI手动编译配置安装

  1. 解压
~/installPackage$ tar -zxvf openmpi-4.0.4.tar.gz 
  1. 编译安装
$ cd /home/qulei/installPackage/openmpi-4.0.4/
$ ./configure --prefix=$HOME/opt/openMpi
$ make all
$ sudo make install
  1. 配置环境变量
$ cd 
$ vim .bashrc 
export PATH=$PATH:/home/qulei/opt/openMpi/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/qulei/opt/openMpi/lib

4.查看版本

$ mpiexec --version
mpiexec (OpenRTE) 2.1.1

Report bugs to http://www.open-mpi.org/community/help/

$ mpirun --version
mpirun (Open MPI) 2.1.1

Report bugs to http://www.open-mpi.org/community/help/

3、测试

建立一个hello.c文件进行环境测试。具体测试可以参考:MPI Hello World

#include <mpi.h>
#include <stdio.h>

int main(int argc, char** argv) {
    
    // Initialize the MPI environment
    MPI_Init(NULL, NULL);

    // Get the number of processes
    int world_size;
    MPI_Comm_size(MPI_COMM_WORLD, &world_size);

    // Get the rank of the process
    int world_rank;
    MPI_Comm_rank(MPI_COMM_WORLD, &world_rank);

    // Get the name of the processor
    char processor_name[MPI_MAX_PROCESSOR_NAME];
    int name_len;
    MPI_Get_processor_name(processor_name, &name_len);

    // Print off a hello world message
    printf("Hello world from processor %s, rank %d out of %d processors\n",
           processor_name, world_rank, world_size);

    // Finalize the MPI environment.
    MPI_Finalize();
}

用 mpicc hello.c -o test编译文件:

code$ mpicc hello.c  -o hello

执行:

code$ mpirun -np 2 ./hello
Hello world from processor qulei-System-Product-Name, rank 0 out of 2 processors
Hello world from processor qulei-System-Product-Name, rank 1 out of 2 processors

以上 -np 2 表示用两个线程执行程序

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_36747735/article/details/106970239

智能推荐

我的EMACS配置文件,功能简单-程序员宅基地

;;左侧显示行号(global-linum-mode t);; 在状态栏显示日期时间(setq display-time-day-and-date t)(display-time);; 不要闪烁光标(blink-cursor-mode -1);;不显示GNU emacs启动界面(setq inhibit-startup-message t)

html5 去掉手机顶部,科技常识:HTML5去掉输入框type为number时的上下箭头的实现方法..._大脸长在小胸的博客-程序员宅基地

今天小编跟大家讲解下有关HTML5去掉输入框type为number时的上下箭头的实现方法 ,相信小伙伴们对这个话题应该有所关注吧,小编也收集到了有关HTML5去掉输入框type为number时的上下箭头的实现方法 的相关资料,希望小伙伴们看了有所帮助。html5中 input type="number"时 右边会有一个上下小箭头 介绍去掉这个箭头的方法 完成浏览器的兼容 页面效果的统一一。公共样式..._html隐藏输入框的步进箭头

计算机英语中文参考书,推荐几本计算机英语书?-程序员宅基地

计算机英语简 介============================语言是交流的工具,信息的载体。英语作为跨文化交际的通用语言,对计算机专业的学生尤为重要。因此计算机英语是计算机类学生的必修课程。狭义地讲,计算机英语就是用来描述计算机领域各种技术概念及过程的英语词汇、表达方式以及篇章的总称。一般说来,学习计算机英语,就是学习用英语听、说、读、写计算机相关知识。对高职高专层次的学生而言,计算机英...

Git failed with a fatal error. error: open("MyUtil/.vs/MyUtil/v16/Server/sqlite3/db.lock"):-程序员宅基地

Visual Studio 刚创建的项目提交到GitHub报错:Git failed with a fatal error. error: open("MyUtil/.vs/MyUtil/v16/Server/sqlite3/db.lock"): Permission denied fatal: Unable to process path MyUtil/.vs/MyUtil/v16/Serv..._git failed with a fatal error. error: open

oracle和sybase一些函数区别(以后逐步追加)_sybase nvl-程序员宅基地

1、oracle中的nvl('','')和sybase中的isnull('','')2、sybase无_sybase nvl

vscode插件失效_vetur回退版本-程序员宅基地

今天发现vscode的vetur不提示了,昨天用的好好的,今天就不行了,然后,处理方法如下1.回退版本2.禁止vscode自动更新插件_vetur回退版本

随便推点

windows开启休眠_windows休眠命令-程序员宅基地

1、以管理员身份运行cmd2、输入命令:powercfg /a查看电脑支持的睡眠模式,是否休眠未打开3如果你显示的和上图一样,则继续输入命令:powercfg -h on完成后,按↑键,调出刚才执行的 powercfg /a命令,确保已经打开如本来就是打开的可以直接跳到步骤2..._windows休眠命令

国外部分音乐人工智能/音乐科技研究机构科研项目简介_斯坦福大学 ccrma 音乐和声学计算机研究中心-程序员宅基地

本文对国外部分音乐人工智能/音乐科技科研机构的科研项目与教学课程设置作简要介绍,包括英国伦敦玛丽女王大学(Queen Mary)的数字音乐中心(C4DM)、西班牙巴塞罗那庞培法布拉大学(UPF)的音乐技术研究组(MTG)、美国斯坦福大学的音乐与声学计算机研究中心(CCRMA)以及法国的声学/音乐协调研究所(IRCAM)。_斯坦福大学 ccrma 音乐和声学计算机研究中心

关于晶振_8m和32.768k晶振的区别-程序员宅基地

为什么实时时钟的晶振都是32.768KHZ频率我们都知道实时时钟就应该用32.768KHZ的晶振,但是,为何用32.768而不是用其他频率呢? 振荡电路用于实时时钟RTC,对于这种振荡电路只能用32.768KHZ 的晶体晶体被连接在OSC3 与OSC4 之间而且为了获得稳定的频率必须外加两个带外部电阻的电容以构成振荡电路。32.768KHZ的晶振产生的振荡信号经过石英_8m和32.768k晶振的区别

Podspec语法_pod subspecs-程序员宅基地

前言​ 长时间不写Podspec文件,容易忘记里面的一些属性含义,所以本文把 官方Podspec语法v1.9.0 翻译出来并且加上了一部分自己的理解,方便后续在用到的时候可以直接拿过来看。CocoaPods版本升级后会保持对本文进行更新。一、Root specification相关root规范存储了相关库特定版本的信息。下面的属性只能写在root规范上,而不能写在“sub-spec”上。1、必须的字段. namespec.name = 'AFNetworking'pod search 搜_pod subspecs

刚去公司,发现node版本过高,如何将node版本降低?_降低node版本到固定版本_是阿瑶呀~的博客-程序员宅基地

我们可以安装nvm,node版本管理器来实现。1、nvm是什么?nvm(node.js version management),是一个nodejs的版本管理工具。nvm和n都是node.js版本管理工具,为了解决node.js各种版本存在不兼容现象可以通过它可以安装和切换不同版本的node.js。2、nvm下载可点击下面的链接:githubhttps://github.com/coreybutler/nvm-windows/releases下载最新版本,我下载的是windows版本。打开网址_降低node版本到固定版本

C. Sweets Eating-程序员宅基地

题目:C. Sweets Eating总结:这题可以先举几个栗子,然后就可以找到其中的规律了,利用前缀和。#include <bits/stdc++.h>using namespace std;typedef long long ll;const int N = 1e6+10;int n,m;ll sum[N],a[N];int main(){ scanf(...