14と18のリビジョン間の差分 (その間の編集: 4回)
サイズ: 4238
コメント:
|
サイズ: 4131
コメント:
|
削除された箇所はこのように表示されます。 | 追加された箇所はこのように表示されます。 |
行 37: | 行 37: |
行 54: | 行 53: |
行 61: | 行 59: |
(例)<<BR>>Fortran で記述された計算プログラムをバッチジョブとしてコンパイルする場合の実行スクリプト | (例)<<BR>>C で記述されたMPI並列計算プログラムをバッチジョブとしてコンパイルし,4プロセス並列で実行する場合のジョブスクリプト |
行 63: | 行 61: |
{{{#!/bin/bash #PBS -q gSrchq #PBS -o out.intelmpi #PBS -j oe #PBS -l select=2:ncpus=2 #PBS -l walltime=1:00:00 #PBS -v DOCKER_IMAGE=prg-env:2019.10.02,DOCKER_OPTIONS="--network=overlaynw" #PBS -N impitest |
{{{ #!/bin/bash #PBS -q wEduq #PBS -l select=1:ncpus=4:mpiprocs=4 #PBS -v DOCKER_IMAGE=mpi-env:latest,DOCKER_OPTIONS="--network=overlaynw" |
行 73: | 行 68: |
module load intel module load intelmpi.intel |
source /common/intel-2022/setvars.sh &> /dev/null |
行 76: | 行 70: |
cd ${PBS_O_WORKDIR} | cd $PBS_O_WORKDIR |
行 78: | 行 72: |
prog=mpi-ping-intelmpi.x mpiicc mpi-ping.c -o $prog mpirun -np 2 -ppn 1 -hostfile ${PBS_NODEFILE} hostname mpirun -np 2 -ppn 1 -hostfile ${PBS_NODEFILE} ./$prog -B -r 1 1m |
mpiicc -cc=icx test.c -o test.x mpirun -np 4 ./test.x |
行 83: | 行 75: |
行 86: | 行 79: |
C/C++ で記述された計算プログラムをコンパイルするには,以下のコマンドを実行して下さい. | C で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. |
行 91: | 行 84: |
Fortran で記述された計算プログラムをコンパイルするには,以下のコマンドを実行して下さい. | C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. {{{ $ mpicpc ソースファイル名 -o 出力するプログラム名 }}} Fortran で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. |
行 99: | 行 97: |
(例)<<BR>>Fortran で記述された計算プログラムをバッチジョブとしてコンパイルする場合の実行スクリプト | (例)<<BR>>Fortran で記述されたMPI並列計算プログラムをバッチジョブとしてコンパイルし,4プロセス並列で実行する場合のジョブスクリプト |
行 101: | 行 99: |
{{{#!/bin/bash #PBS -q gSrchq #PBS -o out.openmpi #PBS -j oe #PBS -l select=2:ncpus=2 #PBS -l walltime=1:00:00 #PBS -v DOCKER_IMAGE=prg-env:2019.10.02,DOCKER_OPTIONS="--network=overlaynw" #PBS -N impitest |
{{{ #!/bin/bash #PBS -q wEduq #PBS -l select=1:ncpus=4:mpiprocs=4 #PBS -v DOCKER_IMAGE=mpi-env:latest,DOCKER_OPTIONS="--network=overlaynw" |
行 114: | 行 109: |
cd ${PBS_O_WORKDIR} | cd $PBS_O_WORKDIR |
行 116: | 行 111: |
prog=mpi-ping-openmpi.x mpicc mpi-ping.c -o $prog mpirun -np 2 -N 1 -hostfile ${PBS_NODEFILE} hostname mpirun -np 2 -N 1 -hostfile ${PBS_NODEFILE} ./$prog -B -r 1 1m |
mpiif90 test.f90 -o test.x mpirun -np 4 ./test.x |
行 121: | 行 114: |
プログラムのコンパイル
Intel コンパイラ
C で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい.
$ icpx ソースファイル名 -o 出力するプログラム名
$ icc ソースファイル名 -o 出力するプログラム名
C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行してください.
$ icpx ソースファイル名 -o 出力するプログラム名
$ icc ソースファイル名 -o 出力するプログラム名
Fortran で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい.
$ ifx ソースファイル名 -o 出力するプログラム名
$ ifort ソースファイル名 -o 出力するプログラム名
GNU コンパイラ
C で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい.
$ gcc ソースファイル名 -o 出力するプログラム名
C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい.
$ g++ ソースファイル名 -o 出力するプログラム名
Fortran で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい.
$ gfortran ソースファイル名 -o 出力するプログラム名
Intel MPI
C/C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい.
$ mpiicc -cc=icx ソースファイル名 -o 出力するプログラム名
C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい.
$ mpiicpc -cxx=icpx ソースファイル名 -o 出力するプログラム名
Fortran で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい.
$ mpiifort -fc=ifx ソースファイル名 -o 出力するプログラム名
(例)
C で記述されたMPI並列計算プログラムをバッチジョブとしてコンパイルし,4プロセス並列で実行する場合のジョブスクリプト
#PBS -q wEduq #PBS -l select=1:ncpus=4:mpiprocs=4 #PBS -v DOCKER_IMAGE=mpi-env:latest,DOCKER_OPTIONS="--network=overlaynw" source /etc/profile source /common/intel-2022/setvars.sh &> /dev/null cd $PBS_O_WORKDIR mpiicc -cc=icx test.c -o test.x mpirun -np 4 ./test.x
* ジョブの投入方法は,ジョブの実行 を参照して下さい.
Open MPI
C で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい.
$ mpicc ソースファイル名 -o 出力するプログラム名
C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい.
$ mpicpc ソースファイル名 -o 出力するプログラム名
Fortran で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい.
$ mpif90 ソースファイル名 -o 出力するプログラム名
$ mpif77 ソースファイル名 -o 出力するプログラム名
(例)
Fortran で記述されたMPI並列計算プログラムをバッチジョブとしてコンパイルし,4プロセス並列で実行する場合のジョブスクリプト
#PBS -q wEduq #PBS -l select=1:ncpus=4:mpiprocs=4 #PBS -v DOCKER_IMAGE=mpi-env:latest,DOCKER_OPTIONS="--network=overlaynw" source /etc/profile module load intel module load openmpi.intel-4.0.1 cd $PBS_O_WORKDIR mpiif90 test.f90 -o test.x mpirun -np 4 ./test.x
* ジョブの投入方法は,ジョブの実行 を参照して下さい.