MPI学习之路(一)
来源:互联网 发布:ubuntu 文件夹root权限 编辑:程序博客网 时间:2024/05/24 00:35
今天不写C++相关的东西,来分享一下MPI。随着机器学习和分布式计算逐渐流行,这个东西也开始被人关注得多了。MPI不是一种编程语言,也不是专门只某个库,而是一套标准。这套东西专门用于多进程的通信,用于构建多进程并行计算的模型,在HPC领域中是一项极其重要的技术。总的来说,MPI入门不是很难,因为很多东西都是封装好了直接使用现成的方法就行,不过MPI的优化却有很多值得挖掘的地方。我也会慢慢写出来分享,同时自己也会重新学习这部分内容,加深对这门技术的理解。
MPI目前支持C/C++/FORTHAN,前面两个估计都用过,FORTHAN估计用过的人很少,也是比较古老的东西了,目前这几门语言也是HPC中最常用的语言。下面,展示一个非常简单MPI demo程序,非常经典的hello world。
#include "mpi.h" #include <stdio.h>#include <math.h> int main(){ 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! Process %d of %d on %s\n",myid,numprocs, processor_name); MPI_Finalize();}
上面就是一个非常简单的MPI程序,里面使用最基本的MPI初始化和结束的一些方法,但是还没有涉及到具体的进程数据通信,这个以后会慢慢写出来分享,这个只是作为一个引子先让大家看看MPI的程序到底啥样。
0 0
- MPI学习之路(一)
- Open MPI之旅(一)
- MPI相关(一)
- 并行计算MPI(一):MPI入门
- 并行编程之MPI (一)
- 我的并行计算之路(一)Ubuntu 16.04下的MPI安装
- MPI集体通讯(一)
- MPI学习一 MPI基础及六个接口构成的MPI子集
- MPI学习笔记(1)
- MPI学习笔记(1)
- MPI学习笔记之并行程序概述
- MPI学习笔记之Random Walk 案例
- MPI 学习 -- 高性能计算之并行编程技术 --- MPI并行程序设计 都志辉编著
- MPI编程指南(一)
- 我的并行计算之路(三)MPI集合通信之Scatter和Gather
- 我的并行计算之路(四)MPI集合通信之Reduce和Allreduce
- mpi学习日志(1):mpi与python
- MPI学习五 组通信MPI程序设计
- 解决常见接口跨域问题
- Tensorflow minist单层感知机
- LeetCode No.7 Reverse Integer
- 2048格子位置判定
- ES6 学习笔记之一《变量的解构赋值》
- MPI学习之路(一)
- yii2学习笔记——自定义报错机制
- Android数据存储-->SharedPreferences
- Java基础--IO流
- Angular2-primeNG 文件上传模块FileUpload
- Repeater绑定dictionary数据源代码及报错解决
- LeetCode No.9 Palindrome Number
- 校门外的树
- 09-排序2 Insert or Merge (25分)