Lance 16.384 aplicativos do Windows em um supercomputador Linux em apenas 5 minutos
- Pesquisadores do MIT desenvolvem um modelo que executa simultaneamente 16.384 aplicativos Windows em supercomputadores Linux em 5 minutos.
- Para fazer isso, eles usaram a tecnologia LLMapReduce do Lincoln Lab junto com a camada de compatibilidade do Wine Windows.
Como o ritmo da Lei de Moore está diminuindo, tornou-se necessário usar processamento paralelo para aumentar o desempenho da aplicação. As redes neurais, as aplicações de simulação física e de análise de dados estão evoluindo a um ritmo significativo e utilizam o poder do processamento paralelo para atingir sua meta de desempenho.
Para executar esses aplicativos com uso intensivo de dados, você precisa de vários softwares baseados em determinados sistemas operacionais, como o Microsoft Windows, que tem uma longa experiência na implementação de computação paralela.
No entanto, os 500 melhores supercomputadores do mundo funcionam em Linux e são capazes de executar aplicações interativas em milhares de núcleos em segundos. Normalmente, máquinas virtuais (VMs) são usadas para executar programas Windows em computadores Linus, o que impõe muita sobrecarga aos aplicativos.
A execução de múltiplas VMs no supercomputador pode levar vários segundos (às vezes minutos) por máquina virtual. Dimensioná-los para milhares de núcleos em supercomputadores existentes certamente aumenta problemas de eficiência e desempenho, dificultando a execução simultânea de toneladas de aplicativos do Windows em um supercomputador.
Agora, uma equipe de pesquisadores do MIT desenvolveu uma nova técnica que inicia e executa rapidamente aplicativos do Windows em milhares de processadores em um supercomputador moderno. Em particular, eles demonstraram o lançamento de 16.000 aplicativos Windows em 5 minutos (cada aplicativo é gerenciado por um núcleo).
Como funciona?
Para lançar rapidamente aplicativos Windows no supercomputador Linux, os pesquisadores usaram a tecnologia Lincoln Lab LLMapReduce (multi-level map-reduce) junto com a camada de compatibilidade Wine Windows. Para computação de alto desempenho, o agendamento multinível altera ligeiramente o código de análise para processar vários conjuntos de dados com um único lançamento de trabalho.
A pilha de software MIT SuperCloud vem com uma interface fácil de usar que dá acesso ao LLMapReduce para executar com eficiência milhares de tarefas em um cluster, diminuindo o agendamento paralelo complexo, resolução de dependências e trabalhos de envio de tarefas para uma linha de código, enquanto aumenta simultaneamente o desempenho da tarefa, minimizando a latência de cada tarefa.
Como o LLMapReduce não é baseado em nenhuma linguagem específica, ele funciona com qualquer executável, o que o torna ideal para iniciar várias instâncias do Wine simultaneamente.
Componentes do agendador SLURM | Cortesia de pesquisadores
Eles usaram um agendador de tarefas de código aberto chamado Slurm Workload Manager para identificar rapidamente recursos, alocá-los para tarefas, agendar a execução de tarefas em seus recursos alocados, iniciá-los, monitorar tarefas enquanto elas estão em execução e realizar a limpeza do epílogo quando a tarefa for encerrada.
Referência:arXiv:1808.04345
Resultados
Tempos e taxas de inicialização de instâncias do Windows
Os pesquisadores implementaram seu sistema em um supercomputador contendo 648 nós de computação (cada nó possui nada menos que 64 núcleos de processamento Xeon Phi) com um total de 41.472 núcleos. Eles executaram uma única instância do Windows em 1,2,4,8…256 nós, seguida por 2,4,8…64 instâncias em cada um dos 256 nós, o que lhes deu um total de 16.384 instâncias simultâneas.
Leia:Unidades de processamento de memória podem implementar algoritmos de IA com eficiência
Todas essas instâncias levaram quase 5 minutos para serem executadas, permitindo uma ampla variedade de aplicativos executáveis do Windows em supercomputadores. A equipe planeja estender essa capacidade a um maior número de processadores que executam programas mais diversos.
Tecnologia industrial
- Fabricação sem iluminação:5 elementos essenciais que você precisa para automatizar sua fábrica
- Três maneiras de competir enquanto a guerra comercial progride
- Circuito de potenciômetro:como funcionam e para que são usados
- Detecção de Veículos Aéreos Não Tripulados Usando Visão Computacional
- Os 6 erros de armazenamento mais caros (e como evitá-los)
- Como projetar um layout de estantes de armazém:10 etapas para um planejamento eficiente
- As razões pelas quais o aço é tão amplamente utilizado
- Dominando o controle de tolerância CNC:aumente a precisão e reduza custos
- CAD, CAE e CAM:qual é a diferença?
- Dica de prototecnologia:marcação de peças