編集不可のページ History 添付ファイル

 

ページ名: "HowToCompile"の差分
15と19のリビジョン間の差分 (その間の編集: 4回)
2024-01-23 02:03:41時点のリビジョン15
サイズ: 4471
編集者: yi041
コメント:
2024-01-23 10:56:24時点のリビジョン19
サイズ: 4154
編集者: yi041
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 3: 行 3:
C で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. C で記述されたソースコードをコンパイルするには,以下のコマンドを実行して下さい.
行 11: 行 11:
C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行してください. C++ で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください.
行 19: 行 19:
Fortran で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. Fortran で記述されたソースコードをコンパイルするには,以下のコマンドを実行して下さい.
行 28: 行 28:
C で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. C で記述されたソースコードをコンパイルするには,以下のコマンドを実行して下さい.
行 33: 行 33:
C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. C++ で記述されたソースコードをコンパイルするには,以下のコマンドを実行して下さい.
行 38: 行 38:
Fortran で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. Fortran で記述されたソースコードをコンパイルするには,以下のコマンドを実行して下さい.
行 44: 行 44:
C/C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. C で記述されたソースコードをコンパイルするには,以下のコマンドを実行して下さい.
行 49: 行 49:
C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. C++ で記述されたソースコードをコンパイルするには,以下のコマンドを実行して下さい.
行 54: 行 54:
Fortran で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. Fortran で記述されたソースコードをコンパイルするには,以下のコマンドを実行して下さい.
行 59: 行 59:
(例)<<BR>>Fortran で記述された計算プログラムをバッチジョブとしてコンパイルする場合の実行スクリプト (例)<<BR>>C で記述されたMPI並列計算プログラムをバッチジョブとしてコンパイルし,4プロセス並列で実行する場合のジョブスクリプト
行 62: 行 62:
#!/bin/bash #PBS -q gSrchq  #PBS -o out.intelmpi
#PBS -j oe

#PBS -l select=2:ncpus=2
#PBS -l wallt
ime=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"
行 70: 行 67:
source /etc/profile
module load intel
module load intelmpi.intel
source /etc/profile
source /common/intel-2022/setvars.sh &> /dev/null
行 74: 行 70:
cd ${PBS_O_WORKDIR} cd $PBS_O_WORKDIR
行 76: 行 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
}}}
行 85: 行 79:
C で記述された計算プログラムをコンパイルするには,以下のコマンドを実行して下さい. C で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい.
行 90: 行 84:
C++ で記述された計算プログラムをコンパイルするには,以下のコマンドを実行して下さい. C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい.
行 95: 行 89:
Fortran で記述された計算プログラムをコンパイルするには,以下のコマンドを実行して下さい. Fortran で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい.
行 103: 行 97:
(例)<<BR>>Fortran で記述された計算プログラムをバッチジョブとしてコンパイルする場合の実行スクリプト (例)<<BR>>Fortran で記述されたMPI並列計算プログラムをバッチジョブとしてコンパイルし,4プロセス並列で実行する場合のジョブスクリプト
行 106: 行 100:
#!/bin/bash 
#PBS -q gSrchq  #PBS -o out.openmpi
#PBS -j oe

#PBS -l select=2:ncpus=2
#PBS -l wallt
ime=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"
行 115: 行 105:
source /etc/profile 
module load intel 
source /etc/profile
module load intel
行 119: 行 109:
cd ${PBS_O_WORKDIR} cd $PBS_O_WORKDIR
行 121: 行 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
}}}

プログラムのコンパイル

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 で記述されたソースコードをコンパイルするには,以下のコマンドを実行して下さい.

$ 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

* ジョブの投入方法は,ジョブの実行 を参照して下さい.