Bem-vindo ao mundo de Marvin
Bem-vindo à documentação do HPC Marvin! Este manual foi criado para ajudar os usuários e mantenedores do sistema a entenderem como utilizar e administrar o HPC Marvin, um sistema de computação de alto desempenho que permite aos usuários realizar cálculos computacionais intensivos em uma plataforma de cluster de servidores. O sistema oferece uma ampla variedade de ferramentas e recursos para apoiar a pesquisa científica e a descoberta. Apesar de ser um pouco mal-humorado às vezes, Marvin está sempre disposto a te ajudar!
Marvin, O Guia do mochileiro das galáxias
Sobre a documentação 📚
O objetivo desta documentação é fornecer informações claras e detalhadas sobre o HPC Marvin, para que os usuários possam aproveitar ao máximo suas capacidades. O manual é organizado em uma série de capítulos, cada um cobrindo os principais tópicos que os usuários precisam conhecer para utilizar o sistema com eficiência.
Sobre o HPC Marvin
Marvin é nome do cluster de alta performance (High Performance Computing - HPC) do LNBio/CNPEM. O HPC foi adquirido em 2022 da empresa Atos, empresa que forneceu alguns dos maiores supercomputadores do Brasil, como o Santos Dumont, e do mundo Top500, pelo valor de USD 350mil. O cluster está hospedado no Data Center do Sirius/LNLS.
Acesso ao HPC Marvin 🔑
Para começar a usar o HPC Marvin, veja os Primeiros Passos. Este capítulo descreve os requisitos para acesso, as políticas de uso e as etapas necessárias para obter as credenciais.
Ferramentas do HPC Marvin 🛠️
O HPC Marvin oferece uma ampla variedade de ferramentas de computação de alto desempenho que são úteis para diferentes tipos de pesquisa, disponível em Programas e Aplicativos. Este capítulo descreve as principais ferramentas disponíveis e fornece instruções sobre como utilizá-las no sistema.
Esperamos que este manual seja útil para você enquanto usa o HPC Marvin. Se você tiver alguma dúvida ou feedback sobre o conteúdo deste manual, não hesite em entrar em contato conosco.
Primeiros Passos
Antes de começar a utilizar o HPC Marvin, é importante seguir alguns passos iniciais para garantir que tudo esteja configurado corretamente. Este capítulo irá guiá-los pelos primeiros passos necessários para começar a utilizar o sistema.
Para ativar seu usuário no sistema no HPC Marvin é preciso, fazer um primeiro acesso via terminal no ssh
(Secury SHell), que é um protocolo de rede seguro que permite a comunicação com servidores remotos. Para se conectar ao sistema, siga as instruções abaixo.
Nos tutoriais, utilizaremos o <> para indicar variáveis. Sempre que aparecer algo entre <>, subistitua pelo valor adequado, (sem digitar o <>).
Exemplo: Se você é a Marie Skłodowska-Curie e seu usuário é marie.curie, ao ver <seu.login.cnpem>@lnbio.cnmpem.br
, digite marie.curie@lnbio.cnpem.br
para executar.
IMPORTANTE
Após o primeiro login, você já está apto a ler e gravar arquivos na aba Files
do Open OnDemand (ood), mas ainda não vai conseguir criar jobs ou usar o Interactive Apps
.
A autorização é feita manualmente, para garantir as permissões entre em contato os administradores:
-
Via Teams
- Pablo Wesley -
pablo.silva@lnbio.cnpem.br
- João Guerra -
joao.guerra@lnbio.cnpem.br
- José Geraldo -
jose.pereira@lnbio.cnpem.br
- Pablo Wesley -
-
Via Email
edb@lnbio.cnpem.br
com o assunto Recursos HPC-Marvin
DEPOIS DO PRIMEIRO ACESSO, É POSSÍVEL ACESSAR O HPC MARVIN EXCLUSIVAMENTE PELO NAVEGADOR!
Primeiro Acesso🚪
Para acessar o HPC Marvin, comece abrindo o terminal. Se estiver usando Windows, abra o PowerShell ; se estiver usando Linux ou MacOS, abra o terminal . Para acessar o HPC Marvin, use o comando:
ssh <seu.login.cnpem>@marvin.cnpem.br
Se estiver no Windows e receber o seguinte erro, tente usar outro computador ou peça ajuda ao TIC para instalar o ssh
.
ssh: O termo 'ssh' não é reconhecido como nome de cmdlet, função, arquivo de script
ou programa operável. Verifique a grafia do nome ou, se um caminho tiver sido incluído,
veja se o caminho está correto e tente novamente.
Na linha:1 caractere:1
+ ssh marie.curie@marvin.cnpem.br
+ ~~~
+ CategoryInfo : ObjectNotFound (ssh:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
Quando solicitado, digite sua senha institucional. Dependendo do seu terminal, você pode não ver nada na tela quando digita sua senha por motivos de segurança. Isso é normal. Se cometer algum erro, tente novamente.
Você pode receber um aviso solicitando sua confirmação antes de continuar conectando.
[...] Are you sure you want to continue connecting (yes/no/[fingerprint])?
Digite yes
e pressione enter. Se tudo correu bem, você verá o cursor piscando no terminal, com um texto semelhante a:
[<seu.login.cnpem>@marvin ~]$
Digite o comando ls
para verificar o conteúdo do diretório, e você deverá ver uma pasta chamada "ondemand". Confirme se a pasta está presente.
Acesso pelo navegador
Para acessar o cluster pelo navegador, abra o seu navegador e digite o seguinte endereço na barra de endereços:
https://marvin.cnpem.br
Lembre-se, este site só estará disponível na rede interna. Para acessá-lo de fora do centro, é necessário usar a VPN. Caso não tenha este acesso à VPN, entre em contato com o TIC.
Na página que abrir, faça login com a sua senha institucional. Você só precisa digitar o que vem antes do '@' do seu email.
Se tudo der certo, você verá a tela de login abaixo:
Vídeo Resumo
Completar essas etapas iniciais é essencial para garantir que você possa utilizar o HPC Marvin de forma eficiente. Se você tiver alguma dúvida ou precisar de ajuda, não hesite em entrar em contato com a equipe de suporte do sistema.
Arquitetura e Sistema de Filas
Neste capítulo, apresentaremos uma visão geral da arquitetura do HPC Marvin e do sistema de filas que gerencia as solicitações de processamento dos usuários.
Arquitetura do HPC Marvin 💻
Nesta seção, descreveremos a arquitetura geral do HPC Marvin, incluindo informações sobre o hardware utilizado, o sistema operacional e o software instalado.
Hardware
Nesta seção, apresentaremos a infraestrutura de hardware utilizada no HPC Marvin, incluindo informações sobre os processadores, memória RAM, armazenamento em disco, entre outros.
O HPC Marvin é composto por um cluster de servidores interconectados dedicados ao processamento intensivo e armazenamento de dados. O cluster é composto pelos seguintes componentes:
01
servidor de login;01
servidor de processamento em CPU e 1TB de memória RAM;01
servidor de processamento em GPU equipado com 8 NVIDIA A100 40GB e 2TB de memória RAM;- Sistema de armazenamento de dados (storage) Lustre contendo:
06
servidores com SSD/NVMe, totalizando 300TB de espaço disponível.
Com essa infraestrutura de hardware, o HPC Marvin é capaz de oferecer um ambiente de processamento robusto e eficiente para as necessidades computacionais dos usuários.
Sistema Operacional
O sistema operacional utilizado no Marvin é o Rocky Linux 8.5.
Programas e Aplicativos
Os usuários são estimulados a utilizarem programas instalados em containers singularity ou em ambientes virtuais como conda.
Em /opt/images
o usuário encontrará imagens do singularity (.sif) para algumas aplicações. Essas imagens foram feitas pela nossa equipe ou por usuários. Aliás, ficamos muito felizes quando usuários pedem para compartilharmos as imagens que eles criaram!
Sistema de Filas 📋
Em ambientes HPC, múltiplos usuários podem estar logados simultaneamente. Na tentativa de atender a necessidade de todos são utilizados programas que gerenciam a alocação de recursos (cpus, memória, etc) e a ordem de execução das tarefas. No Marvin utilizamos o SLURM.
Parte dessa organização ocorre por meio de filas de execução, chamadas de partitions no SLURM. Essas filas guardam as tarefas que os usuários submetem e, assim que houver recurso disponíveis, iniciam a sua execução.
As filas do Marvin
No Marvin temos filas específicas de acordo com o recurso desejado pelo usuário: apenas CPU, CPU+GPU(5GB) ou CPU+GPU(40GB). Também dividimos pelo tempo de execução que o usuário deseja reservar para a tarefa: até 30 min, 12 horas, 5 dias e 15 dias.
Assim as filas são:
Fila | Tempo limite | cpus-per-task (limite) | mem-per-cpu (default) | mem-per-cpu (limite) | GPU |
---|---|---|---|---|---|
debug-cpu | 30 minutos | 2 | 1GB | 2GB | Não |
gui-cpu | 12 horas | 8 | 1GB | 4GB | Não |
short-cpu | 5 dias | 64 | 1GB | 4GB | Não |
long-cpu | 15 dias | 32 | 1GB | 4GB | Não |
debug-gpu-small | 30 minutos | 2 | 1GB | 2GB | Sim (5GB) |
gui-gpu-small | 12 horas | 8 | 1GB | 4GB | Sim (5GB) |
short-gpu-small | 5 dias | 64 | 1GB | 8GB | Sim (5GB) |
long-gpu-small | 15 dias | 32 | 1GB | 8GB | Sim (5GB) |
debug-gpu-big | 30 minutos | 2 | 1GB | 2GB | Sim (40GB) |
gui-gpu-big | 12 horas | 8 | 1GB | 4GB | Sim (40GB) |
short-gpu-big | 5 dias | 64 | 1GB | 8GB | Sim (40GB) |
long-gpu-big | 15 dias | 32 | 1GB | 8GB | Sim (40GB) |
Políticas de filas
Até o momento, nossa opção tem sido por estimular boas práticas ao invés de estabelecer regras mais restritivas.
Abaixo estão algumas dicas em relação a escolha e uso das filas:
- Cada fila tem uma quantidade de recursos reservados por padrão (default). Normalmente os valores são bem inferiores ao limite máximo de recursos que fila permite reservar por tarefa. Tente escolher sempre a fila capaz de fornecer os recursos necessário para atender a execução da sua tarefa, faça os ajustes e evite deperdícios!
- Se a tarefa não utiliza a GPU o usuário deve preferir as filas cpu como
short-cpu
elong-cpu
. - Se o usuário deseja identificar um erro que está ocorrendo em uma tarefa (debugar) é preferível que sejam utilizadas as filas de debug como
debug-cpu
,debug-gpu-small
edebug-gpu-big
. - Tarefas executadas de forma interativas, o que é mais comum quando se utiliza interface gráfica como VNC, RStudio e Jupyter, são menos eficientes no uso de recurso computacionais, mas podem ser úteis para análises rápidas de resultados e preparação de tarefas. Por esses motivos foram criadas as filas gui (Graphical User Interface). Intencionalmente elas tem tempo limite de 12 horas para que os usuários não esqueçam tarefas ativas e ociosas de um dia para o outro.
- O usuário deve evitar submeter muitos jobs simultaneamente a fim de evitar uma monopolização das filas por um longo período.
- Nas filas short-cpu e short-gpu é possível alocar, respectivamente, até 4GB e 8GB de memória RAM por cpu (parâmetro mem-per-cpu do SLURM), mas por padrão são alocados 1GB por cpu. Ajuste esse parâmetro e o número de cpus da tarefa antes de pensar em utilizar as filas bigmen e highmem.
- Ainda sobre as filas bigmen e highmem, elas são para casos excepcionais, pois reservam uma quantidade enorme de memória por cpu, até 132GB, o que pode impactar outros usuários.
Submissão de trabalhos
Aqui, explicaremos como os usuários podem submeter seus trabalhos para o sistema de filas do HPC Marvin, incluindo as opções de configuração disponíveis.
Monitoramento de trabalhos
Nesta seção, descreveremos como os usuários podem monitorar o status de seus trabalhos, incluindo informações sobre o tempo de execução e a utilização dos recursos do sistema.
Submissão de Trabalhos
Neste capítulo, você encontrará todas as informações necessárias para submeter seus trabalhos ao cluster HPC Marvin. Serão abordados diferentes tipos de trabalhos, como submeter, monitorar e gerenciar esses trabalhos em execução.
Tipos de Trabalhos
Nesta seção, vamos explicar os diferentes tipos de trabalhos que podem ser submetidos ao cluster HPC Marvin. Serão abordados:
- Tipos de trabalho suportados pelo cluster
- Como escolher o tipo de trabalho mais adequado para a sua tarefa
- Requisitos específicos para cada tipo de trabalho
Scripts de Submissão de Trabalhos
Nesta seção, você encontrará informações detalhadas sobre como criar scripts para submeter seus trabalhos ao cluster HPC Marvin. Os seguintes tópicos serão abordados:
- Como escrever um script de submissão de trabalho
- Como enviar o script para o cluster
- Exemplos de scripts de submissão de trabalho
Monitoramento de Trabalhos em Execução
Nesta seção, você encontrará informações sobre como monitorar os trabalhos em execução no cluster HPC Marvin. Serão abordados os seguintes tópicos:
- Como verificar o status dos trabalhos em execução
- Como visualizar informações sobre a carga do sistema
- Como determinar o tempo de espera dos trabalhos
Gerenciamento de Trabalhos
Nesta seção, você encontrará informações sobre como gerenciar os trabalhos no cluster HPC Marvin. Serão abordados os seguintes tópicos:
- Como cancelar um trabalho
- Como restringir o número de trabalhos submetidos
- Como priorizar trabalhos em execução
Com essas informações, você estará pronto para submeter seus trabalhos ao cluster HPC Marvin. Caso você precise de ajuda adicional, entre em contato com a equipe de suporte do sistema.
Gerenciamento de Dados
Este capítulo aborda as estratégias de gerenciamento de dados para o cluster HPC Marvin, incluindo as melhores práticas para armazenamento, transferência e backup de dados.
Armazenamento de Dados 🗃️
O HPC Marvin fornece armazenamento em disco para os usuários. Este tópico apresenta informações sobre as opções de armazenamento disponíveis e as melhores práticas para gerenciamento de dados. Serão discutidos os seguintes tópicos:
- Opções de armazenamento: disco local e compartilhado.
- Montagem e desmontagem de sistemas de arquivos.
- Práticas recomendadas de gerenciamento de espaço em disco.
- Gerenciamento de permissões de acesso a arquivos.
Transferência de Arquivos 📁🔄💻
Para começar a utilizar o HPC Marvin, é necessário transferir seus arquivos para o sistema. Para transferir seus arquivos, use os comandos:
- SFTP (SSH File Transfer Protocol): O SFTP é um protocolo seguro que usa a criptografia SSH para transferir arquivos. Ele é útil quando você precisa transferir arquivos entre sistemas operacionais diferentes ou quando a transferência precisa ser segura. Para transferir um arquivo usando SFTP
sftp <seu.login.cnpem>@marvin.cnpem.br
Isso irá se conectar ao host especificado como o usuário especificado. Uma vez conectado, você pode usar comandos como ls
, cd
, put
e get
para listar, navegar e transferir arquivos.
- SCP (Secure Copy Protocol)[^2]: SCP é outro protocolo seguro que usa a criptografia SSH para transferir arquivos. Ele é semelhante ao SFTP, mas é mais simples de usar e não tem recursos de navegação.
Para transferir um arquivo usando SCP, use o comando:
scp file.txt <seu.login.cnpem>@marvin.cnpem.br:/caminho/de/destino/
Para transferir um diretório usando SCP, use o comando:
scp -r directory/ <seu.login.cnpem>@marvin.cnpem.br:/caminho/de/destino/
Isso irá copiar o arquivo file.txt
e o diretório directory
para o diretório especificado no HPC Marvin (marvin.cnpem.br) pelo login do usuário.
- Rsync: O Rsync é um protocolo de transferência de arquivos que pode sincronizar diretórios entre hosts. Ele usa uma conexão segura SSH e é útil para transferir grandes quantidades de dados ou sincronizar arquivos entre sistemas. Para usar o Rsync, use o comando:
rsync -avz origem/ <seu.login.cnpem>@marvin.cnpem.br:/caminho/de/destino/
Isso irá sincronizar o diretório source com o diretório destination no host especificado como o usuário especificado. O -a
mantém as permissões de arquivos, o -v
mostra o progresso da transferência e o -z
comprime os dados antes de transferi-los.
Backup de Dados 💾
O backup de dados é essencial para garantir a integridade dos dados armazenados no HPC Marvin. Este tópico aborda as melhores práticas para backup de dados, incluindo:
- Opções de backup disponíveis.
- Como agendar backups regulares.
- Gerenciamento de restauração de dados.
Esperamos que este capítulo ajude você a gerenciar seus dados de forma eficiente e segura no HPC Marvin. Se você tiver alguma dúvida ou feedback sobre o conteúdo deste manual, não hesite em entrar em contato conosco.
Permissões de Acesso 🔑
Para garantir a segurança e a privacidade dos dados, cada diretório de usuário no HPC Marvin possui permissão 700 ou u:rwx, g:---, o:---
. Isso significa que apenas o próprio usuário "u" tem permissão de leitura "r", escrita "w" e execução "x", enquanto membros do grupo "g" e outros usuários "o" não têm acesso.
No entanto, em alguns casos, você pode precisar permitir o acesso a determinados diretórios, como para compartilhar um projeto com outros usuários. Abaixo, fornecemos um passo-a-passo básico de como você pode fazer isso.
Passo-a-passo básico
- Para compartilhar um diretório com outros usuários, você precisa alterar as permissões do diretório HOME para 711. Para isso, digite o comando
chmod 711 /home/<seu_nome_de_usuário>
no terminal. - Em seguida, utilize o comando
setfacl
para adicionar permissões de acesso a outros usuários. Por exemplo, para conceder permissão de leitura ao usuário "usuario1" no diretório "pasta_compartilhada", use o comandosetfacl -m u:usuario1:rx /caminho/da/pasta_compartilhada
. _Obs: ox
foi adicionado para que o usuário consiga executar o comandols
. - Para adicionar mais permissões, você pode usar outras opções como "w" para escrita e "x" para execução. Por exemplo, para dar ao usuário "usuario1" permissão de escrita e execução na pasta "pasta_compartilhada", use o comando
setfacl -m u:usuario1:rwx /caminho/da/pasta_compartilhada
. - Para verificar as permissões atuais do diretório, você pode usar o comando
getfacl
seguido do caminho do diretório. Por exemplo, para verificar as permissões atuais do diretório "pasta_compartilhada", você usaria o comandogetfacl /caminho/da/pasta_compartilhada
. Isso mostrará uma lista de usuários e suas respectivas permissões. - Se você quiser remover as permissões de acesso de um usuário específico, utilize o comando
setfacl -x
seguido do usuário desejado. Por exemplo, para remover as permissões de acesso do usuário "usuario1" no diretório "pasta_compartilhada", você usaria o comandosetfacl -x u:usuario1 /caminho/da/pasta_compartilhada
. - Para remover todas as permissões de acesso, você pode usar o comando
setfacl -b
seguido do caminho do diretório. Por exemplo, para remover todas as permissões de acesso no diretório "pasta_compartilhada", use comandosetfacl -b /caminho/da/pasta_compartilhada
. - Após remover as permissões, é recomendável verificar novamente as permissões com o comando
getfacl
para garantir que as permissões foram removidas corretamente.
Para melhor compreensão
Se você deseja aprimorar seus conhecimentos sobre o controle de acesso em sistemas Linux, aqui estão algumas fontes úteis:
- An introduction to Linux Access Control Lists (ACLs)
- Red Hat Docs - Chapter25. Managing file permissions
- Red Hat Docs - Chapter 28. Managing the Access Control List
- Arch Linux Wiki - Access Control Lists (Português)
- Using ACLs
Além disso, as páginas de manual (man pages) são excelentes recursos que estão disponíveis diretamente no terminal, basta digitar man <nome_da_pagina>
. Você também pode acessá-las online. Aqui estão algumas man pages úteis relacionadas a listas de controle de acesso (Access Control Lists - ACL):
- chmod
- acl
- setfacl
- getfacl
Programas e Aplicativos
Este capítulo apresenta uma lista dos programas e aplicativos disponíveis no HPC Marvin, juntamente com informações sobre como usá-los, instalá-los e configurá-los.
Módulos
O HPC Marvin utiliza o ambiente de módulos para gerenciar diferentes versões de software e seus requisitos. Os módulos permitem que os usuários selecionem e carreguem os softwares necessários para suas tarefas de forma conveniente. Este capítulo explica como usar o ambiente de módulos para carregar e descarregar pacotes de software.
Bibliotecas
Além dos programas e aplicativos, o HPC Marvin oferece uma ampla gama de bibliotecas de software que são úteis para diferentes tipos de tarefas computacionais. Este capítulo descreve as bibliotecas disponíveis, como usá-las e como carregá-las no ambiente de módulos.
Compiladores
O HPC Marvin possui uma variedade de compiladores de linguagem de programação disponíveis para uso pelos usuários. Este capítulo descreve os compiladores disponíveis, como usá-los e como carregá-los no ambiente de módulos.
Aplicativos
O HPC Marvin oferece muitos aplicativos para uso pelos usuários em uma ampla variedade de áreas de pesquisa. Este capítulo descreve os aplicativos disponíveis, como usá-los e como instalar novos aplicativos.
Outros Softwares
Este capítulo também apresenta outros softwares disponíveis no HPC Marvin que não se enquadram nas categorias acima. Isso pode incluir utilitários de sistema, ferramentas de desenvolvimento de software e outras aplicações que podem ser úteis para tarefas de computação de alto desempenho.
Esperamos que este capítulo o ajude a descobrir e utilizar os recursos de software disponíveis no HPC Marvin. Caso tenha alguma dúvida ou feedback sobre o conteúdo deste capítulo, entre em contato conosco.
AlphaFold
O AlphaFold é um software de modelagem de estrutura proteicas utilizando redes neurais artificiais (Deep Learning). Ele também é capaz de modelar multímeros e complexos.
Para mais informações sobre o uso do AlphaFold acesse o repositório.
Abaixo descrevemos resumidamente como rodar o AlphaFold no MARVIN (marvin.cnpem.br). Está nos planos tornar a tarefa mais fácil e amigável aos usuários, por isso, essa página irá mudar ao longo do tempo.
Como usar
Para utilizar o AlphaFold são necessários os seguintes passos:
- criar uma pasta contendo o arquivo fasta da(s) proteína(s) para modelar. ex
fasta_dir
- criar um script da tarefa para submetê-la ao SLURM através do
sbatch
Abaixo um exemplo da tarefa para submissão. Após salvar o arquivo (ex. nova_tarefa_alphafold.sh
), fazemos a submissão para que ele entre na fila de execucão com o comando sbatch (ex. sbatch nova_tarefa_alphafold.sh
).
#!/bin/sh
#SBATCH --job-name=alphafold
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=4
#SBATCH --partition=short-gpu-small
#SBATCH --mem-per-cpu=8G
#SBATCH --gres=gpu:1g.5gb:1
# essa variável aponta para o banco de dados utilizado pelo alphafold (NÃO ALTERE)
ALPHAFOLD_DB=/public/alphafold_db_20220825
# imagem do singularity onde o alphafold está instalá-do (NÃO ALTERE)
ALPHAFOLD_SIF=/opt/images/alphafold/alphafold-2_3_2.sif
# essa variável aponta para o arquivo fasta (MUDE PARA O SEU ARQUIVO)
FASTA_FILE=./fasta_dir/P01308.fasta
# nome da pasta onde os modelos e resultados serão salvos (PODE MUDAR PARA UM NOME QUE ESCOLHER)
OUTPUT_DIR=./results
# comando de execução do AlphaFold
singularity run --nv -B $ALPHAFOLD_DB:/database $ALPHAFOLD_SIF \
--fasta_paths=$FASTA_FILE \
--output_dir=$OUTPUT_DIR \
--data_dir=/database/ \
--template_mmcif_dir=/database/pdb_mmcif/mmcif_files/ \
--obsolete_pdbs_path=/database/pdb_mmcif/obsolete.dat \
--uniref90_database_path=/database/uniref90/uniref90.fasta \
--mgnify_database_path=/database/mgnify/mgy_clusters_2018_12.fa \
--pdb70_database_path=/database/pdb70/pdb70 \
--uniclust30_database_path=/database/uniclust30/uniclust30_2018_08/uniclust30_2018_08 \
--bfd_database_path=/database/bfd/bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt \
--max_template_date=`date +'%Y-%m-%d'` \
--use_gpu_relax
Abaixo estão os argumentos aceitos pelo AlphaFold.
❯ singularity run ~/singularity-defs/singularity-alphafold/alphafold.sif --helpshort
Full AlphaFold protein structure prediction script.
flags:
/opt/alphafold/run_alphafold.py:
--[no]benchmark: Run multiple JAX model evaluations to obtain a timing that excludes the compilation time, which should be
more indicative of the time required for inferencing many proteins.
(default: 'false')
--bfd_database_path: Path to the BFD database for use by HHblits.
--data_dir: Path to directory of supporting data.
--db_preset: <full_dbs|reduced_dbs>: Choose preset MSA database configuration - smaller genetic database config (reduced_dbs)
or full genetic database config (full_dbs)
(default: 'full_dbs')
--fasta_paths: Paths to FASTA files, each containing a prediction target that will be folded one after another. If a FASTA
file contains multiple sequences, then it will be folded as a multimer. Paths should be separated by commas. All FASTA
paths must have a unique basename as the basename is used to name the output directories for each prediction.
(a comma separated list)
--hhblits_binary_path: Path to the HHblits executable.
(default: '/usr/bin/hhblits')
--hhsearch_binary_path: Path to the HHsearch executable.
(default: '/usr/bin/hhsearch')
--hmmbuild_binary_path: Path to the hmmbuild executable.
(default: '/usr/bin/hmmbuild')
--hmmsearch_binary_path: Path to the hmmsearch executable.
(default: '/usr/bin/hmmsearch')
--jackhmmer_binary_path: Path to the JackHMMER executable.
(default: '/usr/bin/jackhmmer')
--kalign_binary_path: Path to the Kalign executable.
(default: '/usr/bin/kalign')
--max_template_date: Maximum template release date to consider. Important if folding historical test sets.
--mgnify_database_path: Path to the MGnify database for use by JackHMMER.
--model_preset: <monomer|monomer_casp14|monomer_ptm|multimer>: Choose preset model configuration - the monomer model, the
monomer model with extra ensembling, monomer model with pTM head, or multimer model
(default: 'monomer')
--models_to_relax: <all|best|none>: The models to run the final relaxation step on. If `all`, all models are relaxed, which
may be time consuming. If `best`, only the most confident model is relaxed. If `none`, relaxation is not run. Turning off
relaxation might result in predictions with distracting stereochemical violations but might help in case you are having
issues with the relaxation stage.
(default: 'best')
--num_multimer_predictions_per_model: How many predictions (each with a different random seed) will be generated per model.
E.g. if this is 2 and there are 5 models then there will be 10 predictions per input. Note: this FLAG only applies if
model_preset=multimer
(default: '5')
(an integer)
--obsolete_pdbs_path: Path to file containing a mapping from obsolete PDB IDs to the PDB IDs of their replacements.
--output_dir: Path to a directory that will store the results.
--pdb70_database_path: Path to the PDB70 database for use by HHsearch.
--pdb_seqres_database_path: Path to the PDB seqres database for use by hmmsearch.
--random_seed: The random seed for the data pipeline. By default, this is randomly generated. Note that even if this is set,
Alphafold may still not be deterministic, because processes like GPU inference are nondeterministic.
(an integer)
--small_bfd_database_path: Path to the small version of BFD used with the "reduced_dbs" preset.
--template_mmcif_dir: Path to a directory with template mmCIF structures, each named <pdb_id>.cif
--uniprot_database_path: Path to the Uniprot database for use by JackHMMer.
--uniref30_database_path: Path to the UniRef30 database for use by HHblits.
--uniref90_database_path: Path to the Uniref90 database for use by JackHMMER.
--[no]use_gpu_relax: Whether to relax on GPU. Relax on GPU can be much faster than CPU, so it is recommended to enable if
possible. GPUs must be available if this setting is enabled.
--[no]use_precomputed_msas: Whether to read MSAs that have been written to disk instead of running the MSA tools. The MSA
files are looked up in the output directory, so it must stay the same between multiple runs that are to reuse the MSAs.
WARNING: This will not check if the sequence, database or configuration have changed.
(default: 'false')
Try --helpfull to get a list of all flags.
Versões disponíveis
versão | imagem sigularity |
---|---|
2.3.2 | alphafold-2_3_2.sif |
2.2.4 | alphafold-2_2_4.sif |
data de atualização: 2023-05-02
OpenFold
Como usar
#!/bin/sh
#SBATCH --job-name=openfold
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=8
#SBATCH --partition=short-gpu
#SBATCH --gpus=1
module load openfold
ALPHAFOLD_DB=/public/alphafold_db_20220825
singularity run --nv -B $ALPHAFOLD_DB:/database /opt/images/openfold.sif \
./fasta_dir \
/database/pdb_mmcif/mmcif_files/ \
--uniref90_database_path /database/uniref90/uniref90.fasta \
--mgnify_database_path /database/mgnify/mgy_clusters_2018_12.fa \
--pdb70_database_path /database/pdb70/pdb70 \
--uniclust30_database_path /database/uniclust30/uniclust30_2018_08/uniclust30_2018_08 \
--output_dir ./results \
--bfd_database_path /database/bfd/bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt \
--model_device cuda:0 \
--jackhmmer_binary_path /opt/conda/bin/jackhmmer \
--hhblits_binary_path /opt/conda/bin/hhblits \
--hhsearch_binary_path /opt/conda/bin/hhsearch \
--kalign_binary_path /opt/conda/bin/kalign \
--config_preset "model_1_ptm" \
--openfold_checkpoint_path /database/openfold_params/finetuning_ptm_1.pt
usage: run_pretrained_openfold.py [-h]
[--use_precomputed_alignments USE_PRECOMPUTED_ALIGNMENTS]
[--output_dir OUTPUT_DIR]
[--model_device MODEL_DEVICE]
[--config_preset CONFIG_PRESET]
[--jax_param_path JAX_PARAM_PATH]
[--openfold_checkpoint_path OPENFOLD_CHECKPOINT_PATH]
[--save_outputs] [--cpus CPUS]
[--preset {reduced_dbs,full_dbs}]
[--output_postfix OUTPUT_POSTFIX]
[--data_random_seed DATA_RANDOM_SEED]
[--skip_relaxation]
[--multimer_ri_gap MULTIMER_RI_GAP]
[--trace_model] [--subtract_plddt]
[--uniref90_database_path UNIREF90_DATABASE_PATH]
[--mgnify_database_path MGNIFY_DATABASE_PATH]
[--pdb70_database_path PDB70_DATABASE_PATH]
[--uniclust30_database_path UNICLUST30_DATABASE_PATH]
[--bfd_database_path BFD_DATABASE_PATH]
[--jackhmmer_binary_path JACKHMMER_BINARY_PATH]
[--hhblits_binary_path HHBLITS_BINARY_PATH]
[--hhsearch_binary_path HHSEARCH_BINARY_PATH]
[--kalign_binary_path KALIGN_BINARY_PATH]
[--max_template_date MAX_TEMPLATE_DATE]
[--obsolete_pdbs_path OBSOLETE_PDBS_PATH]
[--release_dates_path RELEASE_DATES_PATH]
fasta_dir template_mmcif_dir
positional arguments:
fasta_dir Path to directory containing FASTA files, one sequence
per file
template_mmcif_dir
optional arguments:
-h, --help show this help message and exit
--use_precomputed_alignments USE_PRECOMPUTED_ALIGNMENTS
Path to alignment directory. If provided, alignment
computation is skipped and database path arguments are
ignored.
--output_dir OUTPUT_DIR
Name of the directory in which to output the
prediction
--model_device MODEL_DEVICE
Name of the device on which to run the model. Any
valid torch device name is accepted (e.g. "cpu",
"cuda:0")
--config_preset CONFIG_PRESET
Name of a model config preset defined in
openfold/config.py
--jax_param_path JAX_PARAM_PATH
Path to JAX model parameters. If None, and
openfold_checkpoint_path is also None, parameters are
selected automatically according to the model name
from openfold/resources/params
--openfold_checkpoint_path OPENFOLD_CHECKPOINT_PATH
Path to OpenFold checkpoint. Can be either a DeepSpeed
checkpoint directory or a .pt file
--save_outputs Whether to save all model outputs, including
embeddings, etc.
--cpus CPUS Number of CPUs with which to run alignment tools
--preset {reduced_dbs,full_dbs}
--output_postfix OUTPUT_POSTFIX
Postfix for output prediction filenames
--data_random_seed DATA_RANDOM_SEED
--skip_relaxation
--multimer_ri_gap MULTIMER_RI_GAP
Residue index offset between multiple sequences, if
provided
--trace_model Whether to convert parts of each model to TorchScript.
Significantly improves runtime at the cost of lengthy
'compilation.' Useful for large batch jobs.
--subtract_plddt "Whether to output (100 - pLDDT) in the B-factor
column instead of the pLDDT itself
--uniref90_database_path UNIREF90_DATABASE_PATH
--mgnify_database_path MGNIFY_DATABASE_PATH
--pdb70_database_path PDB70_DATABASE_PATH
--uniclust30_database_path UNICLUST30_DATABASE_PATH
--bfd_database_path BFD_DATABASE_PATH
--jackhmmer_binary_path JACKHMMER_BINARY_PATH
--hhblits_binary_path HHBLITS_BINARY_PATH
--hhsearch_binary_path HHSEARCH_BINARY_PATH
--kalign_binary_path KALIGN_BINARY_PATH
--max_template_date MAX_TEMPLATE_DATE
--obsolete_pdbs_path OBSOLETE_PDBS_PATH
--release_dates_path RELEASE_DATES_PATH
NP³ MS Workflow - A Pipeline for LC-MS/MS Metabolomics Data Process and Analysis
O NP³ MS Workflow (v1.1.4) é uma coleção de scripts para melhorar agilizar a pesquisa em metabolômica untarget focada em descoberta de drogas com otimizações para produtos naturais.
É um procedimento automatizado para agrupar e quantificar os espectros MS² (MS/MS) associadas ao mesmo íon que foram eluídos em picos cromatográficos (MS1) concorrentes em uma coleção de amostras de experimentos LC-MS/MS.
Os possíveis resultados são:
- Tabela classificação de espectros candidatos responsáveis por hits observados em experimentos de bioatividade;
- Quantificação relativa de metabólitos presentes nas amostras;
- Grafo de redes moleculares para melhorar a análise e visualização dos resultados.
Tutorial em vídeo
- Tutorial 1: Brief introduction, 'Getting Started' section and a [M+H]+ analysis
Para entender melhor
Criando arquivo sbatch
Para usar o NP³ MS Workflow no HPC MARVIN, a forma mais eficiente é submentendo um job no seu gerenciador de filas slurm.
Neste job colocamos todos os comandos que devem ser executados em um arquivo de texto simples de extesão .sh
.
Cabeçalho
No cabeçalho os principais parametros são:
--jobname=<jobname>
| Nome do seu job;--ntaks=<numero>
| Número tarefas, geralmente 1 é suficiente;--cpus-per-task=<numero>
| Número de CPUS que serão usadas, se usar um valor diferente de1
lembre-se também modificar o parâmetro-l
(é a letra éle) em seurun
;--partition=<nome_particao>
| O NP³ não é otimizado para GPU, então escolha uma das filas de CPU (que geralmente são menos concorridas, então pode ser uma vantagem). As fila de CPU atualmente disponíveis são:- debug-cpu | até 30:00 min | Recomendada para testes;
- gui-cpu | até 12:00:00 horas | Recomendada para sessões VNC no OOD;
- short-cpu | até 5-00:00:00 dias | Recomendada para maioria dos trabalhos;
- long-cpu | até 15-00:00:0 dias | Recomendada para processamentos muito demorados.
Exemplo de cabeçalho:
#!/bin/bash
#SBATCH --job-name=NP3_MS_WORKFLOW_your_intuitive_name
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=1
#SBATCH --partition=short-cpu
Corpo
Para gerar o corpo deste processamento no MARVIN é obrigatório colocar ao menos dois comandos.
1. A camada de memória chamada overlay;
2. Os comandados de execução do NP³ (geralmente pre_process e/ou run).
Camada de overlay
O Overlay é uma camada temporária de momória para armazenar temporariamente os arquivos de execução (mas não os de saída) do processamento. Recomenda-se colocar como expaço um número cerca de 1,1 * o tamanho de sua pasta de mzxml. Abaixo um exemplo para que se crie um overlay de 500 MB
python3 /opt/images/NP3/ms_workflow/create_overlay.py 500
Execução do NP³
Com o overlay criado, basta agora colocar o seu pre_process ou run. Depois de ter enviado seus arquivos MZXML e metadado à sua área do OpenOnDemand, basta construir seu comando de processamento utilizando os endereços completos dos diretórios
Abaixo um exemplo para o run:
- Da usuário
marie.curie
; - Saída no diretório
tmps
dentro de suahome
; - Com metadao em pasta de mzxml em
Documentos\NPTest
, também dentro dahome
; - Tempos de tolerância de 1s para o mesmo batch e 2s geral;
- Verbose 10 que significa ligado para registro e ativa o teste de integridade no final (consulte o manual para mais opções).
Note que para quebrar a linha, e ficar mais legível, basta colcoar uma \
logo antes da quebra que o programa interpreta como estivesse tudo na mesma linha
singularity exec --overlay $HOME/overlay.img /opt/images/NP3/ms_workflow/np3.sif \
node /opt/NP3_MS_Workflow/np3_workflow.js run \
-n NPTrial \
-o /home/marie.curie/tmps/ \
-m /home/marie.curie/Documentos/NPTest/marine_bacteria_lib_metadata.csv \
-d /home/luiz.alves/Documentos/NPTest/mzxml \
-t 1,2 \
-v 10
Arquivo final
Ao final, juntando tudo, temos arquivo como o abaixo que pode ser colocando em um arquivo my_np3_awsome_run.sh
e ser enviado ao slurm com o comando
sbatch my_np3_awsome_run.sh
Conteúdo final do my_np3_awsome_run.sh
:
#!/bin/bash
#SBATCH --job-name=NP3_MS_WORKFLOW_your_intuitive_name
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=1
#SBATCH --partition=short-cpu
#SBATCH --mem-per-cpu=4G
# Execute o script Python create_overlay.py 500 MB de espaço
python3 /opt/images/NP3/ms_workflow/create_overlay.py 500
# Execute a imagem Singularity com o comado NP3 e a juncao do overlay
singularity exec --overlay $HOME/overlay.img /opt/images/NP3/ms_workflow/np3.sif \
node /opt/NP3_MS_Workflow/np3_workflow.js run \
-n NPTrial \
-o /home/marie.curie/tmps/ \
-m /home/marie.curie/Documentos/NPTest/marine_bacteria_lib_metadata.csv \
-d /home/luiz.alves/Documentos/NPTest/mzxml \
-t 1,2 \
-v 10
Usando o Job Composer do Onpen OnDemand (OOD)
O Open OnDemand é uma plataforma permite aos usuários executar aplicativos e jobs em sistemas de cluster remotos. Com o Job Composer, um componente integrado da plataforma Open OnDemand, os usuários podem facilmente criar e enviar jobs para o sistema de gerenciamento de fila. Neste tutorial passo a passo, você terá um exemplo de como usar o Job Composer para criar jobs para executar o NP³ MS_WORKFLOW.
-
Na interface inicial do OOD, após o login, entre na seção Job Composer dentro da aba jobs para acessar a ferramenta.
-
Clique no botão "New Job" na parte superior esquerda da tela para criar uma nova tarefa. Você pode escolher um template padrão ou um pré-criado. Para este exemplo, vamos no "From Default Template".
-
A direita da tela, você verá os quadros "Job Details" e "Submit Script" com os detalhes do arquivo padrão. Para modificá-lo e preenchê-lo, clique em "Open Editor" e abra o editor de texto (provavelmente ele virá em uma nova aba).
-
Aqui você terá um editor de texto onde poderá escrever os detalhes da sua tarefa. Realize as modificações necessárias e clique em Save no canto superior esquerdo, em seguida feche a aba.
-
Se você for realizar tarefas semelhantes no futuro, é uma boa ideia criar um template. Para fazer isso, clique no botão "Create Template".
-
5.1. Preencha ou modifique os dados do fomulário e clique em Save
-
5.2 Agora você poderá criar tarefas a partir deste template padrão, realizando apenas as modificações necessárias como visto nos itens 3 e 4.
-
-
Voltando ao Job Composer, agora é escolher e conferir o job criado (fazendo mais alterações se necessário) e clicar no botão verde >Submit.
-
Você pode acompanhar o status do seu job na seção "Active Jobs" na aba "Jobs". Aqui, você pode ver uma lista de todos os jobs ativos e já concluídos.
-
Para ver a saída do terminal durante o processamento do job, clique no botão Open in File Manager. Esta saída estará escrita no arquivo "slurm-xxxx.out".
-
E os arquivos gerados pelo processamento do NP³? Eles estarão na pasta indicada pelo parâmetro "-o" ou "--output_path" no RUN submetido.
NP3 Blob Label
Introdução
Como usar
Criando Sbatch
#!/bin/bash
#SBATCH --job-name=NP3_BLOB_LABEL_your_intuitive_name
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=1
#SBATCH --partition=short-gpu-small
#SBATCH --mem-per-cpu=8G
#SBATCH --gres=gpu:1g.5gb:1
# altere o caminho abaixo para as pastas onde estão os dados
DATA_FOLDER=./Cristalografia/20230510_Bertonha/NP3_Blob_Label/NP3BlobLabel_05_2023/
# altere a linha abaixo para o caminho do arquivo csv
ENTRIES_LIST_PATH=./Cristalografia/20230510_Bertonha/NP3_Blob_Label/NP3BlobLabel_05_2023/NP3_Blob_Label_PBP1b_ref0_metadata.csv
# defina o nome da pasta de saída
OUTPUT_NAME=BlobLabel_Output
# altere a linha abaixo para o caminho da pasta de refinamento
REFINEMENT_PATH=./Cristalografia/20230510_Bertonha/NP3_Blob_Label/NP3BlobLabel_05_2023/
# Os comandos abaixos rodam os dois modelos do NP3 Blob Label
# O primeiro modelo é o AtomSymbolGroups
# O segundo modelo é o AtomC347CA56
# Caso queira rodar apenas um dos modelos, comente a linha correspondente ao outro modelo
singularity run --nv /opt/images/NP3/blob_label/blob_label.sif \
--model_ckpt_path /opt/np3_ligand/np3_blob_label/models/AtomSymbolGroups/modelAtomSymbolGroups_ligs-78911_img-qRankMask_5_gridspace-05_k1.ckpt \
--data_folder $DATA_FOLDER \
--entries_list_path $ENTRIES_LIST_PATH \
--output_name $OUTPUT_NAME \
--refinement_path $REFINEMENT_PATH
singularity run --nv /opt/images/NP3/blob_label/blob_label.sif \
--model_ckpt_path /opt/np3_ligand/np3_blob_label/models/AtomC347CA56/modelAtomC347CA56_ligs-78911_img-qRankMask_5_gridspace-05_k13.ckpt \
--data_folder $DATA_FOLDER \
--entries_list_path $ENTRIES_LIST_PATH \
--output_name $OUTPUT_NAME \
--refinement_path $REFINEMENT_PATH
OMERO
Bem-vindo à documentação do repositório de bioimagens OMERO. Este guia foi criado para ajudar os administradores e usuários a entender como utilizar e gerenciar o sistema OMERO, que permite a visualização, organização, análise e compartilhamento de imagens de microscopia.
Acesso pelo navegador
Para acessar o OMERO, abra o seu navegador e digite o seguinte endereço na barra de endereços:
https://omero-lnbio.cnpem.br
Este site só estará disponível na rede interna. Para acessá-lo de fora do centro, utilize a VPN. Se não tiver acesso à VPN, entre em contato com o TIC.
Faça login com a sua senha institucional. Seu nome de usuário é a parte do seu e-mail antes do '@'.
Exemplo: Se você é a Marie Skłodowska-Curie (marie.curie@lnbio.cnpem.br
), seu usuário é marie.curie
.
Se o login for bem-sucedido, você verá a tela do webapp abaixo:
Observações:
-
Os logins de usuários (
marie.curie
) e dados do Columbus estão sincronizados e acessíveis pela aplicação web; -
Se este for seu primeiro acesso institucional, seu cadastro será criado automaticamente.
Acessando grupos
Após fazer login e acessar a página de visualização de arquivos, você verá no canto superior esquerdo um icone de duas pessoas (👥) indicando o grupo que está visualizando. Clique nele para listar todos grupos dos quais faz parte. Ao passar o mouse sobre um grupo, você verá os usuários inclusos.
Ao clicar em um usuário, você pode visualizar, anotar ou editar imagens, dependendo das permissões do grupo. Por padrão, apenas a visualização é permitida.
Solução de Problemas e Suporte
Este capítulo fornece informações sobre como resolver problemas comuns que os usuários podem encontrar no cluster HPC Marvin e como obter suporte se precisar de ajuda adicional.
Suporte
O suporte está disponível por meio de e-mail (jose.pereira@lnbio.cnpem.br) ou da plataforma GitHub Issues. Ao contatar o suporte, por favor, forneça o máximo de informações possível, incluindo o usuário, o nome do trabalho, a hora e a data em que ocorreu o problema e quaisquer mensagens de erro que você tenha recebido. Isso ajudará o suporte a identificar e resolver o problema com maior rapidez e eficiência.
Problemas comuns
Esta seção fornece uma lista de problemas comuns que os usuários podem encontrar ao usar o HPC Marvin, bem como possíveis soluções para esses problemas.
- Problemas de conexão: Se você estiver tendo problemas para se conectar ao cluster, verifique se a sua conexão com a internet está funcionando corretamente. Também é possível que o servidor esteja temporariamente indisponível devido a manutenção programada ou problemas técnicos. Nesse caso, aguarde um pouco e tente se conectar novamente mais tarde.
- Problemas de autenticação: Se você estiver tendo problemas para autenticar sua conta, verifique se as credenciais de login estão corretas e se você tem permissão para acessar o cluster. Se o problema persistir, entre em contato com o suporte.
- Problemas de transferência de arquivos: Se você estiver tendo problemas para transferir arquivos para ou do cluster, verifique se o seu cliente de FTP ou SSH está configurado corretamente e se você tem as permissões necessárias para acessar os diretórios desejados. Verifique também se a sua conexão com a internet está funcionando corretamente.
- Problemas de execução de trabalhos: Se você estiver tendo problemas para executar trabalhos no cluster, verifique se o script de submissão de trabalho está correto e se você tem as permissões necessárias para executar o trabalho. Também é possível que o trabalho esteja tentando acessar recursos que não estão disponíveis ou que outros trabalhos estejam monopolizando os recursos do cluster. Nesse caso, tente executar o trabalho em um horário diferente ou entre em contato com o suporte.
Se você encontrar algum problema que não pode ser resolvido usando as informações deste manual, ou se tiver alguma dúvida ou sugestão sobre a documentação, entre em contato com os mantenedores do HPC Marvin.
Políticas e Diretrizes
A utilização do cluster HPC Marvin está sujeita a políticas e diretrizes definidas para garantir o uso justo e eficiente dos recursos disponíveis. Essas políticas e diretrizes são aplicadas para garantir que o cluster esteja disponível para todos os usuários de maneira justa e equilibrada.
-
Alocação de recursos: A alocação de recursos é feita com base na disponibilidade e é projetada para garantir que todos os usuários tenham acesso equitativo aos recursos do cluster HPC Marvin. Embora atualmente não haja alocação de recursos baseada no histórico de uso de cada usuário, estamos trabalhando em iniciativas para implementar essa medida oportunamente no futuro. A quantidade de recursos disponíveis pode variar dependendo da demanda do sistema e da disponibilidade dos recursos.
-
Priorização de trabalhos: O sistema de filas é usado para gerenciar o agendamento de trabalhos no cluster HPC Marvin. O sistema prioriza trabalhos com base na política de priorização de trabalhos definida. A política atual de priorização de trabalhos é baseada na ordem de chegada, mas pode ser ajustada de acordo com as necessidades dos usuários.
-
Uso do cluster: Os usuários são incentivados a usar o cluster HPC Marvin de maneira responsável. O uso indevido ou excessivo dos recursos pode levar à limitação ou suspensão do acesso ao sistema. Os usuários devem estar cientes das políticas e diretrizes do cluster e garantir que seus trabalhos sejam executados de maneira eficiente e sem causar danos ao sistema ou a outros usuários.
Para obter mais informações sobre as políticas e diretrizes do cluster HPC Marvin, consulte o site de documentação ou entre em contato com a equipe de suporte.
Glossário 🔍
- Cluster: Um cluster é um conjunto de computadores interconectados que trabalham juntos como se fossem um único sistema. O HPC Marvin é um cluster de alto desempenho usado para processamento computacional intensivo.
- CPU: A CPU, ou unidade central de processamento, é o cérebro do computador responsável por realizar cálculos e executar programas.
- GPU: A GPU, ou unidade de processamento gráfico, é uma placa de vídeo especializada em realizar cálculos matemáticos intensivos necessários para tarefas como renderização de gráficos e aprendizado de máquina.
- Nó: Um nó é um computador individual dentro do cluster HPC Marvin que pode ser usado para executar tarefas independentes ou em conjunto com outros nós.
- Nó de computação: Um nó que é designado para executar trabalhos computacionais.
- Nó de armazenamento: Um nó que é designado para armazenar dados.
- Partição: Um conjunto de nós de computação que são dedicados a um determinado tipo de trabalho ou usuário.
- SLURM: Simple Linux Utility for Resource Management, é um sistema de gerenciamento de recursos para clusters HPC, que permite o agendamento e gerenciamento de trabalhos em vários nós de computação.
- Fila: Uma fila é uma lista de trabalhos que aguardam para serem executados no HPC Marvin. Os trabalhos são executados de acordo com a ordem em que foram submetidos e a disponibilidade dos recursos do cluster.
- Trabalho: Uma tarefa (ou job) computacional submetida pelo usuário para execução no HPC Marvin. Trabalhos são submetidos pelos usuários e podem ser executados em um ou vários nós.
- MPI: MPI, ou Message Passing Interface, é uma biblioteca de comunicação usada para permitir a comunicação entre processos em diferentes nós do HPC Marvin. MPI é amplamente utilizado em computação paralela e distribuída.
Relatórios periódicos de uso do Marvin
- Relatório anuais: disponíveis para os anos 2023 e 2024.