A evolução dos supercomputadores.

A Historia

A computação originalmente era composta por sistemas centralizados para os quais você enviava seu conjunto de cartões perfurados contendo seu código e dados; então, você esperava pelo seu resultado, que provavelmente era impresso por uma enorme impressora matricial em papel verde e bege.

Todos esperavam sua vez para enviar suas aplicações e dados, que eram executados um após o outro - primeiro a entrar, primeiro a sair (FIFO). Quando seu código e dados eram lidos, você não precisava estar presente; no entanto, muitas vezes você tinha que ficar por perto para enviar seu conjunto de cartões quando o sistema estivesse disponível.

Nos últimos anos da década de 1980 e durante os anos 1990, você provavelmente tinha um monitor onde podia inserir seus programas que estavam salvos em dispositivos de armazenamento em massa.

Frequentemente, eram sistemas front-end dedicados que acomodavam os usuários. Qualquer pessoa que quisesse usar o sistema acessava este sistema front-end, criava seu código e dados, e então submetia um "job" para executar a aplicação com os dados.

O job era na verdade um script com informações sobre os recursos necessários: quantas CPUs, quanto de memória, como executar sua aplicação (o comando), e assim por diante. Se os recursos de hardware pudessem ser encontrados, seu programa era executado, e os resultados retornavam para sua conta.

Observe que você não precisava estar logado no sistema para que o job fosse executado. O escalonador de jobs fazia tudo por você.

O escalonador de jobs podia lançar vários jobs para utilizar o máximo possível dos recursos disponíveis. Ele também mantinha uma lista dos próximos jobs a serem executados.

Como essa lista era criada era definido por políticas e poderia ser muito sofisticado, garantindo a melhor utilização dos recursos do sistema.

Os primeiros sistemas de computação de alto desempenho (HPC) eram grandes recursos centralizados compartilhados por todos que queriam usá-los. Você tinha que esperar na fila pelos recursos que precisava.

Além disso, os recursos não eram interativos, o que tornava mais difícil escrever código. Suas aplicações eram executadas, e os resultados eram retornados para você.

Em outras palavras, seu trabalho estava à mercê do que todos os outros estavam executando e dos recursos disponíveis. Além disso, pré-processar ou pós-processar seus dados nesses sistemas era impossível.

Para pesquisadores, engenheiros, cientistas e outros usuários de HPC, esse fluxo de trabalho era uma bagunça. Você tinha momentos de atividade intensa e muito tempo parado.

Os pesquisadores cada vez mais precisavam de recursos de HPC, especialmente à medida que as aplicações exigiam mais ciclos de computação, memória, armazenamento e interatividade.

    Blogger Comment
    Facebook Comment

0 Comments:

Postar um comentário