令和1年度A1・A2 システム創成学科 3年 先端コンピューティング

FrontPage


ソースコード

ファイル内容
1filemain.fメイン
fileOPENFILE.fファイルオープン
fileBDATA.f数値テーブル(数値積分,内挿関数の微係数)
fileDAIMON.f実質的なメイン
2fileINPUT.f入力データ読込
fileCALMAT.fこの下(DIFMAT)で要素剛性行列の計算
fileMAC.fこの下(CGSOLV)で剛性行列を解く
3fileDIFMAT.f拡散行列の計算
fileLAGRAN.f形状関数の微係数(局所系)
fileJACOB.f形状関数の微係数(全体系)
fileCGSOLV.fElement-by-Element CG法で剛性行列を解く (file解説
4fileDTELEM.f要素データ入力
fileDTNODE.f節点座標データ入力
fileDTINIT.f初期データ入力
fileDT1BCD.fディリクレ境界条件データ入力
fileMKNPB.fPE間共有節点・要素データ入力A
fileMKNEIB.fPE間共有節点・要素データ入力B
5filePLTOUT.f結果の出力(UCD出力を含む)
fileMESAGE.fチェックライト
fileTIMEOUT.f計算時間の計測
filecom_time.f計算時間の計測
6fileMakefileMakefile
filerun_pois.sh実行スクリプト

入力データ

入力データフォーマット説明

領域分割図

dd.png

サンプル入力データ

2つセットです

コンパイル及び実行方法

  1. fileソースコード一式をダウンロードし,ICに転送
  2. 展開する
    tar zxvf MPI_POISSON4.1.0.tar.gz
  3. コンパイルする.MPI_POISSON4.1.0/src/ 中でmake
    cd ~/MPI_POISSON4.1.0/src
    make
  4. MPI_POISSON4.1.0/load で,ジョブスケジューラを利用してジョブを投入
    cd ~/MPI_POISSON4.1.0/load
    qsub run_pois.sh
    • loadには,サンプルのfoo000 foo001があり,run_pois.shでは#PBS -l nodes=1:ppn=2:hcとなっているので(mpirun -np 2 が実行されます.)そのままジョブを投入できます.
    • 入力ファイルを変えたいときは,各自loadに保存して,run_pois.shのppn=2:hcの値を編集の上ジョブを投入してください.
    • 並列数を変えたいときは,run_pois.shのppn=2:hcの数値を変化させてください.例えば4並列で実行したいときは,#PBS -l nodes=1:ppn=4:hc となります.
  5. out.logなど,出力されたファイルを開き結果を確認する.

実行時の注意

実行ファイルやシェルスクリプトをコピーした後に、それらを実行すると、 実行できない場合があります。そのような場合は、実行できないファイルの パーミッションを確認してみましょう。

ls -l file
   -rwxr--r-- 1 root root       file

上の出力結果のように左から4番目のところに、xの文字があれば実行可能です。 もしxがなければ、次のようなコマンドで、ファイルのパーミッションを変更しましょう。

chmod u+x ファイル名 

入力データ

14K

  • tar+gzipで固めてあるので展開してください
    tar zxvf 14k.tar.gz
  • 以下のようなディレクトリ構造になっています
    14k
    |-- 1PE
    |   `-- foo000
    |-- 2PE
    |   |-- foo000
    |   `-- foo001
    |-- 4PE
    |   |-- foo000
    |   |-- foo001
    |   |-- foo002
    |   `-- foo003
    `-- 8PE
        |-- foo000
        |-- foo001
        |-- foo002
        |-- foo003
        |-- foo004
        |-- foo005
        |-- foo006
        `-- foo007
  • 14k/nPEディレクトリにあるファイルが,n領域の入力ファイルです

100K

  • 14kと同様に展開してください

実行時の注意

100kの例題を実行するときは,main.fのLSIZE, ISIZEに代入する値を次の数字に編集してください.

LSIZE = 9050000
ISIZE = 1100000



      PROGRAM main
C     ***** MAIN PROGRAM *****
      IMPLICIT REAL*8(A-H,O-Z)
      INCLUDE 'mpif.h'
C
C      PARAMETER (LSIZE = 491,
C     .           ISIZE =  91 )
C      PARAMETER (LSIZE = 1148046,
C     .           ISIZE =  136846  )
      PARAMETER (LSIZE = 9050000,
     .           ISIZE =  1100000  )

編集後,あらためてmakeし,バイナリparapoisを更新したものに置き換えて100kの入力ファイルを読み込み・実行してください


添付ファイル: file14k.tar.gz 12件 [詳細] file100k.tar.gz 13件 [詳細] fileBDATA.f 17件 [詳細] fileCALMAT.f 21件 [詳細] fileDAIMON.f 18件 [詳細] fileCGSOLV.f 17件 [詳細] fileDIFMAT.f 14件 [詳細] fileDT1BCD.f 17件 [詳細] fileDTELEM.f 19件 [詳細] fileDTINIT.f 15件 [詳細] fileDTNODE.f 17件 [詳細] fileEBE-CG.pdf 19件 [詳細] fileINPUT.f 15件 [詳細] fileJACOB.f 18件 [詳細] fileLAGRAN.f 16件 [詳細] fileMAC.f 14件 [詳細] fileMESAGE.f 12件 [詳細] fileMKNEIB.f 14件 [詳細] fileMKNPB.f 19件 [詳細] fileMPI_POISSON4.1.0.tar.gz 15件 [詳細] fileMakefile 16件 [詳細] fileOPENFILE.f 14件 [詳細] filePLTOUT.f 17件 [詳細] fileTIMEOUT.f 20件 [詳細] filecom_time.f 15件 [詳細] filedd.png 11件 [詳細] filefoo000 9件 [詳細] filefoo001 10件 [詳細] filemachines 5件 [詳細] filemain.f 13件 [詳細] filempi_poisson_data_format.pdf 9件 [詳細] filerun_pois.sh 11件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019-11-26 (火) 11:48:36 (134d)