Dell AMD EPYC 7662 / NVIDIA Tesla A100
Softwares Instalados
Categoria: Química/Física
| Orca (Licenciado pelo usuário) | |
|---|---|
| Versão | |
| Descrição | ORCA is the fastest growing quantum-chemical software package to date. ORCA provides cutting-edge methods in the fields of density functional theory as well as correlated wave-function based methods. |
| Documentação |
Forum do ORCA Tutoriais |
| Licença | Licenciado pelo Usuario |
| Localização | https://www.faccts.de/orca/ |
Como usar
O Orca é um software que deve ser licenciado pelo usuário e a instalação deve ser feita na conta do usuário.EXECUÇÃO PARALELA
A instalação consiste em apenas desempacotar o arquivo .tar e ativar o módulo OpenMPI indicado no pacote do
Orca.
- Instalação:
mkdir $HOME/orca-x.x.x onde x.x.x é a versão do Orca adquirida
tar -xvf $HOME/orca_...tar.xz --strip=1 -C orca-x.x.x
- Configuração para uso:
module load openmpi/...
export PATH=$HOME/orca-x.x.x/bin:$PATH
export LD_LIBRARY_PATH=$HOME/orca-x.x.x/lib:$LD_LIBRARY_PATH
OBS: Verifique a disponibilidade da versão correta de biblioteca OpenMPI utilizada pelo
Orca, se está instalada no ambiente. Execute o comando:
module av openmpi/
Vários módulos do Orca foram paralelizados, mas a maioria necessita de poucos processos para obter uma boa performance.
'The following modules are presently parallelized:
SCF
SCFGRAD
CASSCF / NEVPT2
MDCI (Coupled-Cluster)
CPSCF
CIS/TDDFT
MP2 and RI-MP2 (including gradient)
EPRNMR
SOC
ROCIS
PC
MRCI
Numerical Gradients and Frequencies
The efficiency is such that for RI-DFT perhaps up to 20 processors are a good idea while for hybrid DFT and Hartree-Fock a few
more processors are appropriate. Above this, the overhead becomes signicant and the parallelization loses efficiency. Coupled
cluster calculations usually scale well up to at least 8 processors but probably it is also worthwhile to try 20. For
Numerical Frequencies or Gradient runs it makes sense to use as many processors as 3*Number of Atoms.'
POR FAVOR, verifique a documentação do software para estabelecer o número correto de processos. Para a maioria dos processamentos,
a fila 'par16', deverá atender as necessidades.
Exemplo de script de submissão de um job para fila 'par16':
#!/bin/bash
### Nome da fila de execucao ###
#PBS -q par16
### Nome do job ###
#PBS -N teste
### Nome do arquivo de saida ###
#PBS -o saida
### Nome do arquivo de erros ###
#PBS -e erro
### Recursos necessarios para execucao: ###
### nodes= Numero de nos computacionais ###
### ppn= Numero de processos por no ###
### Total de processos = nodes X ppn ###
#PBS -l nodes=1:ppn=16
cd $PBS_O_WORKDIR
echo "-----------------------------------------"
echo "Inicio do job:" `date`
### Configura ambiente para execucao do ORCA ###
module load openmpi/...
export PATH=$HOME/orca-x.x.x/bin:$PATH
export LD_LIBRARY_PATH=$HOME/orca-x.x.x/lib:$LD_LIBRARY_PATH
#Criar diretorio temporario e copiar arquivos para processamento
mkdir -p /work/${USER}/${PBS_JOBID}
cp -r ${PBS_O_WORKDIR}/* /work/${USER}/${PBS_JOBID}
cd /work/${USER}/${PBS_JOBID}
$HOME/orca-x.x.x/bin/orca arquivo_input
#Copiar resultado de volta para o home:
cp -a -r -f /work/${USER}/${PBS_JOBID}/* ${PBS_O_WORKDIR}/
echo "Final do job:" `date`
echo "-----------------------------------------"
Exemplo de script de submissão de um job para a fila 'par16', com Orca-6.0.1 e OpenMPI-4.1.1:
#!/bin/bash
### Nome da fila de execucao ###
#PBS -q par16
### Nome do job ###
#PBS -N teste
### Nome do arquivo de saida ###
#PBS -o saida
### Nome do arquivo de erros ###
#PBS -e erro
### Recursos necessarios para execucao: ###
### nodes= Numero de nos computacionais ###
### ppn= Numero de processos por no ###
### Total de processos = nodes X ppn ###
#PBS -l nodes=1:ppn=16
cd $PBS_O_WORKDIR
echo "-----------------------------------------"
echo "Inicio do job:" `date`
### Configura ambiente para execucao do ORCA ###
module load openmpi/4.1.1-gcc-9.4.0
export PATH=$HOME/orca-6.0.1/bin:$PATH
export LD_LIBRARY_PATH=$HOME/orca-6.0.1/lib:$LD_LIBRARY_PATH
#Criar diretorio temporario e copiar arquivos para processamento
mkdir -p /work/${USER}/${PBS_JOBID}
cp -r ${PBS_O_WORKDIR}/* /work/${USER}/${PBS_JOBID}
cd /work/${USER}/${PBS_JOBID}
$HOME/orca-6.0.1/bin/orca arquivo_input
#Copiar resultado de volta para o home:
cp -a -r -f /work/${USER}/${PBS_JOBID}/* ${PBS_O_WORKDIR}/
echo "Final do job:" `date`
echo "-----------------------------------------"
Exemplo de script de submissão de um job para a fila 'paralela', com Orca-6.0.1 e OpenMPI-4.1.1:
#!/bin/bash
### Nome da fila de execucao ###
#PBS -q paralela
### Nome do job ###
#PBS -N teste
### Nome do arquivo de saida ###
#PBS -o saida
### Nome do arquivo de erros ###
#PBS -e erro
### Recursos necessarios para execucao: ###
### nodes= Numero de nos computacionais ###
### ppn= Numero de processos por no ###
### Total de processos = nodes X ppn ###
#PBS -l nodes=2:ppn=128
cd $PBS_O_WORKDIR
echo "-----------------------------------------"
echo "Inicio do job:" `date`
### Configura ambiente para execucao do ORCA ###
module load openmpi/4.1.1-gcc-9.4.0
export PATH=$HOME/orca-6.0.1/bin:$PATH
export LD_LIBRARY_PATH=$HOME/orca-6.0.1/lib:$LD_LIBRARY_PATH
export RSH_COMMAND=ssh
#Criar diretorio temporario e copiar arquivos para processamento
mkdir -p /work/${USER}/${PBS_JOBID}
cp -r ${PBS_O_WORKDIR}/* /work/${USER}/${PBS_JOBID}
cd /work/${USER}/${PBS_JOBID}
cp $PBS_NODEFILE nome_arquivo_input.nodes
$HOME/orca-6.0.1/bin/orca nome_arquivo_input
#Copiar resultado de volta para o home:
cp -a -r -f /work/${USER}/${PBS_JOBID}/* ${PBS_O_WORKDIR}/
echo "Final do job:" `date`
echo "-----------------------------------------"
Preparação do arquivo de Input:
IMPORTANTE : Incluir no início do arquivo de input as instruções que especificam o número de processos paralelos e a memória por processo.
Siga os passos abaixo:
vi arquivo_de_input.inp
%maxcore 2000
%pal
nprocs 16
end
...
ATENÇÃO: Cuidado para não ultrapassar a memória máxima disponível para a execução do job.
No exemplo: 1 nó, 16 processos
cada processo poderá usar até 2000 MBytes.
Total: 32 GBytes