This is an old revision of the document!
Table of Contents
Servidores de processamento
Existem diversos grupos de pesquisa que dispõem de recurso próprio para processamento. O objetivo deste artigo não é descrever completamente a infraestrutura de processamento do IME, mas descrever a infraestrutura de processamento disponível para toda a comunidade do IME.
Contamos com quatro servidores de processamento: brucutu, brucutuiv, brucutuv e brucutuvi. Todos os servidores operam com o sistema Debian GNU/Linux na versão estável. O acesso a tais servidores é remoto se dá a partir do protocolo SSH.
Configuração
As configurações simplificadas de hardware dos computadores são as seguintes:
servidor | processador | núcleos | memória RAM | coprocessador |
---|---|---|---|---|
brucutu | 2x Intel Xeon E5645 | 12 | 216GB | N/A |
brucutuiv | 2x Intel Xeon E5-2650 v4 | 24 | 384GB | Nvidia Tesla K40 |
brucutuv | 2x Intel Xeon Gold 6148 | 40 | 512GB | N/A |
brucutuvi | 2x Intel Xeon Gold 6148 | 40 | 512GB | Nvidia Tesla V100 |
Atentamos que todos os processadores contam com hyperthreading de tal sorte que a quantidade efetiva linhas de processamento é o dobro do número de núcleos.
Boas práticas
- Utilizar o comando screen;
- Não usar a área de rede como origem ou destino de dados para seu programa. Usar
/var/tmp
ou/var/fasttmp
(com SSD); - Usar checkpoint. Caso ocorra uma queda de energia ou travamento do servidor, o seu processo poderá reiniciar e continuar o processamento de algum ponto próximo à queda;
- Por se tratarem de servidores compartilhados, limitamos o processamento e a memória disponível por usuário.
Sobre o GNU Screen
Para abrir uma sessão no screen
, basta rodar o comando screen
. Dentro da screen, basta rodar seu programa como o habitual.
Para sair de uma sessão da screen sem fechá-la, Ctrl+A
depois a tecla D
.
Para retomar uma sessão da screen, basta rodar o comando screen -r
. Se houver mais de uma screen aberta, será necessário identificá-la. Cada screen terá um número de processo associado a ela, basta especificá-lo.
Exemplo:
$ screen -r There are screens on: 31415.pts-8.amaterasu (28/02/2020 13:35:02) (Detached) 31416.pts-5.amaterasu (28/02/2020 13:34:56) (Detached) # seu processo é o 31415 screen -r 31415