Guia Completo de Instalação do ORCA 6.1 e OpenMPI 4.1.8 no Cluster COARACI
Este guia detalha o processo completo para instalar o software de química quântica ORCA 6.1.0 e a sua dependência específica, OpenMPI 4.1.8, num diretório de utilizador no cluster COARACI. O processo abrange desde a transferência de ficheiros, passando pela compilação e configuração, até à verificação e resolução de problemas comuns.
Pré-requisitos
- Acesso de utilizador ao cluster COARACI (neste guia, o utilizador é
jferreircom o diretório pessoal/home/users/jferreir/). - Os seguintes ficheiros de instalação no seu computador local:
openmpi-4.1.8.tar.gzorca_6_1_0_linux_x86-64_shared_openmpi418_avx2.tar.xz
Parte I: Transferência dos Ficheiros para o Servidor
O primeiro passo é mover os ficheiros de instalação do seu computador local para o seu diretório pessoal no COARACI.
1.1 Acesso via "Jump Host"
O cluster COARACI não é diretamente acessível a partir da internet. É necessário passar por um servidor de entrada (jump host) chamado gate.ifi.unicamp.br. Tentativas de ligação direta a coaraci.ifi.unicamp.br resultarão num erro de Connection timed out.
A solução é usar a opção -J (ProxyJump) no comando scp, que automatiza a ligação através do jump host.
1.2 Executando a Transferência
Abra um terminal no seu computador local, navegue para o diretório onde os ficheiros estão guardados (ex: /home/fabio/Documentos/) e execute os seguintes comandos. Substitua jferreir pelo seu nome de utilizador, se for diferente.
Transferir o OpenMPI:
scp -J jferreir@gate.ifi.unicamp.br openmpi-4.1.8.tar.gz jferreir@coaraci.ifi.unicamp.br:/home/users/jferreir/
Transferir o ORCA:
scp -J jferreir@gate.ifi.unicamp.br orca_6_1_0_linux_x86-64_shared_openmpi418_avx2.tar.xz jferreir@coaraci.ifi.unicamp.br:/home/users/jferreir/
gate.ifi.unicamp.br e depois para coaraci.ifi.unicamp.br.
1.3 Verificação da Transferência
Inicie sessão no COARACI (também através do jump host) e verifique se os ficheiros chegaram.
ssh -J jferreir@gate.ifi.unicamp.br jferreir@coaraci.ifi.unicamp.br
ls -lh
A saída deve ser semelhante a esta, confirmando que os ficheiros estão no seu diretório pessoal com os tamanhos corretos.
-rwxr-xr-x 1 jferreir DSUsers 18M Aug 1 19:40 openmpi-4.1.8.tar.gz
-rwxr-xr-x 1 jferreir DSUsers 551M Aug 1 19:46 orca_6_1_0_linux_x86-64_shared_openmpi418_avx2.tar.xz
Parte II: Organização, Extração e Compilação
Agora no servidor COARACI, vamos organizar os ficheiros, extrair o seu conteúdo e compilar o OpenMPI.
2.1 Organizar os Ficheiros
Para manter o seu diretório pessoal limpo, criaremos uma estrutura dedicada para as aplicações.
# Criar um diretório para aplicações e uma subpasta para os ficheiros de origem
mkdir -p ~/apps/src
# Mover os arquivos de instalação para a pasta de origem
mv ~/openmpi-4.1.8.tar.gz ~/apps/src/
mv ~/orca_6_1_0_linux_x86-64_shared_openmpi418_avx2.tar.xz ~/apps/src/
2.2 Extrair os Arquivos
Navegue para o diretório de origem e extraia os arquivos.
cd ~/apps/src
# Extrair OpenMPI (.tar.gz)
tar -xvzf openmpi-4.1.8.tar.gz
# Extrair ORCA (.tar.xz)
tar -xvf orca_6_1_0_linux_x86-64_shared_openmpi418_avx2.tar.xz
2.3 Implementar o ORCA
O ORCA é pré-compilado. A "instalação" consiste apenas em mover a pasta extraída para o seu local final.
# Ainda dentro de ~/apps/src
mv orca_6_1_0_linux_x86-64_shared_openmpi418_avx2/ ~/apps/
2.4 Compilar o OpenMPI
O OpenMPI deve ser compilado a partir do código-fonte para garantir a compatibilidade com o sistema.
Passo 1: Verificar os núcleos disponíveis
Para acelerar a compilação, verificamos quantos núcleos de processador estão disponíveis no nó de login.
nproc
A saída no COARACI foi 16. É uma boa prática usar um número ligeiramente inferior ao total (ex: 12) para não sobrecarregar o nó de login partilhado.
Passo 2: Configurar, Compilar e Instalar
Execute os seguintes comandos a partir do diretório de origem do OpenMPI.
# Navegar para o diretório do OpenMPI
cd ~/apps/src/openmpi-4.1.8/
# Configurar a compilação, especificando o diretório de instalação final
./configure --prefix=/home/users/jferreir/apps/openmpi-4.1.8
# Compilar usando 12 núcleos
make -j 12 all
# Instalar os ficheiros compilados no diretório especificado pelo --prefix
make install
~/apps/openmpi-4.1.8.
Parte III: Configuração do Ambiente com um Módulo Pessoal
Em vez de modificar diretamente o ficheiro ~/.bashrc, criaremos um módulo de ambiente pessoal. Esta é uma abordagem mais robusta e flexível para gerir software em ambientes HPC.
3.1 Criar a Estrutura do Módulo
mkdir -p ~/privatemodules/orca
3.2 Criar o Ficheiro de Definição do Módulo
Use um editor de texto como o nano para criar o ficheiro do módulo.
nano ~/privatemodules/orca/6.1.0
3.3 Adicionar Conteúdo ao Ficheiro do Módulo
Copie e cole o seguinte código Tcl para dentro do editor nano. Este código define todos os caminhos necessários e inclui a correção para o problema da rede InfiniBand que descobrimos mais tarde.
#%Module1.0#####################################################################
##
## Ficheiro de módulo pessoal para orca/6.1.0
##
proc ModulesHelp { } {
puts stderr "\tEste módulo carrega o ambiente para o ORCA 6.1.0 e a sua dependência OpenMPI 4.1.8 compilada pelo utilizador."
}
module-whatis "Configura o ambiente para ORCA 6.1.0 com OpenMPI 4.1.8 personalizado"
# Define os caminhos de instalação
set orca_root /home/users/jferreir/apps/orca_6_1_0_linux_x86-64_shared_openmpi418_avx2
set openmpi_root /home/users/jferreir/apps/openmpi-4.1.8
# Adiciona os caminhos dos binários ao PATH
# A ordem é importante: o OpenMPI deve vir primeiro.
prepend-path PATH $openmpi_root/bin
prepend-path PATH $orca_root
# Adiciona os caminhos das bibliotecas ao LD_LIBRARY_PATH
# Essencial para que o ORCA encontre as bibliotecas.so corretas em tempo de execução.
prepend-path LD_LIBRARY_PATH $openmpi_root/lib
prepend-path LD_LIBRARY_PATH $orca_root
# Contorna o erro de inicialização do OpenFabrics no nó de login
setenv OMPI_MCA_btl "^openib"
Pressione Ctrl+X, depois Y e Enter para guardar e sair.
3.4 Tornar o Módulo Detetável
Adicione o seu diretório de módulos ao MODULEPATH no seu .bashrc.
echo 'module use --append ~/privatemodules' >> ~/.bashrc
3.5 Ativar as Alterações
Para aplicar as alterações à sua sessão atual, execute:
source ~/.bashrc
Parte IV: Verificação Completa do Sistema
Esta fase final valida toda a instalação, reproduzindo os passos de depuração que foram necessários para alcançar o sucesso.
4.1 Carregar o Módulo e Verificar os Caminhos
# Carregar o ambiente do ORCA
module load orca/6.1.0
# Verificar se o sistema encontra os executáveis corretos
which orca
which mpirun
As saídas esperadas devem apontar para os diretórios dentro de /home/users/jferreir/apps/.
4.2 Preparar o Diretório de Teste
mkdir ~/orca_test && cd ~/orca_test
4.3 Teste em Série (Single-Core)
# Criar o ficheiro de entrada
cat > water_serial.inp << EOF
! HF DEF2-SVP
* xyz 0 1
O 0.0000 0.0000 0.0626
H -0.7920 0.0000 -0.4973
H 0.7920 0.0000 -0.4973
*
EOF
# Executar o cálculo
orca water_serial.inp > water_serial.out
# Verificar o sucesso
grep "ORCA TERMINATED NORMALLY" water_serial.out
****ORCA TERMINATED NORMALLY****, confirmando que o executável base funciona.
4.4 Teste em Paralelo (Multi-Core) - A Solução Final
Este teste valida a integração com o OpenMPI e inclui as correções que descobrimos serem necessárias.
OMPI_MCA_btl='^openib').
# Criar o ficheiro de entrada para o teste paralelo
cat > water_parallel.inp << EOF
! HF DEF2-SVP
%pal
nprocs 4
end
* xyz 0 1
O 0.0000 0.0000 0.0626
H -0.7920 0.0000 -0.4973
H 0.7920 0.0000 -0.4973
*
EOF
# Executar o cálculo usando o caminho completo (MUITO IMPORTANTE)
/home/users/jferreir/apps/orca_6_1_0_linux_x86-64_shared_openmpi418_avx2/orca water_parallel.inp > water_parallel.out
# Verificar o sucesso
grep "ORCA TERMINATED NORMALLY" water_parallel.out
****ORCA TERMINATED NORMALLY****. Isto confirma que a instalação completa, incluindo a compilação do OpenMPI, a configuração do módulo e as correções de execução, está a funcionar perfeitamente.
Conclusão e Boas Práticas
O seu ambiente para o ORCA 6.1.0 está agora totalmente operacional no cluster COARACI. O uso de um módulo pessoal garante uma gestão limpa e flexível do seu ambiente de software.
Fluxo de Trabalho Recomendado:
- Inicie uma nova sessão no COARACI.
- Carregue o seu ambiente ORCA com:
module load orca/6.1.0. - Para execuções em série, pode usar o comando
orca. - Para execuções em paralelo, use sempre o caminho completo para o executável:
/home/users/jferreir/apps/orca_.../orca seu_input.inp > seu_output.out.
Como Citar nas Publicações
É uma prática académica importante citar os recursos computacionais e o software utilizado.
- Citar o Cluster COARACI: "Agradecemos o uso do cluster Coaraci (Fapesp Proc. 2019/17874-0) e ao Center for Computing in Engineering and Sciences at Unicamp (Fapesp Proc. 2013/08293-7)." [1]
- Citar o ORCA: O programa ORCA fornece uma lista detalhada das publicações a citar no final de cada ficheiro de saída. A citação geral do programa é: Neese, F. *Wiley Interdiscip. Rev.: Comput. Mol. Sci.*, **2012**, 2, 73–78. [2]
Comentários
Postar um comentário