初学并行计算总结[1]--并行环境与命令

初学并行计算总结[1]--并行环境与命令

并行计算环境

我的并行计算环境是在小型超算集群中。本地环境为Windows10,运行环境为Linux-Centos7。这里使用了两个强大的软件远程连接到运行环境进行操作—XShell与Xftp。Xshell不仅可以在windows环境中远程连接到Linux环境,也可以在Windows本地上控制多台虚拟机。Xftp是一种基于SFTP和FTP的文件传输软件。它可以在Window与Linux之间跨平台传输文件。

并行命令

并行编程有基于共享存储环境的POSIX线程–Pthread编程、OpenMP并行编程两种标准。还有分布存储系统的并行编程,这里重点讨论基于消息传递的MPI编程。

Pthread标准

1.编译命令
g++ -o hello.o hello.cpp -lpthread
或者intel的编译器
icpc -pthread -o hello.o hello.cpp
2.执行命令
./hello.o

MPI

1.编译命令
mpicxx -g -Wall -o mpi.o mpi.cpp
或者
mpic++ -i_dynamic -o mpi.o mpi.cpp
我一般使用前者
2.执行命令
mpirun -np number ./mpi.o
3.PBS文件执行
PBS是为了满足于异构计算网络的软件包。在集群环境中可以用于灵活的批处理。这里通过编写PBS文件提交作业到队列中,集群会根据队列排序依次执行作业,有效分配资源,避免资源竞争。
PBS脚本的编写

	#!/bin/bash
	#PBS -N 作业名称
	#PBS -I 申请资源(nodes=1:ppn=4) //使用的节点数和每个节点能跑多少核
	#PBS -j oe //标准错误输出与标准输出合并

	cd $PBS_O_WORKDIR//到工作目录下
	procs = $(cat $PBS_NODEFILE | wc -l)//获取可调用的核数
	mpirun -np $procs -machinefile $PBS_NODEFILE ./mpi.o//支持多节点执行MPI程序

提交作业

qsub MPI.pbs

查看作业

qstat -R
//或者
qstat -f (jobid)

总结

这次主要记录下Pthread编译命令和MPI的编译命令与执行命令。主要是记录下有关PBS文件的编写。在集群中多节点运行MPI的文件时,需要加上-machinefile。想要多了解PBS编程使用的可以去Dr. Yuan的博客了解下,我也从那里了解了不少。
有关OpenMP编程了解有些少。这里写下OpenMP在intel编译器中的编译命令
icpc -openmp -o test.o test.cpp
下回会写一段Pthread的编程例子和心得。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值