Abrir menu principal

Mudanças

Guia Prático do cluster Avicena LCC/CENAPAD-MG

10 833 bytes adicionados, 20h49min de 24 de setembro de 2021
Criou página com '== Abertura de conta == Após o usuário preencher o [https://www.lcc.ufmg.br/abertura-de-contas-formularios formulário de abertura de conta] e enviar para o LCC/CENAPAD-MG,...'
== Abertura de conta ==
Após o usuário preencher o [https://www.lcc.ufmg.br/abertura-de-contas-formularios formulário de abertura de conta] e enviar para o LCC/CENAPAD-MG, caso aprovada pela equipe do LCC/CENAPAD-MG, a conta será aberta e este poderá utlizar o Cluster Avicena LCC/CENAPAD-MG. O usuário receberá os dados de acesso através do email cadastrado no ato da aberto de conta.

A abertura de cada conta estará vinculada a um projeto para fins de contabilidade de uso. No cluster o projeto será identificado pelo grupo unix '''CODIGO_DO_PROJETO''' (código que você receberá por email) e as áreas de trabalho concedidas são:

*áreas privativas dos usuários: /home/'''CODIGO_DO_PROJETO'''/'''SEU_LOGIN'''
*área para software do grupo: /home/projetos/'''CODIGO_DO_PROJETO'''
*storage para dados computacionais: /storage/'''CODIGO_DO_PROJETO'''

Somente os usuários do grupo '''CODIGO_DO_PROJETO''' têm permissões de leitura, escrita e execução nos diretórios /projetos/'''CODIGO_DO_PROJETO''' e /storage/'''CODIGO_DO_PROJETO'''. A organização interna dos diretórios fica a critério dos membros do grupo. O responsável pelas atividades e ações do grupo será o seu pesquisador principal (principal investigator, PI), ou seja, o professor com vínculo empregatício à sua universidade de origem ou um PostDoc. Em geral será o pesquisador principal que solicitará a abertura de projeto e a inclusão de seus colaboradores de pesquisa. Qualquer usuário poderá solicitar à equipe de manutenção a sua inclusão em mais de um projeto diferente, sujeito à aprovação do seu respetivo PI.

<div class="aviso">
'''Atenção!'''<br/>
Para a comunicação das senhas será utilizado o serviço [https://privnote.com Privnote]. Trata-se de um serviço de anotações online no qual o destinatário tem um tempo limite para ler a anotação até que esta se auto-destrua. Os links de acesso ao '''Privnote''' serão enviados posteriormente para cada email cadastrado. No momento em que o link for ‘clicado’, a página será carregada com uma janela contendo uma string de 12 caracteres alfanuméricos. Essa string é a senha gerada para o primeiro acesso do usuário ao cluster. Copie essa string, porque o link será destruído. Recomendamos fortemente que no primeiro acesso o usuário troque a senha com o comando '''passwd'''. Lembre-se da importância de utilizar senhas fortes. Todos os estudos corroboram que a principal razão por detrás da grande maioria dos incidentes de segurança digital é a utilização de senhas fracas.
</div>

== Acesso Remoto ==
O acesso ao Cluster Avicena do LCC/CENAPAD-MG é feito através do ssh através do endereço:

<pre class="bash">
ssh SEU_LOGIN@avicena.cenapad.ufmg.br
</pre>

* substitua a palavra '''SEU_LOGIN''' pelo login que você recebeu após a abertura da conta.


Caso necessite de mais detalhes, acesso os link abaixo:

*[[Acesso remoto para usuários Linux|Acesso remoto para usuários Linux]]

*[[Acesso remoto para usuários Windows|Acesso remoto para usuários Windows]]

== O Cluster Avicena LCC/CENAPAD-MG ==

O Cluster Avicena LCC/CENAPAD-­MG possui 6 nós computacionais distribuídos fisicamente. Os nós possuem configurações heterogêneas agregando um total de 42 núcleos de processamento (cores) e aproximadamente 384 Gigabytes de memória distribuída pela máquina. O potencial de desempenho teórico do cluster traduz-se em 392 Gigaflops (392 bilhões de operações elementares por segundo). O Cluster é interligado através de um switch lógico de alto desempenho seguindo a arquitetura de rede ethernet.

=== Hardware ===
Os servidores que compõem o cluster Avicena do LCC/CENAPAD-MG estão organizados da seguinte forma:

{|class="wikitable" width=50% border=1 cellpadding=35px
!|Quantidade
!|Descrição
!|Hardware
!|Hostnames
|-
|1
|Servidor login (masternode)
|Intel Core 17-9700F 3 Ghz – 64GB DDR4 2 TB hard disk
|masternode
|-
|3
|Nodos computacionais
|Intel Core i7-8700 3.20 Ghz 64GB DDR4 1 TB hard disk
|node[001,002,003]
|-
|1
|Nodos computacionais
|Intel Core 17-9700F 3 Ghz – 64GB DDR4 1 TB hard disk
|node 004
|-
|2
|Nodos computacionais
|AMD Ryzen 3700X 64GB DDR4 12 TB hard disk
|node [005, 006]
|}

Todo o trabalho de desenvolvimento de programas científicos bem como a preparação das tarefas computacionais devem ser realizados no servidor de login '''masternode'''. O workflow que rege um determinado cálculo deve ser expresso num arquivo de ''script'' em linguagem bash e submetido ao [[Slurm|gerenciador de recursos '''Slurm''']].

Extensa fonte de informação sobre o [https://www.schedmd.com/ '''Slurm'''] encontra-se no site dos seus criadores, onde é mantida uma mailing-list para usuários [https://lists.schedmd.com/cgi-bin/mailman/listinfo/slurm-users '''slurm-users''']. Praticamente todos os grandes centros de HPC no mundo apresentam também exemplos de submissão de jobs para códigos específicos das diversas áreas.

=== Software ===
==== Compiladores ====
O cluster está equipado com vários compiladores e ferramentas de análise de desempenho, de depuração e de desenvolvimento. Para além dos compiladores integrados que acompanham a distribuição '''Centos Linux 7.8''', tais como o '''''gcc, gfortran, dbg, openmpi, mpich''''', etc, sob a licença da [http://www.gnu.org/licenses/gpl-3.0.html '''GNU'''], existem também os suítes proprietários da '''Intel''':

* '''Intel(R) Fortran Compiler 2021.1.1 for IA-32 / Intel(R) 64'''
* '''Intel(R) C/C++ Compiler 2021.1.1 for IA-32 / Intel(R) 64'''
* '''Intel(R) MPI Library, Development Kit for Linux OS'''

==== Aplicações e Bibliotecas para desenvolvimento ====
Os pacotes científicos e bibliotecas para desenvolvimento instalados pela equipe de operação do cluster estão localizados nos diretórios diretório_raiz/'''desenvolvimento'''. Os pacotes de domínio público serão instalados sob demanda dos usuários. Está aberta a possibilidade de instalação de pacotes proprietários (licença paga) para uso exclusivo de determinados grupos de pesquisa. Nestes casos, é conveniente haver um contato prévio entre o grupo interessado e a equipe de operação de modo a realizar uma instalação que respeite as cláusulas da licença de contrato do software. Veja abaixo a lista de alguns itens instalados no cluster Avicena:
* '''Pacotes'''
** QUANTUM ESPRESSO 6.6
** GROMACS 2020
** LAMMPS-MAR2021
** GAMESS 2021
** ORCA-4.2.1
** R-4.0.3
** SIESTA-4.1

* '''Programação'''
** GNU-4.8.5
** GNU-9.3.0
** Compiladores Intel 2021
** MPICH-3.4
** OPENMPI-2.1.6
** OPENMPI-4.1.0
** OPENMPI-3.1.4
** PYTHON-2.7
** PYTHON-3.6

* '''Bibliotecas'''
** CURL
** FFTW
** INTEL MKL
** LIBXC
** NETCDF C
** NETCDF FORTRAN
** OPENBLAS
** BLAS/LAPACK
** SCALAPACK

* '''Utilitários'''
** HDF5-1.10.5
** CMAKE-3.20

O cluster '''Avicena''' possui o pacote de gerenciamento [https://github.com/TACC/Lmod '''Lmod'''] [https://github.com/TACC/Lmod (https://github.com/TACC/Lmod)] instalado. Esta ferramenta permite a um usuário alternar entre diferentes versões de um pacote ou compiladores de maneira fácil, limpa e eficaz. O [https://github.com/TACC/Lmod '''Lmod'''] define dinâmicamente as variáveis de ambiente comuns tais como o '''PATH''', '''LD_LIBRARY_PATH''', '''MANPATH''' entre outras, sem que o usuário tenha que as definir no seu arquivo '''.bash_profile''' toda a vez que precisar utilizar uma determinada aplicação científica. Adicionalmente o [https://github.com/TACC/Lmod '''Lmod'''] permite “carregar” e “descarregar” combinações de aplicações/compiladores incluindo as suas dependências. As variáveis de ambiente específicas de cada pacote estão definidas em um arquivo designado por '''''modulefile''''' <ref>Trata-se de um arquivo do tipo ''script'' que pode ser escrito na linguagem
[https://www.tcl.tk TCL] [https://www.tcl.tk (https://www.tcl.tk)] ou [https://www.lua.org Lua] [https://www.lua.org (https://www.lua.org)].</ref> . Os arquivos modulefile (módulos) estão localizados hierárquicamente sob o diretório definido em '''$MODULEPATH''' (i.e., '''/usr/local/ohpc/pub/modulefiles'''). Existem vários comandos que podem ser utilizados para gerenciar os arquivos modulefile:

{|class="wikitable" width=60% border=1 cellpadding=35px
!|Comando
!|Descrição
|-
|'''module avail'''
|Lista todos os módulos disponíveis para carregamento
|-
|'''module spider <pattern>'''
|Procura por um módulo específico (e.g. module spider siesta)
|-
|'''module load <mod1>[mod2 …]'''
|'''''Carrega''''' um módulo ou lista de módulos
|-
|'''module unload <module>'''
|'''''Descarrega''''' o módulo
|-
|'''module list'''
|Lista todos os módulos que estão carregados no ambiente
|-
|'''module purge'''
|Descarrega todos os módulos que estão carregados no ambiente
|-
|'''module display <module>'''
|Mostra o conteúdo do módulo (e.g. quais as variáveis de ambiente que são definidas)
|-
|'''module use <path>'''
|Acrescenta um diretório local de módulos de um usuário aos módulos do sistema
|}

Mostramos abaixo o exemplo de saída na ''console'' quando o comando '''module avail''' é executado:

<pre class="bash">

[prado@masternode ~]$ module avail

------------------------------- /desenvolvimento/modulefiles/intel/oneapi -------------
advisor/2021.1.1 dnnl/latest intel_ipp_intel64/2021.1.1
advisor/latest dnnl—cpu—gomp/2021.1.1 intel_ipp_intel64/latest
cc1/2021.1.1 dnnl—cpu—gomp/latest itac/2021.1.1
ccl/latest dnnl—cpu—iomp/2021.1.1 itac/latest
clck/2021.1.1 dnnl—cpu—iomp/latest mkl/2021.1.1
clck/lacest dnnl—cpu—tbb/2021.1.1 mkl/latest
compiler/2021.1.1 dnnl—cpu—tbb/latest mk132/2021.1.1
compiler/latest dpct/2021.1.1 mk132/latest
compiler32/2021.1.1 dpct/latest mpi/2021.1.1
compiler32/latest dpl/2021.1.1 mpi/latest
compiler—rt/2021.1.1 dpl/latest oclfpga/2021.1.1
compiler—rt/latest init_opencl/2021.1.1 oclfpg/latest
compiler—rt32/2021.1.1 init_opencl/latest tbb/2021 .1.1
compiler—rt32/latest inspector/2021.1.1 tbb/latest
dal/2021.1.1 inspector/latest tbb32/2021.1.1
dal/latest intel_ippcp_ia32/2021.1.1 tbb32/Iatest
debugger/10.0.0 intel_ippcp_ia32/latest vpl/2021.1.1
debugger/latest intel_ippcp_intel64/2021.1.1 vpl/latest
dev—utilities/2021.1..1 intel_ippcp_intel64/latest vtune/2021.1.1
dev—utilities/latest intel_ipp_ia32/2021.1.1 vtune/latest
dnnl/2021.1.1 intel_ipp_ia32/latest

-------------------------------- /usr/share/Modules/modulefiles --------------
cmake/3.20 gromacs/2020
fftw/3.3.9 hdf5/1.10.5
gamess/2021 lammps/2021
gcc/9.3 libxc/5.1.3
gnu—mpi/mpich/3.2.1 netcdf/4.7.4
</pre>

[[Category:Manuais]]
[[Category:Cluster Avicena‏]]
[[Category:Guia Prático do cluster Avicena LCC/CENAPAD-MG‎]]