国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

基于Intel的并行計算MPI環(huán)境搭建

原創(chuàng)
運維 系統(tǒng)運維
高性能并行計算計算機技術(shù)由于具有巨大的數(shù)值計算和數(shù)據(jù)處理能力,在國內(nèi)外受到高度重視,本文分享了基于Intel的并行計算MPI環(huán)境搭建方法,對此感興趣的朋友多多關(guān)注一下。

MPI是一個庫,而不是一門語言。許多人認為,MPI就是一種并行語言,這是不準(zhǔn)確的。但是,按照并行語言的分類,可以把FORTRAN+MPI或C+MPI看作是一種在原來串行語言基礎(chǔ)之上擴展后得到的,并行語言MPI庫可以被FORTRAN77/C/Fortran90/C++調(diào)用,從語法上說,它遵守所有對庫函數(shù)/過程的調(diào)用規(guī)則,和一般的函數(shù)/過程沒有什么區(qū)別。

MPI已在IBM PC機上、MS Windows上、所有主要的Unix工作站上和所有主流的并行機上得到實現(xiàn)。使用MPI作消息傳遞的C或Fortran并行程序可不加改變地運行在IBM PC、MS Windows、Unix工作站、以及各種并行機上。

高性能并行計算計算機技術(shù)由于具有巨大的數(shù)值計算和數(shù)據(jù)處理能力,在國內(nèi)外受到高度重視,他在科學(xué)研究、工程技術(shù)以及軍事等方面的應(yīng)用,已經(jīng)取得巨大的成就。并行計算就是通過把一個大的計算問題分解成許多彼此獨立且有相關(guān)的子問題,然后把他們散列到各個節(jié)點機上并行執(zhí)行從而最終解決問題的一種方法。

一、安裝環(huán)境

CentOS 6.4 最小化圖形安裝,保證每個節(jié)點的sshd服務(wù)能正常啟動,確保防火墻與selinux已經(jīng)關(guān)閉,所需軟件: Intel_ Fortran,Intel_C++,Intel_ MPI

二、設(shè)置通過主機名無密碼登錄

1、通過主機名訪問

為每個節(jié)點分配IP地址,IP地址***連續(xù)分配,配置/etc/hosts文件,實現(xiàn)IP地址和機器的對應(yīng)解析。可以在所有機器上使用同樣的/etc/hosts 文件,它包含如下形式的內(nèi)容:

  1. 10.12.190.183 dell 
  2. 10.12.190.187 lenovo 
  3. …… 

2、計算節(jié)點之間的無密碼訪問

假設(shè) A(110.12.190.183)為客戶機器,B(10.12.190.187)為目標(biāo)機,加密方式選 rsa|dsa均可以,默認rsa。

  1. #ssh-keygen -t rsa   #使用rsa加密,默認就是rsa加密 

顯示信息如下,遇到系統(tǒng)詢問直接回車即可。

  1. Generating public/private rsa key pair. 
  2. Enter file in which to save the key (/root/.ssh/id_rsa): 
  3. Enter passphrase (empty for no passphrase): 
  4. Enter same passphrase again: 
  5. Your identification has been saved in /root/.ssh/id_rsa. 
  6. Your public key has been saved in /root/.ssh/id_rsa.pub. 
  7. The key fingerprint is: 
  8. b3:8e:87:44:71:67:81:06:d2:51:01:a4:f8:74:78:fd root@kvm.local 
  9. The key's randomart image is: 
  10. +--[ RSA 2048]----+ 
  11. |    .o==oo..     | 
  12. |   . +o.+ o      | 
  13. |  . + o+.o       | 
  14. |   o o.  .       | 
  15. |    ..  S E      | 
  16. |      .  o       | 
  17. |     . ..        | 
  18. |      .o.        | 
  19. |      ...        | 
  20. +-----------------+ 

將會生成密鑰文件和私鑰文件 id_rsa,id_rsa.pub。

將A的~/.ssh/ id_rsa.pub 文件復(fù)制到B機器的 .ssh 目錄, 并 cat id_rsa.pub >> ~/.ssh/authorized_keys,同樣方法,把B的~/.ssh/ id_rsa.pub也復(fù)制到A機器上。

設(shè)置authorized_keys權(quán)限:

  1. #chmod 600 authorized_keys 

設(shè)置.ssh目錄權(quán)限:

  1. #chmod 700 -R .ssh 

如果使用ssh-copy-id命令,可以更方便把本地主機的公鑰復(fù)制到遠程主機的authorized_keys文件上,ssh-copy-id 也會給遠程主機的用戶主目錄(home)和~/.ssh, 和~/.ssh/authorized_keys設(shè)置合適的權(quán)限。

  1. #ssh-copy-id –i ~/.ssh/id_rsa.pub 10.12.190.187 

完成以上操作之后,用戶從本地機器到遠程機器就不需要用密碼了,文件和目錄的權(quán)限千萬別設(shè)置成chmod 777.這個權(quán)限太大了,不安全,數(shù)字簽名也不支持。

也可以用一臺機器生成ssh-keygen,將.ssh目錄連同id_rsa,authorized_keys一起復(fù)制到每個節(jié)點上去。檢查是否可以直接(不需要密碼,詢問時輸入yes回車)登錄其他節(jié)點:

  1. ssh node1 
  2. ssh node2 
  3. ssh node3 
  4. ssh node4 

如能任意兩節(jié)點之間不需要密碼登錄其他節(jié)點則表明配置成功。

三、NFS文件系統(tǒng)的配置

方法示例如下(假設(shè)NFS 服務(wù)器IP 為10.12.190.183,配置需在root用戶下完成):

服務(wù)器端配置方法(下面的配置只在主節(jié)點進行):

1. /etc/exports 文件配置

在文件/etc/exports 中增加以下幾行:

  1. /home/cluster 10.12.190.183(rw,sync,no_root_squash) 
  2. /home/cluster 10.12.190.185(rw,sync,no_root_squash) 
  3. /home/cluster 10.12.190.187(rw,sync,no_root_squash) 

這幾行文字表明NFS 服務(wù)器向IP 地址為10.12.190.183,10.12.190.185,10.12.190.185 的三個節(jié)點共享其/home/cluster目錄,并使這些節(jié)點具有可讀寫權(quán)限。如有更多的節(jié)點可按此方法填寫。

接著執(zhí)行如下命令,啟動端口映射:

  1. # /etc/rc.d/init.d/rpcbind start   (注:在***內(nèi)核中NFS守護進程改為rpcbind,如是舊內(nèi)核啟動NFS守護進程的命令是 service portmapstart) 

***執(zhí)行如下命令啟動NFS 服務(wù),此時NFS 會激活守護進程,然后就開始監(jiān)聽 Client 端的請求:

  1. # /etc/rc.d/init.d/nfs start 
  2. # chkconfig nfs on 

也可以重新啟動Linux 服務(wù)器,自動啟動NFS 服務(wù)。

2、客戶端配置方法(需要在所有子節(jié)點做同樣的配置)

建立與服務(wù)器相同的共享目錄用于共享服務(wù)器文件:

  1. mkdir /usr/cluster 

查看服務(wù)器已有的共享目錄(這步可省略)

  1. showmount -e 10.12.190.183 

通過這條命令我們可以查看IP地址為10.12.190.183的服務(wù)器可以共享的目錄情況。

掛載共享目錄:

  1. mount -t nfs 10.12.190.183:/home/cluster /home/cluster 

這一命令將 NFS 服務(wù)器10.12.190.183上的共享目錄掛載到本地/home/cluster 目錄下。我們也可在所有子節(jié)點的/etc/fstab 文件中輸入以下的代碼,使文件系統(tǒng)在啟動時實現(xiàn)自動掛載NFS:

  1. 10.12.190.183:/home/cluster /home/cluster nfs defaults 0 0 

至此我們已可以實現(xiàn)對 NFS 共享目錄的本地訪問,所有子節(jié)點的/home/cluster 文件夾都共享了NFS 服務(wù)器的同名文件夾的內(nèi)容,我們可以像訪問本地文件一樣訪問共享文件。用戶存放并行程序的文件夾都可以實現(xiàn)NFS 共享,從而避免了每次向各節(jié)點發(fā)送程序副本。

四、安裝Intel_C++

  1. #tar xvzf l_ccompxe_2013.1.117.tgz 
  2. # cd composer_xe_2013.1.117 
  3. #./install.sh 

設(shè)置環(huán)境變量:

  1. #vi /etc/profile 

添加一行source /opt/intel/composer_xe_2013.1.117/bin/iccvars.sh intel64

測試環(huán)境變量設(shè)置:

  1. #which icc 

如果能看到/opt/intel/composer_xe_2013.1.117/bin/intel64/icc,那么就安裝設(shè)置成功了。

五、安裝Intel_Fortran編譯器

  1. #tar fxvz l_fcompxe_2013.1.117.tgz 
  2. # cd l_fcompxe_2013.1.117 
  3. #./install.sh 

設(shè)置環(huán)境變量:

  1. #vi /etc/profile 

添加一行source /opt/intel/composer_xe_2013.1.117/bin/compilervars.sh intel64。

測試環(huán)境變量設(shè)置:

  1. #which ifort 

如果能看到/opt/intel/composer_xe_2013.1.117/bin/intel64/ifort ,那么就安裝設(shè)置成功了。

六、配置安裝Intel_MPI

1、安裝與設(shè)置

安裝前一定要將Fortran編譯器安裝好,c++放到***沒有影響,其它版本MPI就需要先將前2個軟件安裝好,設(shè)置好環(huán)境變量,***在安裝MPI程序,如開源的mpich。

  1. #tar fxvz l_mpi_p_4.1.3.045.tgz 
  2. #cd l_mpi_p_4.1.3.045 
  3. #./install.sh 

設(shè)置環(huán)境變量:

  1. #vi /etc/profile 

添加一行source /opt/intel/impi/4.1.3.045/bin64/mpivars.sh。

測試環(huán)境變量設(shè)置:

  1. #which mpd 
  2. #which mpicc 
  3. #which mpiexec 
  4. #which mpirun 

如果能看到所有命令的路徑說明,安裝設(shè)置成功了。

修改/etc/mpd.conf文件,內(nèi)容為secretword=myword 或MPD_SECRETWORD=myword:

  1. vi /etc/mpd.conf 

設(shè)置文件讀取權(quán)限為只有自己能讀寫:

  1. chmod 600 /etc/mpd.conf 

非root用戶在家目錄創(chuàng)建內(nèi)容相同的.mpd.conf,每個節(jié)點都要添加:

創(chuàng)建主機名稱集合文件/root/mpd.hosts:

  1. #vi mpd.hosts 

文件內(nèi)容如下:

  1. dell    #主機名1 ,(主機名:數(shù)字 可以指定節(jié)點開啟的進程數(shù) dell:2) 
  2. lenovo  #主機名2  

在協(xié)處理器上***運行MPI應(yīng)用之前,請將MPI庫復(fù)制到該系統(tǒng)的所有節(jié)點以下目錄。

  1. # scp /opt/intel/impi/4.1.3.045/mic/bin/* dell:/bin/ 
  2. mpiexec                      100%  1061KB   1.0MB/s  00:00 
  3. pmi_proxy                    100%  871KB   871.4KB/s  00:00 
  4. …… 
  5. #scp /opt/intel/impi/4.1.3.045/mic/lib/* dell:/lib64/ 
  6. libmpi.so.4.1                  100%  4391KB   4.3MB/s   00:00 
  7. libmpigf.so.4.1                 100%  321KB   320.8KB/s  00:00 
  8. libmpigc4.so.4.1               100%  175KB    175.2KB/s  00:00 
  9. …… 
  10. # scp /opt/intel/composer_xe_2013_sp1.0.080/compiler/lib/mic/* dell:/lib64/ 
  11. libimf.so                      100%  2516KB   2.5MB/s   00:01 
  12. libsvml.so                     100%  4985KB   4.9MB/s   00:01 
  13. libintlc.so.5                    100%  128KB   128.1KB/s   00:00 
  14. …… 

以上是intel官方文檔的操作步驟,個人感覺比較麻煩,沒有采用這種方法。

http://software.intel.com/en-us/articles/using-the-intel-mpi-library-on-intel-xeon-phi-coprocessor-systems

我使用的是將/opt設(shè)置成nfs共享,然后掛載到每個節(jié)點下的相同目錄,設(shè)置一下環(huán)境變量就可以了。服務(wù)器端一定要將Intel_ Fortran,Intel_C++,Intel_ MPI全部安裝上,各個節(jié)點只需要MPI就可以了,服務(wù)器端將程序編譯好后,分發(fā)給各個節(jié)點,然后這個程序就可以通過MPI接口,進行并行運算了。

2、MPI使用方法

MPI采用mpd服務(wù)來對進程進行管理,使用mpiexec或mpirun運行mpi程序。

啟動單機上的mpd服務(wù):

  1. # mpd & 

查看mpd服務(wù):

  1. # mpdtrace  查看主機名
  2. # mpdtrace -l  查看主機名和端口號 

關(guān)閉mpd進程管理:

  1. #mpdallexit 

測試mpi程序,編譯mpi文件(-o Hello 指定輸出文件的名稱):

  1. #mpicc -o Hello Hello.c   //生成可執(zhí)行文文件Hello 
  2. #mpicc cpi.c           //默認輸出文件名a.out 
  3. #mpdrun -np 4 ./a.out   //-n或-np啟動的進程數(shù) 
  4. #mpiexec [-h or -help or --help]   //查看幫助文件 

啟動集群上的mpd服務(wù):

 

  1. # mpdboot -n process-num -f mpd.hosts 

啟動 process-num個進程,mpd.hosts是前面創(chuàng)建的文件。

mpi默認是使用ssh來登陸集群里的其他機器,也可以使用rsh來登陸集群里的其他機器來啟動mpd服務(wù)。

只要使用-rsh選項就可以指定用ssh或rsh:

  1. #mpdboot --rsh=rsh -n process-num -f hostfile 
  2. 或#mpdboot --rsh=ssh -n process-num -f hostfile 

關(guān)閉mpd服務(wù):

  1. #mpdallexit 

使用MPIEXEC|MPIRUN來執(zhí)行mpi任務(wù):

  1. #mpiexec -np 4 ./a.out    //a.out所有節(jié)點在相同的路徑下,需都有a.out文件 
  2. 或mpiexec -machinefile filename -np 4 ./a.out 

http://blog.sina.com.cn/s/blog_605f5b4f0100sw3j.html

運行結(jié)果如下:

  1. [root@kvm ~]# mpiexec -np 4 ./a.out 
  2. Process 0 of 4 is on dell 
  3. Process 2 of 4 is on dell 
  4. Process 3 of 4 is on kvm.local 
  5. Process 1 of 4 is on kvm.local 
  6. pi is approximately 3.1415926544231274, Error is 0.0000000008333343 
  7. wall clock time = 0.037788 

注意:以上的環(huán)境變量設(shè)置好后都需要重啟,或者使用source命令重新執(zhí)行一下文件。

責(zé)任編輯:黃丹 來源: 投遞
相關(guān)推薦

2011-08-29 10:40:02

浪潮英特爾并行計算

2011-04-21 09:13:14

并行計算

2010-03-22 14:45:40

云計算

2011-04-20 17:15:21

并行計算

2014-04-24 10:25:15

2021-06-01 05:51:37

云計算并行計算分布式計算

2012-08-17 09:32:52

Python

2009-12-18 09:38:27

.NET 4.0并行計

2010-03-19 17:23:45

云計算

2019-04-18 09:15:05

DaskPython計算

2023-10-30 08:57:19

.Net開發(fā)并行計算

2010-06-11 08:52:17

并行計算

2017-04-24 12:07:44

Spark大數(shù)據(jù)并行計算

2010-03-11 15:23:44

Visual Stud

2010-06-10 08:37:04

并行計算

2010-04-21 09:23:09

.NET 4

2024-10-21 16:54:43

NumPyPython并行計算

2012-12-18 15:33:44

遞歸數(shù)據(jù)并行計算

2022-07-08 10:59:32

深度學(xué)習(xí)計算

2016-10-25 16:38:32

天云軟件云計算張福波
點贊
收藏

51CTO技術(shù)棧公眾號

日韩在线精品| 欧美一区二区综合| 国产成人一区二| 日本在线观看免费视频| 欧美a级大片在线| 91丨国产丨九色丨pron| 久久久久久久久电影| 久久视频免费在线| 男男gay免费网站| 欧美女子与性| 日韩免费大片| 99热在线成人| 欧美影院三区| 黄色av日韩| 蜜臀久久99精品久久久久宅男| 国产成人精品aa毛片| 亚洲国产婷婷综合在线精品| 欧美国产视频一区二区| 黄a免费视频| 日本成人中文| 欧美国产乱子伦| 97精品国产97久久久久久| 黄色在线视频观看网站| 91九色porn在线资源| 禁果av一区二区三区| 制服丝袜av成人在线看| 黄动漫在线免费观看| 老司机精品福利在线观看| 成人在线黄色电影| 精品电影一区二区| 色在线中文字幕| yellow中文字幕久久| 日韩精品三级| 1769国产精品| 香蕉综合视频| 国产一级特黄a大片99| 在线成人亚洲| 一本久道久久综合| 91小视频免费看| h片免费观看| 色琪琪一区二区三区亚洲区| a天堂中文在线官网在线| 亚洲激情免费观看| 国产资源一区| 国产99久久精品一区二区 夜夜躁日日躁 | 亚洲精品中文字幕乱码三区不卡| 麻豆成人综合网| 欧美色图另类小说| 亚洲影院免费观看| 秋霞午夜在线观看| 亚洲美女性生活视频| 一区三区自拍| 91九色视频在线| 日本一区中文字幕| 日韩欧美一区二| 亚洲一区二区av在线| 麻豆系列在线观看| 日韩亚洲欧美中文高清在线| 国内精品久久久久久99蜜桃| 免费成人深夜夜行视频| 国产99一区视频免费| 天堂在线看视频| 欧美一区二区在线免费播放 | 亚洲第一视频在线观看| 99这里只有精品视频| 狠狠色综合欧美激情| 大尺度一区二区| 中文字幕在线二区| 日韩电影中文 亚洲精品乱码| 高清一区二区三区| 国偷自产av一区二区三区小尤奈| 成人app下载| 国产香蕉视频在线看| 久久天天躁狠狠躁老女人| 99视频精品全国免费| 久久综合久久网| 在线免费观看成人短视频| 欧美黄页免费| 色综合久久99| 91国拍精品国产粉嫩亚洲一区| 91精品国产麻豆国产自产在线 | 国产女人水真多18毛片18精品视频 | 久久成人综合视频| 国产精品一国产精品| 国产一区一区三区| 天天综合天天综合色| 精品极品在线| 国产精品久久久久免费a∨大胸| 日本不卡视频在线| ga∨成人网| 久热99视频在线观看| 日韩影院免费视频| 超碰在线94| 久久精品欧美视频| 久久一区欧美| 色视频免费在线观看| 久久久人成影片一区二区三区观看| 毛片av一区二区三区| 日韩子在线观看| 国产原创欧美精品| 国产精品久久久久久久久免费丝袜 | 成人自拍视频网| 久久久久se| 懂色av一区二区三区| 国产suv精品一区| 欧美又粗又长又爽做受| 日韩欧美区一区二| 亚洲天堂偷拍| 黄页视频在线观看| 久久久久久中文字幕| 成人深夜福利app| 91福利区在线观看| 精品人伦一区二区三区| 亚洲蜜桃精久久久久久久| 欧美aaa级| 久久观看最新视频| 亚洲激情成人网| 青青草97国产精品免费观看| 麻豆tv入口在线看| 国产一区二区免费在线观看| 大荫蒂欧美视频另类xxxx| 亚洲欧美成人vr| 搡女人真爽免费午夜网站| 久久久精品国产| av不卡免费电影| yiren22亚洲综合| 欧美一区二区三区综合| 亚洲精品视频在线播放| 激情伊人五月天久久综合| 99在线视频影院| 欧美亚洲一级二级| 日韩欧美一级片| 三级亚洲高清视频| 午夜伦理在线视频| 天堂一区二区三区| 日韩精品在线观看一区| 国产成人h网站| 亚洲精品777| 久久久久久久久久久久久久国产| 欧美成人免费全部| 亚洲国产精品99久久久久久久久| 黑色丝袜福利片av久久| 日韩欧美亚洲| 国产精品国产精品国产专区蜜臀ah | 51精品国产| 波多野结衣在线中文| 国产精品丝袜视频| 91久久精品一区二区| 亚洲欧美成人| 高h视频在线播放| 免费看一级大黄情大片| 久久久中文字幕| 欧美日韩亚洲精品内裤| 国产精品普通话对白| 最新欧美色图| 欧美三级理论片| 成人av在线天堂| 亚洲第一在线视频| 99久久亚洲一区二区三区青草 | 毛片一区二区三区| 主播大秀视频在线观看一区二区| 日本女优爱爱视频| 国产欧美精品日韩精品| 欧美日韩一区小说| 懂色av中文字幕一区二区三区| www.成人网| av网站在线免费播放| 天天成人综合网| 97在线观看免费| 欧美日韩一区久久| 国产一区二区伦理| 在线亚洲a色| 成年人网站在线| 亚洲色成人一区二区三区小说| 男人资源在线播放| 91在线高清视频| 欧美另类变人与禽xxxxx| 首页国产欧美日韩丝袜| 97成人在线| 制服国产精品| 亚洲蜜臀av乱码久久精品蜜桃| 国产精品超碰| 亚洲3atv精品一区二区三区| 综合天堂av久久久久久久| 在线中文资源天堂| 999久久欧美人妻一区二区| 美日韩精品视频免费看| 黑人精品xxx一区一二区| 99在线观看免费视频精品观看| 成av人片在线观看www| 中文字幕永久视频| 国产乱子伦精品| 日韩在线激情视频| 欧美亚洲一区二区在线| 成人国产免费视频| 99热国内精品永久免费观看| av成人在线播放| 国产裸舞福利在线视频合集| 日韩av黄色网址| 久久精品国产精品国产精品污|