ARF Hesaplama Kümesinde Gaussian 16 Programının Kullanılması

Gaussian’ın sayfasında verilen kullanıcı el kitabına aşağıdaki linkten ulaşarak ilgili program ve de kullanımı hakkında detaylı bilgilere ulaşabilirsiniz.

Mevcut durumda TRUBA’daki ARF hesaplama kümesinde ilgili lisanslı Gaussian programları kullanılabilmektedir.

Terminalden ARF kümesine arf-ui1 veya arf-ui2 kullanıcı arayüzü üzerinden bağlantı sağladıktan sonra

module available

komutunu yazdığınızda ARF kümesinde kurulu olan temel programlar listelenecektir.

../../../../../_images/terminal-module.png

İlgili programlar arasında Gaussian için aşağıdaki modüllerin de listede yer aldığını göreceksiniz:

apps/gaussian/g16-avx
apps/gaussian/g16-avx2
apps/gaussian/g16-legacy
apps/gaussian/g16-sse4.2
apps/gaussian/gview

Özel olarak sadece Gaussian programına ait modülleri görüntülemek isterseniz terminalde

module avail |& grep gaussian

veya

module avail 2>&1 | grep gaussian

komutlarından birisini yazabilirsiniz.

Gaussian 16 programına erişimi tanımlı olan araştırmacılar kendi kullanıcı dizinlerinde bir çalışma klasörü yaratarak aşağıdaki örnek SLURM betik dosyasını ilgili klasörde oluşturarak sistemde çalışmak üzere submit edebilirler.

mkdir g16-test
cd g16-test
touch gaussian16-orfoz.slurm    #*.slurm uzantılı bos bir text dosyası olusturmak icin

SLURM Betik Dosyasının Oluşturulması

Aşağıda örnek olarak verilen SLURM betik dosyasında

apps/gaussian/g16-avx

modülü kullanımıştır. Özellikle büyük ve karmaşık moleküler sistemlerin modellenmesi üzerine çalışan araştırmacılarımızın zaman etkin sonuçlar alabilmesi amacıyla

apps/gaussian/g16-avx2

modülünü kullanmaları önerilir.

AVX, AVX2 ve diğer binary versiyonlar arasındaki temel farklar hakkındaki bilgiye erişmek için lütfen tıklayınız

#!/bin/bash
#SBATCH -p orfoz
#SBATCH -A kullanici_adi
#SBATCH -J jobname
#SBATCH -N 1
#SBATCH -n 1
#SBATCH -c 55   # orfoz sunucularinda node basina 55 veya 110 cekirdek talep edilebilir.
#SBATCH -C weka
#SBATCH --time=3-00:00:00
#SBATCH --output=jobname.out
#SBATCH --error=slurm-%j.err

echo "SLURM_NODELIST $SLURM_NODELIST"
echo "NUMBER OF TASKS $SLURM_NTASKS"
echo "NUMBER OF CORES=$SLURM_CPUS_PER_TASK"

module purge
module load apps/gaussian/g16-avx

export GAUSS_SCRDIR=/tmp/$SLURM_JOB_ID
source $g16root/g16/bsd/g16.profile

if [ -d "$GAUSS_SCRDIR" ]
then
rm -rf $GAUSS_SCRDIR
else
mkdir -p $GAUSS_SCRDIR
fi

$g16root/g16/g16 < g16input_file.gjf

rm -rf $GAUSS_SCRDIR

exit

İlgili SLURM betik dosyasını kendi kullanıcı dizininizde yer alan çalışma klasörünüzde düzenledikten sonra

sbatch gaussian16.slurm

komutu ile sisteme submit edebilirsiniz.

Uyarı

Gaussian input dosyanızda nprocshared parametresinin, SLURM betik dosyanızda talep ettiğiniz çekirdek sayısı ile aynı olması gerekmektedir.

Çalışmakta olan işlerinizin işlemci yükünü ve bellek kullanımını [http://grafana.yonetim:3000] veya [http://172.16.6.25:3000] adreslerinden takip edebilirsiniz.

Not

GREASY ile tek çekirdek gerektiren işlerinizi iş listesinde ard arda satırlarda belirtebilirsiniz. Böylece olası en fazla sayıda çekirdeği kullanabilirsiniz. GREASY ile iş çalıştırmak için GREASY Kılavuzu sayfasını inceleyebilirsiniz.

Veya SLURM betik dosyasında aşağıdaki gibi srun ile tek çekirdek kullanarak benzer şekilde bir dizi işinizi sisteme gönderebilirsiniz.

srun -n 1 -c 1 command_line &

srun -n 1 -c 1 command_line &

srun -n 1 -c 1 command_line &

srun -n 1 -c 1 command_line

exit

Tek bir sunucu üzerinde işinizi 54 ya da 110çekirdek ile kuyruğa gönderip, aynı betikte birden fazla işin birden fazal çekirdek üzerinde çalıştırılmasını da sağlayabilirsiniz.

srun -n 1 -c 4 command_line > out1 2>&1 &

srun -n 1 -c 4 command_line > out2 2>&1 &

srun -n 1 -c 4 command_line > out3 2>&1 &

srun -n 1 -c 4 command_line > out4 2>&1 &

srun -n 1 -c 12 command_line > out5 >&1 &

srun -n 1 -c 12 command_line > out6 >&1 &

srun -n 1 -c 12 command_line > out7 2>&1

exit

İşleriniz farklı dizinlerdeyse, SLURM betik dosyasında input dosyasının olduğu dizini aşağıdaki gibi belirtebilirsiniz:

cd /path/to/your/directory

srun -n 1 -c 1 command_line &

cd /path/to/another/directory

srun -n 1 -c 1 command_line &

cd /path/to/yet/another/directory

srun -n 1 -c 1 command_line

exit