Em qualquer aula de filosofia da matemática, provavelmente se falará de "objetos". Os objetos são, basicamente, qualquer item com que se possa realizar cálculos matemáticos, como os números ou as funções, ou os resultados dos cálculos matemáticos, como as curvas. O banco de dados de funções L e de formas modulares (LMFDB, na sigla em inglês) é um atlas detalhado de objetos e das conexões entre eles. O LMFDB é uma colaboração entre pesquisadores internacionais e é gerenciado por uma equipe internacional com pessoas em universidades na Europa e na América do Norte, incluindo o MIT.
Um professor do Instituto de Tecnologia de Massachusetts (MIT), nos Estados Unidos, ultrapassa os limites da computação com o maior cluster já construído na nuvem pública
Usando o Google Compute Engine para gerenciar o banco de dados de funções L e de formas modulares (LMFDB, na sigla em inglês), o teórico de números computacionais e cientista pesquisador-chefe, Andrew V. Sutherland do MIT, quebra o próprio recorde de computação de alto desempenho chegando a 580.000 núcleos.
Sua perspectiva sobre a pesquisa muda quando você pode fazer uma pergunta e encontrar a resposta em horas, não em meses.
Andrew V. Sutherland, teórico de números computacionais e cientista pesquisador-chefe, MIT
Compartilhamento de dados entre pesquisadores
O LMFDB promove as ciências ao facilitar significativamente o compartilhamento de dados sobre objetos entre os pesquisadores e as comunidades de física, ciência da computação e matemática em todo o mundo. Alguns dos cálculos para criar os objetos são tão complexos que apenas algumas pessoas no mundo sabem fazê-los. Outros cálculos são tão grandes que é melhor executá-los apenas uma vez porque eles consomem muito tempo e dinheiro para serem feitos.
A equipe que gerencia o LMFDB precisava de um serviço na nuvem que pudesse lidar com as necessidades de armazenamento cada vez maiores. Para se ter uma ideia, foram quase 1.000 anos de tempo de computação para criar os objetos que estão no LMFDB. Além do grande problema de armazenamento, havia o problema de escala. O LMFDB está disponível para qualquer pessoa em lmfdb.org, por isso o projeto precisava funcionar em grande escala para comportar as inúmeras pesquisas feitas diariamente. Por fim, como o LMFDB é um projeto colaborativo, a equipe precisava de um sistema que pudesse ser administrado facilmente por pessoas em países diferentes.
O importante é a pesquisa, não a infraestrutura
A equipe do LMFDB analisou várias soluções na nuvem e escolheu o Google Cloud pelo alto desempenho, escalabilidade automática, facilidade de uso e confiabilidade.
Um dos principais pesquisadores envolvidos no LMFDB e no processo de tomada de decisão era Andrew V. Sutherland, professor de matemática, teórico de números computacionais e cientista pesquisador-chefe do MIT.
"Somos matemáticos e queremos nos concentrar na pesquisa, sem precisarmos nos preocupar com falhas de hardware ou problemas de escala com o site", diz Andrew.
Andrew e os outros membros da equipe do LMFDB escolheram usar o Google Compute Engine (GCE) e o Google Persistent Disk para hospedar os servidores da Web e espelharam os bancos de dados do MongoDB para armazenar meio terabyte de dados on-line e três terabytes de dados acessados com menos frequência. Essa configuração permite que o LMFDB seja dimensionado conforme necessário e apresente resultados computacionais e objetos matemáticos rapidamente quando os pesquisadores precisarem deles. O LMFDB também utiliza diversas ferramentas do Google Cloud que permitem que os pesquisadores em diferentes lugares do mundo gerenciem o banco de dados de forma fácil e colaborativa. Essas ferramentas incluem o Google Stackdriver, o Console do Google Cloud e o Google Cloud Load Balancing.
Andrew tinha uma tabulação particularmente complexa que precisava ser feita e armazenada no LMFDB; uma tabulação tão grande que exigiria uma capacidade computacional além dos limites do que já havia sido feito na nuvem pública. Para isso, ele escolheu o GCE e executou 580.000 núcleos com máquinas virtuais preemptivas: o maior cluster de computação de alto desempenho conhecido a ser executado na nuvem pública.
O cálculo resultou em 70.000 curvas diferentes, cada uma com entrada própria no LMFDB. Encontrar apenas uma dessas curvas é uma tarefa extremamente complexa que exige um grande número de ciclos de computação. "É como procurar uma agulha em um palheiro de quinze dimensões", afirma Andrew.
Antes de usar o GCE para realizar o cálculo, Andrew executava tarefas no próprio computador de 64 núcleos, o que levava muito tempo. A única alternativa era conseguir tempo de computação nos clusters do MIT, o que poderia ser difícil e limitava as configurações de software que ele poderia usar. Com o GCE, ele pode usar quantos núcleos precisar, instalar o sistema operacional, as bibliotecas e os aplicativos necessários e atualizar o ambiente sempre que quiser.
Com a escalabilidade que o Google Cloud oferece ao LMFDB, todos, desde alunos até pesquisadores experientes, podem facilmente pesquisar e navegar no conteúdo usando uma interface da Web. Por exemplo, Andrew dá aula sobre curvas elípticas, e os alunos usam o LMFDB para fazer os trabalhos em casa.
Economizando dinheiro ao realizar cálculos enormes
Considerando as limitações orçamentárias de muitos pesquisadores e instituições educacionais, o Google Cloud permite que eles façam cálculos enormes por um preço razoável. As máquinas virtuais preemptivas do GCE que Andrew utiliza permitem que ele reduza significativamente os custos ao executar cálculos extremamente complexos. Essas instâncias com recursos completos custam até 80% menos do que os equivalentes comuns porque elas podem ser interrompidas pelo GCE. Interromper os cálculos não prejudica muito o desempenho. Em média, somente 2 a 3% das instâncias são interrompidas a cada hora de cálculo, e um script automaticamente as reinicia até que toda a tarefa de Andrew esteja concluída, dessa forma, não se perde muito tempo. Ao permitir essas pequenas interrupções, ele pode executar cálculos gigantescos com baixo custo e, praticamente, sem atrasos.
Estamos mapeando a matemática do século XXI.
Andrew V. Sutherland, teórico de números computacionais e cientista pesquisador-chefe, MIT