串行计算与并行计算
1.串行计算
串行计算是指在单个计算机(拥有单个中央独立单元) 上执行软件写操作。CPU 逐个使用一系列指令解决问题。
为了加快处理速度,在原有的串行计算的基础上演变出并行计算
2.并行计算
指同时使用多种计算机资源解决计算问题的过程。
为执行并行计算,计算资源应包括一台配有多处理器的计算机、一个与网络相连的计算机专有编号,或者两者结合。
并行计算的主要目的用于解决大型且复杂的计算问题,还可以利用非本地资源,可以使用多台计算机集合在一起共同处理、计算机来取代昂贵的大型计算机或大型服务器
二、MPI
并行计算代表:Messages Passing Interface
1.MPI 本身并非一个软件,它仅仅是一个规格很严密的通讯标准。其主要功能是在处理并行运算之间节点的资料交换。或者说MPI 属于并行计算
2.MPI 的主要三个方面
1)MPI 作为一个库存在,而非一种软件或开发语言
2)MPI 是一种规范或标准的代表,所有的并行计算机制造商都可提供对MPI 的支持。
3)MPI 是一种消息传递编程模型,并成为消息传递编程模型的代表
三、高性能集群
实现高性能集群主要目的是将多台计算机的计算能力合并到一起, 使用并行计算软件(MPICH)实现并行计算从而实现一个超越单台计算机计算能力的强力系统。
实际上MPICH 就是符合MPI 标准通讯协议的一套软件语言的函数库
四、HPC的实现
1.设定节点名
实验采用在同一个网络段的三台虚拟机,编辑每台主机的/etc/hosts:
192.168.1.1 server
192.168.1.2 node1
192.168.1.3 node2
注:其他两台机器可通过scp传输该文件:scp root@server:/etc/hosts /etc
2.定义MPICH安全通信(通过ssh)
server上配置:
cd ~
ssh-keygen -t rsa (一路回车)
ssh-copy-id node1
ssh-copy-id node2
测试ssh无需口令就可连接成功
 
安装软件
在每个节点上:
1)使用winscp将mpich-3.1.3.tar.gz上传至三台虚拟机
2)在每台虚拟机上安装编译MPICH所需的工具
yum install gcc gcc-gfortran gcc-c++ -y
3)解压软件包:tar xvfz mpich-3.1.3.tar.gz
         编译:cd mpi-3.1.3
               
./configure && make && make install
4.在每个节点上创建HPC所需的主机
vim /root/hpcnode
server
node1
node2
注:其他两台机器可通过scp传输该文件:scp root@server:/root/hpcnode /root
5.在server端进行测试MPICH
mpiexec -n 6 -machinefile /root/hpcnode /root/mpich-3.1.3/examples/cpi
注:-n :处理次数;-machinefile:指定节点文件;结果可见处理进程被平均分配至集群内的每台机器上
 

高性能集群(HPC的更多相关文章

  1. 基于开源软件构建高性能集群NAS系统,包括负载均衡(刘爱贵)

    大数据时代的到来已经不可阻挡,面对数据的爆炸式增长,尤其是半结构化数据和非结构化数据,NoSQL存储系统和分布式文件系统成为了技术浪潮,得到了长足的发展.非结构化数据目前呈现更加快速的增长趋势,IDC ...

  2. 部署Hadoop2.0高性能集群

    废话不多说直接实战,部署Hadoop高性能集群: 拓扑图: 一.实验前期环境准备: 1.三台主机配置hosts文件:(复制到另外两台主机上) [root@tiandong63 ~]# more /et ...

  3. 高性能集群软件Keepalived(1)

    1介绍 Keepalived是linux下一个轻量级的高可用解决方案,与HeartBeat,RoseHA实现的功能类似,但是还是有差别.HeartBeat是一个专业的功能完善的高可用软件,它提供了HA ...

  4. 搭建 MySQL 高可用高性能集群

    什么是MySQL集群,什么是MySQL集群,如果你想知道什么是MySQL集群,我现在就带你研究. MySQL 是一款流行的轻量级数据库,很多应用都是使用它作为数据存储.作为小型应用的数据库,它完全可以 ...

  5. 高性能集群软件keepalived

     Keepalived介绍 以下是keepalive官网上的介绍.官方站点为http://www.keepalived.org.         Keepalived is a routing sof ...

  6. LVS+Keepalived+Squid+Nginx+MySQL主从高性能集群架构部署方案

    方案一,在tomcat的workers.properties里面配置相关条件 worker.tomcat.lbfactor= worker.tomcat.cachesize= worker.tomca ...

  7. 转- 集群NAS技术架构

    集群NAS技术架构 标签: 集群存储负载均衡扩展服务器网络 原贴:http://blog.csdn.net/liuaigui/article/details/6422700 作者刘爱贵 1 什么是集群 ...

  8. 每天一点存储知识:集群Nas

    什么是集群Nas 集群是由多个节点构成的一种松散耦合的计算节点集合,协同起来对外提供服务.集群主要分为高性能集群HPC,高可用集群HAC和负载均衡集群LBC.集群Nas是指协同多个节点(通常称为Nas ...

  9. 什么是集群(cluster)

    1.集群 1.1 什么是集群 简单的说,集群(cluster)就是一组计算机,它们作为一个总体向用户提供一组网络资源.这些单个的计算机系统就是集群的节点(node).一个理想的集群是,用户从来不会意识 ...

随机推荐

  1. 最新 上海轻轻java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.上海轻轻等10家互联网公司的校招Offer,因为某些自身原因最终选择了上海轻轻.6.7月主要是做系统复习.项目复盘.Leet ...

  2. java后端通过request对象获取请求的ip地址工具类

    package cn.zgjkw.battalion.util; import org.apache.log4j.Logger; import javax.servlet.http.HttpServl ...

  3. [转帖]时序数据库技术体系 – InfluxDB TSM存储引擎之数据写入

    时序数据库技术体系 – InfluxDB TSM存储引擎之数据写入 http://hbasefly.com/2018/03/27/timeseries-database-6/  2018年3月27日  ...

  4. LinkedList源码解析(JDK8)

    ArrayList的增删效率低,但是改查效率高. 而LinkedList正好相反,增删由于不需要移动底层数组数据,其底层是链表实现的,只需要修改链表节点指针,所以效率较高. 而改和查,都需要先定位到目 ...

  5. java当中JDBC当中请给出一个sql server的dataSource的helloworld例子

     [学习笔记] 4. sql server的dataSource的helloworld: import java.sql.*;import javax.sql.*;import net.sourcef ...

  6. 在vue中使用swiper组件

    第一步:在终端的项目根目录下载安装swiper: cnpm/npm install vue-awesome-swiper --save; 第二步:在程序入口文件main.js中引用: import V ...

  7. 整合MyBatis

    配置数据源相关属性(见前一章节 DataSource配置) 引入依赖 <dependency> <groupId>org.mybatis.spring.boot</gro ...

  8. PHP Math常量

    常量名 常量名 常量值 PHP M_E e 2.7182818284590452354 4 M_EULER Euler 常量 0.57721566490153286061 5.2.0 M_LNPI l ...

  9. 手把手教小白安装Erlang

    Erlang(['ə:læŋ])是一种通用的面向并发的编程语言,它有瑞典电信设备制造商爱立信所辖的CS-Lab开发,目的是创造一种可以应对大规模并发活动的编程语言和运行环境. Erlang官网:htt ...

  10. git 讲解

    部署结构: - Git版本控制 - Git的使用 - 快速控制服务器代码版本 - 有利于团队协作 - 安装流程 现有代码 -> 编辑区 -> 寄存区 -> 版本库 1. 安装GIT ...