Ir al contenido

Un profesor del MIT desafía los límites de la informática con el mayor clúster que se haya creado en la nube pública

Andrew V. Sutherland, teórico computacional de números y científico con el cargo de Principal investigador en el MIT, utiliza Google Compute Engine para administrar la Base de Datos de Formas Modulares y Funciones L (LMFDB), con lo que rompió su propio récord de computación de alto rendimiento al alcanzar los 580,000 núcleos.

Si entras a una clase de filosofía de las matemáticas, seguramente oirás hablar de "objetos". Básicamente, un objeto es todo aquello sobre lo que se pueden realizar operaciones matemáticas, como números, funciones o los resultados de cálculos matemáticos, como curvas. La Base de Datos de Formas Modulares y Funciones L (LMFDB) es un atlas detallado de objetos y las conexiones que existen entre ellos. La LMFDB es un proyecto colaborativo internacional que dirige un equipo con sede en diferentes universidades de Europa y América del Norte, incluido el MIT.

Toda la perspectiva que uno tiene de la investigación cambia cuando se puede hacer una pregunta y obtener una respuesta en cuestión de horas en lugar de meses.

Andrew V. Sutherland, teórico de números computacionales y principal investigador y científico, MIT

Comparte datos con diferentes investigadores

La LMFDB permite el avance de la ciencia, ya que los investigadores pueden compartir fácilmente datos de objetos con las comunidades de física, informática y matemática de todo el mundo. Algunos de los cálculos que se deben realizar para crear los objetos son tan complejos que solo unas pocas personas en todo el mundo saben hacerlos. Otros cálculos son tan extensos que es mejor realizarlos una sola vez debido al tiempo que toman y los gastos que suponen.

El equipo que ejecutaba la LMFDB necesitaba un servicio de nube capaz de cubrir sus crecientes requisitos de almacenamiento. Para poner las cosas en perspectiva, se necesitaron casi 1,000 años de tiempo informático para crear los objetos dentro de la LMFDB. Además del enorme problema del almacenamiento, estaba la cuestión de la escala. La LMFDB está disponible para todos en lmfdb.org, lo que significa que el proyecto necesitaba escalarse para aceptar las incontables búsquedas que se realizan diariamente. Por último, debido a que la LMFDB es un proyecto colaborativo, el equipo necesitaba un sistema que se pudiera administrar fácilmente desde distintos países.

Centrado en la investigación y no en la infraestructura

El equipo de la LMFDB analizó varias soluciones de nube y eligió Google Cloud debido a su alto rendimiento, su capacidad para escalar de forma automática, su facilidad de uso y su confiabilidad.

Uno de los investigadores principales que intervinieron en la LMFDB y en el proceso de la toma de decisiones fue Andrew V. Sutherland, profesor de matemática, teórico computacional de números y científico con el cargo de principal investigador en el MIT.

"Somos matemáticos que deseamos centrarnos en nuestra investigación sin tener que preocuparnos por fallas de hardware o por problemas de escalamiento del sitio web", afirma Sutherland.

Sutherland y el resto del equipo de la LMFDB optaron por usar Google Compute Engine (GCE) y Google Persistent Disk para alojar los servidores web; además, duplicaron las bases de datos de MongoDB a fin de alojar medio terabyte de datos en línea y tres terabytes de datos menos frecuentes. Esta configuración permite que la LMFDB escale en función de las necesidades que surjan y que brinde resultados computacionales y objetos matemáticos rápidamente cuando los investigadores los necesiten. La LMFDB también utiliza diversas herramientas de Google Cloud que permiten que los investigadores de diferentes partes del mundo administren la base de datos de forma más sencilla y colaborativa. Entre estas herramientas se incluyen Google Stackdriver, Google Cloud Console y Google Cloud Load Balancing.

Sutherland debía realizar y almacenar una tabulación particularmente compleja en la LMFDB. Esta tabulación era tan grande que requería una potencia informática superior a los límites de todo lo que se había hecho anteriormente en la nube pública. Para ello, eligió GCE y ejecutó 580,000 núcleos con VM prioritarias, lo que constituye el clúster de cómputo más grande y de mayor rendimiento que se haya ejecutado en la nube pública.

El cálculo arrojó 70,000 curvas diferentes, cada una con su propia entrada de LMFDB. Encontrar una sola de esas curvas es una tarea extremadamente compleja que requiere una gran cantidad de ciclos de cómputo. "Es como buscar una aguja en un pajar de quince dimensiones", comenta Sutherland.

Antes de recurrir a GCE para realizar el cálculo, Sutherland había realizado trabajos en su propia computadora de 64 núcleos, lo cual demoraba demasiado. Su única alternativa era obtener tiempo de cómputo en los clústeres del MIT, lo que resultaba complicado y limitaba las configuraciones de software que podía utilizar. Con GCE, puede usar todos los núcleos que requiera, instalar el sistema operativo, las bibliotecas y las apps que necesite, y actualizar el entorno cada vez que lo desee.

Gracias a la escalabilidad que Google Cloud le otorga a la LMFDB, todos pueden buscar y explorar su contenido fácilmente por medio de una interfaz web, sin importar si son alumnos o experimentados investigadores. Por ejemplo, Sutherland dicta clases sobre curvas elípticas y los alumnos utilizan la LMFDB para hacer la tarea en casa.

Ahorra dinero al realizar cálculos enormes

Teniendo en cuenta las limitaciones presupuestarias de muchos investigadores e instituciones educativas, Google Cloud permite realizar grandes cálculos a un costo razonable. Las VM prioritarias de GCE que utiliza Sutherland le permiten reducir notablemente los costos y, al mismo tiempo, realizar cálculos extremadamente complejos. Estas instancias, completamente funcionales, cuestan hasta un 80% menos que sus equivalentes habituales, ya que GCE puede interrumpirlas. La interrupción de los cálculos no provoca grandes problemas de rendimiento, ya que, en promedio, solo un dos o un tres por ciento de sus instancias se interrumpen en cada hora de cálculos. Por otra parte, una secuencia de comandos las reinicia automáticamente hasta que se finaliza todo el trabajo, por lo que es poco el tiempo que se pierde. Al permitir estas interrupciones menores, puede ejecutar grandes cálculos a un costo bajo y prácticamente sin demoras.

Estamos cartografiando las matemáticas del siglo XXI

Andrew V. Sutherland, teórico de números computacionales y principal investigador y científico, MIT

Regístrate aquí para recibir novedades, información importante, recursos y mucho más.