Difference between revisions of "Singularity"
From VeRLab Wiki
Mauferrari (talk | contribs) (→Regras de bom uso dos recursos) |
Mauferrari (talk | contribs) (→Singularity) |
||
| Line 8: | Line 8: | ||
* Depois de criar sua ''máquina container'' com todas suas dependências, pode-se usá-la para rodar experimento em diferentes máquinas host que tenham GPU. Isso trás flexibilidade para rodar experimento em outra máquina, sem precisar instalar todas dependências novamente na ''máquina host''. | * Depois de criar sua ''máquina container'' com todas suas dependências, pode-se usá-la para rodar experimento em diferentes máquinas host que tenham GPU. Isso trás flexibilidade para rodar experimento em outra máquina, sem precisar instalar todas dependências novamente na ''máquina host''. | ||
| + | * A massa de arquivos de dataset (que geralmente ocupam espaço >=500GB) ficam localmente armazenados na máquina host, assim evita tráfego desnecessário na rede. Geralmente na pasta /homeLocal/nome_do_usuario. | ||
| + | |||
| + | * O usuário deixa na sua pasta home da rede apenas sua máquina container (que em geral ocupa ~4GB) assim basta logar numa outra máquina | ||
== Instalação == | == Instalação == | ||
Revision as of 22:32, 8 June 2018
Contents
Singularity
O Singularity é uma ferramenta para a criação de "máquina container" (uma espécie de "máquina virtual") que trás algumas vantagens, quando for rodar experimentos nas máquinas de processamento do Verlab/J:
- Não precisa ser usuário com privilégios root para criar sua máquina container e pode instalar suas dependências de experimento no container sem alterar a máquina host. Isso evita mudanças e instalação de pacotes que atrapalham experimentos de outros usuários.
- Depois de criar sua máquina container com todas suas dependências, pode-se usá-la para rodar experimento em diferentes máquinas host que tenham GPU. Isso trás flexibilidade para rodar experimento em outra máquina, sem precisar instalar todas dependências novamente na máquina host.
- A massa de arquivos de dataset (que geralmente ocupam espaço >=500GB) ficam localmente armazenados na máquina host, assim evita tráfego desnecessário na rede. Geralmente na pasta /homeLocal/nome_do_usuario.
- O usuário deixa na sua pasta home da rede apenas sua máquina container (que em geral ocupa ~4GB) assim basta logar numa outra máquina
Instalação
Toda máquina com GPU deve rodar experimentos sem modificar os pacotes da máquina host (máquina de processamento).
A equipe de rede é responsável por:
- Instalar o Singularity em toda máquina host com GPU (máquina de processamento)
- Configurar de modo que todo usuário possa rodar apenas o comando
$sudo singularitynuma pasta local da máquina host, sem necessitar de senha root.
Assim as pastas indicadas para "compilar" a máquina container é fora do home do usuário, tais como:
-
/tmpou -
/homeLocal/usuario.
Regras de bom uso dos recursos
- Usuários não devem deixar o dataset (massa de arquivos grande, em geral 1TB, que vão ser acessados durante o experimento) dentro da sua pasta home da rede (por exemplo, para o login "fulano"
/home/fulano/datasetna rede, pois isso aumenta o tráfego na rede desnecessário. Os datasets devem ser armazenados numa pasta local do computador com o nome do usuário. Por exemplo/homeLocal/fulano/dataset
- Cada usuário deve baixar os arquivos e os pacotes necessários para máquina container dentro da pasta local (por exemplo,
/homeLocal/fulano/sigularity, e "compilar" na mesma. O arquivo container pronto, pode ser armazenado na pasta home da rede, pois será automaticamente carregada quando entrar em outra máquina, permitindo rodar o experimento.
Aprender Singularity e Criar sua Máquina Container
Links recomendados para aprender a utilizar o Singularity: