天天看點

并行計算作業腳本的編寫

并行應用程式需要使用mpirun或mpiexec來運作,但是北京藍海彤翔科技有限公司叢集不允許直接使用mpirun或mpiexec來運作您的并行程式,必須編寫作業腳本,通過qsub來送出。

  作業腳本中必須指定所需資源,北京藍海彤翔科技有限公司叢集總共有48個計算節點,每個計算節點包含2個處理器。

  下面給出了兩個簡單的作業腳本例子,更詳細的說明請從下載下傳中心下載下傳MPICH&PBS使用者手冊查閱。

  如何對叢集狀态的實時監控,請檢視《COMS手冊》的“叢集狀态監控”。

使用以太網運作并行程式。

  假設并行程式為cpi,下面是一個作業腳本的例子。

#!/bin/bash # #$ -cwd #$ -j y #$ -S /bin/bash #PBS -N pi #PBS -l nodes=20:ppn=8 cd $PBS_O_WORKDIR /opt/mpiexec/bin/mpiexec -mpich-p4-no-shmem $PBS_O_WORKDIR/cpi

說明:

  1. 首先必須確定您的程式是用基于以太網的編譯及連接配接器編譯出來的可執行檔案。

  2. 第1行必須包含,指定shell環境。

  3. 第3行表示在目前目錄下執行作業。

  4. 第4行表示将作業運作時的錯誤輸出合并到标準輸出流中去。

  5. 第5行表示目前作業使用的shell為bash。

  6. 第7行必須包含,指定該作業的作業名,格式為#PBS –N [作業名]。

  7. 第8行必須包含,指定該作業所需資源,格式為#PBS –l [資源類型1=值,資源類型2=值…]。第8行指定了nodes這個資源的值,20:ppn=8表示20個計算節點,每個節點使用8個處理器。

  8. 第10行表示跳到執行qsub的目錄,是以$PBS_O_WORKDIR為OpenPBS系統内置變量,表示使用者執行qsub時所在目錄。

  9. 第12行為執行并行程式的指令行,北京藍海彤翔科技有限公司叢集要運作并行程式必須使用/opt/mpiexec/bin/mpiexec指令。-mpich-p4-no-shmem必須是在以太網下運作并行程式必須包含的選項。

使用Myrinet網運作并行程式

  假設并行程式為cpi,下面是一個作業腳本的例子。

#!/bin/bash # #$ -cwd #$ -j y #$ -S /bin/bash # #PBS -N pi #PBS -l nodes=4:ppn=4 cd $PBS_O_WORKDIR /opt/mpiexec/bin/mpiexec --comm=gm $PBS_O_WORKDIR/cpi

說明:

  首先必須確定您的程式是用基于Myrinet網的編譯及連接配接器編譯出來的可執行檔案。

  除了第12行不同外,其他和上節相同。-comm=gm必須是在Myrinet網下運作并行程式必須包含的選項。