サイズ: 4471
コメント:
|
サイズ: 6430
コメント:
|
削除された箇所はこのように表示されます。 | 追加された箇所はこのように表示されます。 |
行 2: | 行 2: |
== GNU コンパイラ == 窓口サーバで利用できます. C言語で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください. {{{ $ gcc ソースファイル名 -o 出力するプログラム名 }}} C++ で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください. {{{ $ g++ ソースファイル名 -o 出力するプログラム名 }}} Fortran で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください. {{{ $ gfortran ソースファイル名 -o 出力するプログラム名 }}} |
|
行 3: | 行 20: |
C で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. | 窓口サーバで利用できます.コンパイルを行う前に,moduleコマンドを実行してください. {{{ $ module load intel/2025 }}} |
行 5: | 行 25: |
C言語で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください. {{{ $ icx ソースファイル名 -o 出力するプログラム名 }}} C++ で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください. |
|
行 8: | 行 34: |
{{{ $ icc ソースファイル名 -o 出力するプログラム名 }}} C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行してください. |
|
行 13: | 行 35: |
{{{ $ icpx ソースファイル名 -o 出力するプログラム名 }}} {{{ $ icc ソースファイル名 -o 出力するプログラム名 }}} Fortran で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. |
Fortran で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください. |
行 24: | 行 39: |
== AMD コンパイラ (AOCC) == 窓口サーバで利用できます.コンパイルを行う前に,moduleコマンドを実行してください. |
|
行 25: | 行 43: |
$ ifort ソースファイル名 -o 出力するプログラム名 | $ module load aocc/5.0.0 |
行 27: | 行 45: |
== GNU コンパイラ == C で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. |
|
行 30: | 行 46: |
C言語で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください. | |
行 31: | 行 48: |
$ gcc ソースファイル名 -o 出力するプログラム名 | $ clang ソースファイル名 -o 出力するプログラム名 |
行 33: | 行 50: |
C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. | |
行 35: | 行 51: |
C++ で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください. | |
行 36: | 行 53: |
$ g++ ソースファイル名 -o 出力するプログラム名 | $ clang++ ソースファイル名 -o 出力するプログラム名 |
行 38: | 行 55: |
Fortran で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. | |
行 40: | 行 56: |
Fortran で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください. | |
行 41: | 行 58: |
$ gfortran ソースファイル名 -o 出力するプログラム名 | $ flang ソースファイル名 -o 出力するプログラム名 |
行 43: | 行 60: |
== Intel MPI == C/C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. |
|
行 46: | 行 61: |
== Intel MPI (Intel コンパイラとの組み合わせ) == 窓口サーバで利用できます.コンパイルを行う前に,moduleコマンドを実行してください. {{{ $ module load intelmpi/2025 }}} C言語で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください. |
|
行 49: | 行 71: |
C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. | |
行 51: | 行 72: |
C++ で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください. | |
行 54: | 行 76: |
Fortran で記述されたプログラムをコンパイルするには,以下のコマンドを実行して下さい. | Fortran で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください. |
行 59: | 行 81: |
(例)<<BR>>Fortran で記述された計算プログラムをバッチジョブとしてコンパイルする場合の実行スクリプト {{{ #!/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 source /etc/profile module load intel module load intelmpi.intel cd ${PBS_O_WORKDIR} 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 }}} * ジョブの投入方法は,[[https://hpcportal.imc.tut.ac.jp/wiki/HowToSubmitJob|ジョブの実行]] を参照して下さい. |
|
行 85: | 行 83: |
C で記述された計算プログラムをコンパイルするには,以下のコマンドを実行して下さい. | 窓口サーバで利用できます.コンパイルを行う前に,moduleコマンドを実行してください. {{{ $ module load openmpi5.04 }}} |
行 87: | 行 88: |
Open MPIを使用する場合は,コンパイラのコマンドを環境変数で指定します.ここではGNUコンパイラの場合を示します. C言語で記述されたプログラムをコンパイルするには,以下のコマンドを実行してください. |
|
行 88: | 行 91: |
$ export OMPI_CC=gcc | |
行 90: | 行 94: |
C++ で記述された計算プログラムをコンパイルするには,以下のコマンドを実行して下さい. | |
行 92: | 行 95: |
C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行してください. | |
行 93: | 行 97: |
$ mpicpc ソースファイル名 -o 出力するプログラム名 | $ export OMPI_CXX=g++ $ mpicxx ソースファイル名 -o 出力するプログラム名 |
行 95: | 行 100: |
Fortran で記述された計算プログラムをコンパイルするには,以下のコマンドを実行して下さい. | |
行 97: | 行 101: |
Fortran で記述されたプログラムをコンパイルするには,以下のコマンドを実行してください. | |
行 98: | 行 103: |
$ export OMPI_FC=gfortran | |
行 101: | 行 107: |
$ export OMPI_F77=gfortran | |
行 103: | 行 110: |
(例)<<BR>>Fortran で記述された計算プログラムをバッチジョブとしてコンパイルする場合の実行スクリプト | |
行 105: | 行 111: |
== ROCm環境のコンパイル == 計算サーバのAMD GPUを利用するためのコンパイルコマンドです. 事前にインタラクティブジョブにより計算サーバに移動してください. |
|
行 106: | 行 115: |
#!/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 |
$ qsub -I -q Eduq -l select=1:ncpus=1:ngpus=1 -v SINGULARITY_IMAGE=/common/Singularity_sif/prg_env_amd_2025.01.sif }}} |
行 115: | 行 118: |
source /etc/profile module load intel module load openmpi.intel-4.0.1 |
C言語もしくはC++で記述されたプログラムをコンパイルするには,以下のコマンドを実行してください. {{{ $ hipcc -I/opt/rocm/include -D__HIP_PLATFORM_AMD__ ソースファイル名 -o 出力するプログラム名 }}} |
行 119: | 行 123: |
cd ${PBS_O_WORKDIR} | * インタラクティブジョブの詳細については,[[https://hpcportal.imc.tut.ac.jp/wiki/HowToSubmitJob|ジョブの実行]] を参照して下さい. |
行 121: | 行 125: |
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 }}} |
== CUDAを利用する場合のコンパイル == CUDAによりIoT・AI基盤システムのNVIDIA GPUを利用するためのコンパイルコマンドです. 事前にインタラクティブジョブによりIoT・AI基盤システムの計算サーバに移動してください. {{{ $ qsub -I -q iEduq -l select=1:ncpus=1:ngpus=1 -v SINGULARITY_IMAGE=/common/Singularity_sif/prg_env_intel_2025.01.sif }}} |
行 127: | 行 132: |
* ジョブの投入方法は,[[https://hpcportal.imc.tut.ac.jp/wiki/HowToSubmitJob|ジョブの実行]] を参照して下さい. | C言語で記述されたプログラムをコンパイルするには,以下のコマンドを実行してください. {{{ $ nvcc -ccbin gcc -I/usr/include ソースファイル名 -o 出力するプログラム名 }}} C++で記述されたプログラムをコンパイルするには,以下のコマンドを実行してください. {{{ $ nvcc -ccbin g++ -I/usr/include ソースファイル名 -o 出力するプログラム名 }}} Fortranで記述されたプログラムをコンパイルするには,以下のコマンドを実行してください. {{{ $ nvfortran -I/usr/include ソースファイル名 -o 出力するプログラム名 }}} * インタラクティブジョブの詳細については,[[https://hpcportal.imc.tut.ac.jp/wiki/HowToSubmitJob|ジョブの実行]] を参照して下さい. |
プログラムのコンパイル
GNU コンパイラ
窓口サーバで利用できます. C言語で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください.
$ gcc ソースファイル名 -o 出力するプログラム名
C++ で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください.
$ g++ ソースファイル名 -o 出力するプログラム名
Fortran で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください.
$ gfortran ソースファイル名 -o 出力するプログラム名
Intel コンパイラ
窓口サーバで利用できます.コンパイルを行う前に,moduleコマンドを実行してください.
$ module load intel/2025
C言語で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください.
$ icx ソースファイル名 -o 出力するプログラム名
C++ で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください.
$ icpx ソースファイル名 -o 出力するプログラム名
Fortran で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください.
$ ifx ソースファイル名 -o 出力するプログラム名
AMD コンパイラ (AOCC)
窓口サーバで利用できます.コンパイルを行う前に,moduleコマンドを実行してください.
$ module load aocc/5.0.0
C言語で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください.
$ clang ソースファイル名 -o 出力するプログラム名
C++ で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください.
$ clang++ ソースファイル名 -o 出力するプログラム名
Fortran で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください.
$ flang ソースファイル名 -o 出力するプログラム名
Intel MPI (Intel コンパイラとの組み合わせ)
窓口サーバで利用できます.コンパイルを行う前に,moduleコマンドを実行してください.
$ module load intelmpi/2025
C言語で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください.
$ mpiicc -cc=icx ソースファイル名 -o 出力するプログラム名
C++ で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください.
$ mpiicpc -cxx=icpx ソースファイル名 -o 出力するプログラム名
Fortran で記述されたソースコードをコンパイルするには,以下のコマンドを実行してください.
$ mpiifort -fc=ifx ソースファイル名 -o 出力するプログラム名
Open MPI
窓口サーバで利用できます.コンパイルを行う前に,moduleコマンドを実行してください.
$ module load openmpi5.04
Open MPIを使用する場合は,コンパイラのコマンドを環境変数で指定します.ここではGNUコンパイラの場合を示します. C言語で記述されたプログラムをコンパイルするには,以下のコマンドを実行してください.
$ export OMPI_CC=gcc $ mpicc ソースファイル名 -o 出力するプログラム名
C++ で記述されたプログラムをコンパイルするには,以下のコマンドを実行してください.
$ export OMPI_CXX=g++ $ mpicxx ソースファイル名 -o 出力するプログラム名
Fortran で記述されたプログラムをコンパイルするには,以下のコマンドを実行してください.
$ export OMPI_FC=gfortran $ mpif90 ソースファイル名 -o 出力するプログラム名
$ export OMPI_F77=gfortran $ mpif77 ソースファイル名 -o 出力するプログラム名
ROCm環境のコンパイル
計算サーバのAMD GPUを利用するためのコンパイルコマンドです. 事前にインタラクティブジョブにより計算サーバに移動してください.
$ qsub -I -q Eduq -l select=1:ncpus=1:ngpus=1 -v SINGULARITY_IMAGE=/common/Singularity_sif/prg_env_amd_2025.01.sif
C言語もしくはC++で記述されたプログラムをコンパイルするには,以下のコマンドを実行してください.
$ hipcc -I/opt/rocm/include -D__HIP_PLATFORM_AMD__ ソースファイル名 -o 出力するプログラム名
* インタラクティブジョブの詳細については,ジョブの実行 を参照して下さい.
CUDAを利用する場合のコンパイル
CUDAによりIoT・AI基盤システムのNVIDIA GPUを利用するためのコンパイルコマンドです. 事前にインタラクティブジョブによりIoT・AI基盤システムの計算サーバに移動してください.
$ qsub -I -q iEduq -l select=1:ncpus=1:ngpus=1 -v SINGULARITY_IMAGE=/common/Singularity_sif/prg_env_intel_2025.01.sif
C言語で記述されたプログラムをコンパイルするには,以下のコマンドを実行してください.
$ nvcc -ccbin gcc -I/usr/include ソースファイル名 -o 出力するプログラム名
C++で記述されたプログラムをコンパイルするには,以下のコマンドを実行してください.
$ nvcc -ccbin g++ -I/usr/include ソースファイル名 -o 出力するプログラム名
Fortranで記述されたプログラムをコンパイルするには,以下のコマンドを実行してください.
$ nvfortran -I/usr/include ソースファイル名 -o 出力するプログラム名
* インタラクティブジョブの詳細については,ジョブの実行 を参照して下さい.