Implantação #103
Instalação do Gaussian & Linda
| Status: | Resolvida | Start date: | 24 Apr 2010 | |
|---|---|---|---|---|
| Priority: | Normal | Due date: | ||
| Assignee: | Gabriel Winckler | % Done: | 100% | |
| Category: | - | Estimated time: | 20.00 hours | |
| Target version: | - |
Description
O Gaussian e Linda devem ser instalados.
History
#1 Updated by Ney Lemke over 16 years ago
- Tracker changed from Problema to Implantação
#2 Updated by Gabriel Winckler over 16 years ago
- Status changed from Nova to Execução
Pelo telefone falei com o Prof. Tognolli, que está com o software.
Ele está enviando para São Paulo.
#3 Updated by Gabriel Winckler over 16 years ago
- Status changed from Execução to Teste
- % Done changed from 0 to 100
Ontem (29/04) recebi por sedex o software.
Segue um roteiro da instalação do software e adaptações no cluster:
Instalação básica¶
Seguindo o instruído no manual, copiei o tgz e extraí. Depois rodei o script de instalação que só corrige as permissões.
O diretório escolhido como base foi o /opt/gaussian/ e a instalação ocorreu em /opt/gaussian/g09
Grupo de acesso¶
Como o Prof. Adelino requisitou explicitamente um controle sobre o uso do software, deixando claro que outros grupos de pesquisa também poderão utilizar, criei um grupo "gaussian" e atribui a esse grupo o software:
chgrp -R gaussian /opt/gaussian/g09
Com isso, para utiliza o software, o usuário precisa ser incluído nesse grupo.
Profile e ld.so.conf¶
Para carregar as variáveis de ambiente, foram criados os seguintes arquivos na Access e nos WorkerNodes:
/etc/profile.d/gaussian.sh
if [ -r /opt/gaussian/g09/bsd/g09.profile ]
then
g09root=/opt/gaussian
GAUSS_SCRDIR=/tmp
export g09root GAUSS_SCRDIR
. /opt/gaussian/g09/bsd/g09.profile
fi
/etc/profile.d/gaussian.csh
if (-r /opt/gaussian/g09/bsd/g09.login) then
setenv g09root "/opt/gaussian"
setenv GAUSS_SCRDIR "/tmp"
source /opt/gaussian/g09/bsd/g09.login
endif
/etc/ld.so.conf.d/gaussian.conf
/opt/gaussian/g09/bsd /opt/gaussian/g09/local /opt/gaussian/g09/extras /opt/gaussian/g09
Adaptações do universo paralelo do condor¶
Como esse programa é paralelo mas não utiliza MPI, modifiquei o job_wrapper do condor para identificar uma flag NoMPI
/opt/condor/bin/job_wrapper.sh
#!/bin/bash
source /etc/profile
UNIVERSE=$($(condor_config_val libexec)/condor_chirp get_job_attr JobUniverse 2>/dev/null)
if [ $? == 0 ] && [ $UNIVERSE == 11 ];
then
NOMPI=$($(condor_config_val libexec)/condor_chirp get_job_attr NoMPI 2>/dev/null)
if [ ${NOMPI}x == "TRUE"x ]
then
exec "$@"
else
exec /opt/condor/bin/condor-impi.sh "$@"
fi
else
exec "$@"
fi
Criação do job_wrapper específico para o Gaussian¶
/opt/gaussian/gaussian-parallel.sh
#!/bin/sh
_CONDOR_PROCNO=$_CONDOR_PROCNO
_CONDOR_NPROCS=$_CONDOR_NPROCS
GAUSSIAN=/opt/gaussian/g09/g09
finalize()
{
exit
}
trap finalize TERM
#Create a empty response file
touch ${1}.log
if [ $_CONDOR_PROCNO -eq 0 ]
then
#Get the list of slots
SLOTS=$($(condor_config_val libexec)/condor_chirp get_job_attr AllRemoteHosts)
nodes=$(echo $SLOTS | sed -e 's/\"\(.*\)\".*/\1/' -e 's/,/\n/g' -e 's/slot.\@//g' -e 's/.local/i/g' | sort | uniq -c | awk '{print $2":"$1}' | tr '\n' ',')
echo $nodes 1>&2
#Contact the worker noder by SSH
export GAUSS_LFLAGS=" -opt 'Tsnet.Node.lindarsharg: ssh'"
#Add the nodes list
sed -i 1i"%LindaWorkers=$nodes" ${1}.com
##Create a empty response file
#touch ${2}.log
$GAUSSIAN $@
else
sleep 10
fi
exit $?
Testes e exemplo de submissão¶
Utilizando os exemplos que acompanham o software, testei diversas submissões, seriais e paralelas.
Criei uma página na wiki com o modelo de submissão:
https://www.ncc.unesp.br/twiki/bin/view/GuiaUsuario/GaussianSubmit
#4 Updated by Gabriel Winckler over 16 years ago
- Project changed from NCC to Suporte (GridUNESP)
#5 Updated by Gabriel Winckler about 16 years ago
- Status changed from Teste to Resolvida