PerfilGlobal e BeeGFS, parceria oficial

BeeGFS: quando o disco vira o gargalo do cluster.

Um cluster com centenas de núcleos não adianta se todos eles esperam na fila para ler o mesmo arquivo. A PerfilGlobal é parceira oficial do BeeGFS e dimensiona, implanta e ajusta o sistema de arquivos paralelo em clusters de pesquisa no Brasil.

O problema

Cem processos, um disco.

Em um sistema de arquivos comum, todos os nós de computação pedem dado ao mesmo servidor. Enquanto a CPU calcula rápido, o armazenamento entrega devagar, e o cluster passa boa parte do tempo parado esperando entrada e saída de dados.

A solução

Espalhar o arquivo entre vários servidores.

O BeeGFS divide cada arquivo em pedaços e distribui esses pedaços entre vários servidores de armazenamento. Quando um processo pede o arquivo, ele chega de várias fontes ao mesmo tempo, somando a banda de todas elas.

A parceria

PerfilGlobal e BeeGFS, do dimensionamento à operação.

A PerfilGlobal é parceira oficial do BeeGFS e integra o sistema de arquivos paralelo à arquitetura completa dos clusters que entrega. Não é uma peça avulsa de catálogo: o BeeGFS entra dimensionado junto com os nós de computação, a rede e as GPUs, porque em computação de alto desempenho o armazenamento define o resultado tanto quanto o processador.

Essa parceria dá às instituições brasileiras de pesquisa acesso ao mesmo sistema de arquivos usado em centros de supercomputação no mundo inteiro, com dimensionamento, implantação, ajuste fino e suporte conduzidos pela PerfilGlobal no Brasil.

Como funciona

Quatro papéis, servidores independentes.

Servidores de armazenamento

Guardam os pedaços dos arquivos. Quanto mais servidores, mais banda agregada. É assim que a capacidade e a velocidade crescem juntas.

Servidores de metadados

Guardam a estrutura de diretórios e as permissões, separados do conteúdo. Como os metadados também são distribuídos, abrir milhares de arquivos pequenos deixa de ser um ponto de estrangulamento.

Cliente

Um módulo instalado em cada nó de computação, que apresenta tudo como um diretório comum. A aplicação científica não precisa ser alterada em nada para aproveitar o sistema.

Serviço de gerenciamento

Registra quem está no sistema e coordena os demais componentes. É por ele que se monitora o estado do conjunto.

Por que ele é o padrão em HPC

Feito para computação de alto desempenho, não adaptado para ela.

Escala horizontal

Precisa de mais desempenho? Acrescenta servidor. A capacidade e a banda crescem de forma proporcional, sem trocar o que já existe.

Roda sobre InfiniBand

Usa acesso direto à memória remota, o que reduz a latência e libera a CPU dos nós para calcular em vez de mover dado.

Sem alterar a aplicação

Apresenta-se como um diretório comum. O software do grupo de pesquisa continua igual, e o desempenho muda.

Um recurso pouco conhecido

BeeOND: um sistema de arquivos que vive só durante o cálculo.

O BeeOND cria um sistema de arquivos temporário usando os discos dos próprios nós reservados para um trabalho. Ele nasce quando o trabalho começa e desaparece quando ele termina.

Serve como área de rascunho ultrarrápida para simulações que geram muito arquivo intermediário, tirando essa carga do armazenamento principal. A PerfilGlobal configura o BeeOND integrado ao escalonador de filas, para que ele suba e desça sozinho a cada trabalho. Para grupos que rodam trabalhos com muita escrita temporária, costuma ser o ganho de desempenho mais barato disponível.

O que a PerfilGlobal faz

Dimensionamento, implantação e ajuste do BeeGFS.

Dimensionar

Quantos servidores de armazenamento, quantos de metadados, qual proporção entre disco rápido e disco de capacidade, qual tamanho de pedaço para o perfil de arquivo do grupo.

Implantar

Instalação dos serviços, configuração da rede, integração com o escalonador e com a autenticação do cluster, testes de desempenho antes da entrega.

Ajustar

Aplicação científica que lê milhões de arquivos pequenos pede uma configuração; simulação que escreve poucos arquivos gigantes pede outra. O ajuste é feito sobre o uso real.

O BeeGFS é de código aberto no cliente e conta com contrato de suporte profissional junto ao fabricante para os recursos empresariais, como alta disponibilidade e cotas. Como parceira oficial do BeeGFS, a PerfilGlobal conduz esse contrato junto à instituição, de modo que o suporte do fabricante e a implantação local respondam pelo mesmo ambiente.

Seu cluster está esperando o disco?

Se os trabalhos demoram mais do que a conta de CPU sugere, o gargalo costuma estar no armazenamento. A PerfilGlobal avalia o perfil de leitura e escrita das suas aplicações e dimensiona o BeeGFS a partir dele.