Propuesta Cluster Argentino para MD y ML

Luego de la exitosa experiencia de reposicionamiento del hardware de Mendienta Fase 2 con las Supecomputadora para machine learning Nabucodonosor, estamos buscando reconvertir los doce (12) nodos restantes de Mendieta Fase 2.

Doce Nabucodonosor más.

Queremos aumentar el soporte de computación para machine learning ML y dinámica molecular MD. Ambas disciplinas tienen un perfil de cómputo muy parecido entre sí, ya que hacen un uso intensivo de aceleradores de cómputo. Muchos usuarias y usuarios de todo el país están haciendo simulaciones con paquetes como GROMACS, AMBER y LAMMPS, los cuales tienen un excelente soporte para hacer offloading a GPUs.

Con esta propuesta estamos apuntando lograr un cluster de 360 TFLOPS pico de precisión simple en GPUs y además reutilizar los nodos de Mendieta Fase 2 que están en su fin de vida útil. La relación TFLOPS/USD es muy buena, gracias a que solo hay que comprar las GPUs y pagar el servicio de adaptación.

La propuesta está firmada por más de cien investigadoras e investigadores de todo el país que están interesados en contar con esta herramienta que les permitirá mejorar su producción científica.

Documento en PDF: Cluster Argentino de Bajo Costo para MD y ML

Pre-vista:

CCAD ayuda al LaES a modernizar código

El CPA Principal de CONICET Carlos Bederián trajo al 2020 un código «C» que tranquilamente podría haber sido escrito en 1980 para una PDP-11/70. En este back to the future, Carlos logró que el código sea diez veces más rápido, es decir 10 veces más simulaciones o sistemas 10 veces más grandes.

A mediados de agosto el investigador del LaES, Ezequiel Leiva, nos escribe para saber si podemos paralelizar un código que sirve para hacer simulaciones de litio. Nos comenta que el código es secuencial y que lo hicieron con sus rudimentarios conocimientos de «C». Luego de una semana de haber recibido el código, el código se reescribió en C++ paralelizando con OpenMP, se utilizó el sistema de construcción  Meson BuildGoogle Test para pruebas unitarias que confirmaban que los resultados eran exactamente iguales al código original.

Dos semanas más tarde Bederián codifica una variación de sumas acumuladas (prefix sum) específica para este problema utilizando AVX2 intrinsics, obteniendo entre 25% y 40% más de desempeño..

Los resultados en un servidor dual Xeon E5-2680 v4 (28 cores en total) son notables. El punto rojo abajo a la izquierda representa el código original. Con 16 núcleos ya llega a 10x de speedup.

Notamos que GCC presenta algunos problemas de escalabilidad en la implementación GOMP, que Clang-LLVM no tiene. El compilador de Intel, esta vez, proporciona un 20% más de desempeño que sus competidores FLOSS.

El Dr. Leiva nos explica la importancia de este programa.

Este código tiene por objeto simular la inserción de iones de litio en grafito, en sistemas de tamaño finito mediante modelos reticulares. El grafito es el material empleado por excelencia como ánodo en todas las baterías comerciales (ej. celulares), y algunas de las características de este material eran ignoradas hasta hace poco:

  • «A theoretical model to determine intercalation entropy and enthalpy: Application to lithium/graphite», E.M. Perassi, E.P.M. Leiva, Electrochem Commun 65 (2016) 48-52.2
  • «The kinetic origin of the Daumas-Hérold model for the Li-ion/graphite intercalation system», E.M. Gavilán-Arriazu, O.A. Pinto, B.A. López de Mishima, D.E. Barraco, O.A. Oviedo, E.P.M. Leiva, Electrochemistry Communications 93(2018)133–137.

El código modificado va a permitir extender las simulaciones a tamaños que permitan extrapolar el comportamiento de nanosistemas a sistemas mayores, en los que se realizarán simulaciones con herramientas de continuo.

 

Camila Clemente ¿Qué se corre en el CCAD respecto a la terapia de rescate de COVID-19 con ibuprofeno?

Hace un par de meses abrimos una cuenta a la investigadora Camila Clemente de FCQ-UNC para correr AMBER20 en las dos Nabucodonosor, los servers de cálculo para Machine Learning (ML) que tiene el CCAD-UNC. Rápidamente se transformó en una usuaria ávida de recursos computacionales. La entrevistamos para saber porque le resulta tan conveniente una plataforma de machine learning para hacer dinámica molecular.

CCAD: Hola Camila, contanos tu formación y para que estás usando Nabucodonosor.
Camila Clemente: Hola. Soy Farmacéutica graduada de la Facultad de Ciencias Químicas-UNC y actualmente estoy transitando mis últimos años del Doctorado en Ciencias Químicas en la misma facultad. En este último tiempo me he abocado al área de la bioinformática, en particular, al desarrollo de estudios in silico para el diseño y desarrollo de drogas para enfermedades infecciosas desatendidas.
En colaboración con el Dr. Ariel Garro y el Dr. Dante Beltramo, investigadores del Centro de Excelencia en Productos y Procesos de Córdoba (CEPROCOR), estamos llevando a cabo estudios de la dinámica de una proteína de interés de SARS-CoV-2 en complejo con la molécula del ibuprofeno. Dichos estudios son llevados a cabo mediante simulaciones de dinámica molecular (MD) en Nabucodonosor.

CCAD: En el htop y nvidia-smi vemos que corrés AMBER20, y utilizás a pleno las GTX 1080 Ti. ¿Cómo fue tu experiencia con AMBER corriendo en CPU y en GPU?
CC: La experiencia fue muy buena. Las MD las pude realizar en AMBER20 debido a una licencia académica solicitada. Realizar las MD en AMBER20 corriendo GPU fue muy beneficioso para nuestra investigación ya que logré acelerar muchísimo el procesamiento de mis simulaciones, debíamos simular 120 nanosegundos por simulación y es prácticamente imposible simular ese tiempo en CPU y obtener los resultados en días. Corrí CPU en Mendieta y nunca llegue a correr 120 ns en CPU. Aproximadamente, lo que en una semana me tardaba correr en CPU, en 4 nodos con 80 procesadores, en GPU me llevaba 6 horas.

CCAD: Contanos que cosas te habilita este factor de aceleración fenomenal.
CC: Como mencioné anteriormente, correr el GPU me facilitó las simulaciones ya que no necesitábamos correr una única simulación sino varias porque estamos analizando el comportamiento de una proteína de SARS-CoV-2 con el ibuprofeno en diversos entornos salinos. Además, luego de cada simulación se logró acelerar los cálculos de energía de unión de la proteína con el ligando a través de los métodos MM-PBSA y MM-GBSA. En resumen, realizar dichas simulaciones sin GPU no hubiera sido viable para la necesidad inmediata que posee nuestra investigación.

CCAD: ¿Las simulaciones que estás realizando luego tienen un correlato experimental? ¿Cuál?
CC: El objetivo de estas simulaciones parten del interés de poder investigar el comportamiento a nivel molecular de una proteína de SARS-CoV-2 con el fármaco ibuprofeno. Esta investigación surge del tratamiento que lidera el Dr. Beltramo frente a pacientes con COVID-19, cabe destacar que este tratamiento ya se realiza en pacientes con COVID-19 de nuestra provincia.
El motivo de realizar estas simulaciones se debe a que no se conoce exactamente el modo de acción a nivel molecular de este nuevo tratamiento. En particular, se desconoce cómo podría estar actuando a nivel molecular la molécula del ibuprofeno con una proteína específica de SARS-CoV-2. Es por ello, que uno de los objetivos de la investigación es poder realizar una caracterización estructural de la proteína de interés en los diferentes entornos simulados para realizar un aporte a la comunidad científica. A su vez, a través de estas simulaciones podemos generar hipótesis de lo que podría estar sucediendo a nivel molecular para luego corroborarlo a través de diferentes ensayos.

CCAD: ¿Cuál fue tu experiencia de usuaria respecto a los equipos del CCAD-UNC? ¿Tenías experiencia previa en uso de recursos de HPC?
CC: Mi experiencia en uso de recursos de HPC es solamente con los equipos de CCAD-UNC (Mendieta y Nabucodonosor) y la misma fue excelente. Empecé a ser usuaria de Linux debido a que es software libre y muchas herramientas de análisis biológico y químico solo corren en este sistema operativo. Las herramientas y habilidades para correr en una máquina de HPC remota las fui adquiriendo a través de cursos, lectura y curiosidad personal. Cabe destacar, que la Lic. en Bioinformática María I. Freiberger forma parte de dicho proyecto y me ayudo bastante en todos estos aspectos computacionales.

CCAD: Muchas gracias Camila por tu tiempo.
CC: Gracias a ustedes, por proveerme el acceso al recurso y la buena predisposición  frente a mis consultas.

 


¿Por qué una computadora para Machine Learning sirve para Dinámica Molecular?

En HPC se habla de workloads similares, independientemente de que es lo que hace ese trabajo.

Por un lado tenemos Machine Learning (ML) que desde siempre se ha promocionado como el nicho donde las Graphics Processing Units (GPUs) resultan muy convenientes respecto a la relación de cálculos/tiempo (velocidad) y calculos/inversión (eficiencia económica). Esto es así porque las GPUs presentan una forma de paralelismo, ancho de banda a memoria y tipos de datos que es muy convenientes para este workload que tiene muchos cálculos de punto flotante de simple y media precisión (float32, float16, bfloat16, tfloat16, float24).

Por otra parte en Molecular Dynamics (MD), se empezó a utilizar cada vez más una técnica que se denomina mixed precision [1], para aprovechar el desbalance entre unidades de cómputo float64 y float32 que hay en las GPUs gamers (1:8, 1:32) respecto al diseño en CPU (1:2), además de aprovechar mejor la memoria en tamaño y ancho de banda, ya que para representar la posición de un átomo alcanza con float32. Lentamente todos los paquetes de MD empezaron a incorporar esta técnica y actualmente, la gran mayoría de estos paquetes hace casi todo sus cálculos en float32 [2].

Una GPU gamer es básicamente utilizar gran parte de esos aproximadamente 400m² de silicio para transistores de aproximadamente 10nm en unidades de cómputo para float32, ya que ese es el tipo de datos que los juegos utilizan para lograr el realismo 3D que la industria del videojuego requiere.

Los workloads de ML y MD son, a los ojos de las y los usuarios, dos cargas de trabajo en la cual la GPU brilla, tanto por su velocidad  — TFLOPS como en su conveniencia económica — TFLOPS/USD.

Esperamos conseguir más GPUs para apoyar de manera precisa y económica a estos dos tipos de workloads de gran importancia que tenemos en el CCAD-UNC.

Referencias

[1] Scott Le Grand, Andreas W.Götz, Ross C.Walker, «SPFP: Speed without compromise—A mixed precision model for GPU accelerated molecular dynamics simulations«, Computer Physics Communications, 184(2), 2013.

[2] Carsten Kutzner, Szilárd Páll, Martin Fechner, Ansgar Esztermann, Bert L. de Groot, Helmut Grubmüller, «More bang for your buck: Improved use of GPU nodes for GROMACS 2018«, Journal of Computational Chemistry, 40(27), 2019.

Comenzó el Ciclo de Charlas 2020

Con la presencia del Rector de la Universidad Nacional de Córdoba, Dr. Hugo Juri,  comenzó el Ciclo de Charlas 2020 del CCAD-UNC. El Director del CCAD, Dr. Oscar Reula, presentó el ciclo enfatizando sus objetivos, mientras que el Vicedecano de Ciencias Químicas, Dr. Marcelo Mariscal presentó a los investigadores invitados.

En la presentación el Dr. Juri destacó la importancia de la Supercomputación en la generación de ciencia de calidad y remarcó la importante inversión que está realizando la UNC con el UNC Data Center y el nuevo equipo de Supercómputo de la UNC, con una inversión que supera los 100 millones de pesos.
También estuvieron presentes el Dr. Gustavo Monti vicedecano de FaMAF y el Dr. Manuel Merchán, director del Observatorio Astronómico de Córdoba.

En esta ocasión el Dr. Cavasotto y el Dr. Villarreal contaron sus estrategias de reposicionamiento de fármacos para atacar el SARS-CoV-2, y remarcaron la importancia del equipamiento a disposición de ellos de manera exclusiva que el Centro dispuso desde mediados de marzo de este año. Además el Dr. Villarreal destacó el aporte del CPA CONICET, Lic. Carlos Bederián, que optimizó Vinardo, logrando un 30% de mejora en su rendimiento.

El video de la charla ya está disponible en nuestro Canal de YouTube.

El Ciclo de Charlas continua el miércoles próximo con invitados del Cono Sur. Nuestros hermanos trasandinos y rioplatenses nos contarán de sus nuevos equipamientos de HPC que pusieron en funcionamiento el año pasado.

Notas

Compra Comunitaria: RAM y SSD para nuevos nodos de Eulogia

Esta semana llegó al CCAD-UNC un lote de de memorias y discos de estado sólido para Eulogia por un total de $350.000 que aportaron las usuarias y usuarios del Centro. El lote se compone de:

Con esta Compra Comunitaria ya tenemos RAM y SSD para completar 4 nodos de los 12 que llegaron de Eulogia.

Agradecemos a las y los docentes investigadores que aportaron para que tengamos cuatro nodos más funcionando y así poder disminuir un poco los tiempos de espera en cola.

  • Pablo Serra, FaMAF-UNC, IFEG-CONICET.
  • Daniel A. García y Virginia Miguel, IIBYT-CONICET.
  • Javier Cotignola, IQUIBICEN-CONICET, QB-FCEN-UBA.
  • Daniel Barraco, LaES-UNC.
  • Federico Manuel Pont, FaMAF-UNC, IFEG-CONICET.
  • Ezequiel Leiva, LaES-UNC, FCQ-UNC, INFIQC-CONICET.
  • Andrés Nicolás Ruiz, OAC-UNC, IATE-CONICET, UNC.
  • Centro Científico Tecnológico (CCT) CONICET Córdoba, a través de Sergio Elaskar.
  • María Victoria Alonso, OAC-UNC, IATE-CONICET.
  • Manuel Merchán, OAC-UNC.
  • Miguel Pagano, FaMAF, UNC.

Aun necesitamos 48 módulos de RAM y 8 discos de estado sólido. Quienes quieran aportar, tienen que comunicarse con director@ccad.unc.edu.ar.
Los costos aproximados son:

  • Un (1) módulo de RAM: $11000
  • Un (1) disco SSD: $15000 (*)

Tal vez, en este contexto de pandemia, donde no es posible viajar a Reuniones Científicas, invertir en recursos para hacer simulaciones sea una buena inversión a futuro.

(*)
¿Porqué sale tan caro un SSD de 240 GiB?

Los discos de estado sólido son un milagro tecnológico. Desde que aparecieron en el mercado de consumo masivo a principios de siglo, se posicionaron de manera intermedia entre la RAM y los HDD, respecto al costo normalizado en MB. Con un seek time cercano a 0 y capacidades uno o dos órdenes de magnitud mayores a la DRAM, pronto se convirtieron en parte de todas las computadoras, desde µcontroladores a servidores de cálculo.

La tecnología tiene un problema distinto a la RAM y a esos platos que hacen girar óxido, o sea los discos duros. Cada celda de la memoria flash tiene un número máximo de escrituras, es decir se gasta. La durabilidad de los discos SSD se mide en TBW (terabytes written) que el fabricante asegura con la garantía. Un SSD para una notebook de uso hogareño sale, a valores de actuales unos $4500, los discos que llegaron $15000. Los discos que compramos para uso personal tienen 100 TBW, mientras que los que compramos en CCAD-UNC tienen 1.6 PBW. La cuenta es sencilla, 16 veces más de duración por 3 veces más costo. Seguramente en 10 años estemos usando exactamente los mismos discos.

 

La UNC adjudicó su próximo cluster

Esta semana el Honorable Consejo Superior de la UNC aprobó la adjudicación del PAGE No.1 a la Licitación Pública Nacional (LPN) para la adquisición de un «Sistema Integral de Supercómputo» por 371.784 USD a la firma Army Technologies / Multitech.

La Resolución del Consejo Superior 414-2020 finaliza un proceso de licitación que empezó en noviembre de 2019 y que casi termina la primera quincena de marzo, pero fue demorada por la pandemia de COVID-19. En el proceso de licitación hubo cuatro oferentes admisibles, todos con ofertas ajustadas al pliego técnico y con una buena relación GFLOPS/USD.

El proyecto PAGE adjudicado lo dirige el Dr. Marcelo Mariscal de FCQ y cuenta con la adhesión y el apoyo de un gran número de investigadores e investigadoras de FCE, FCQ, FCEFyN, Observatorio y FaMAF. Recordemos que este proyecto fue el #1 en el orden de mérito de la UNC y ahora también es el primero en hacer efectiva la compra.

El equipamiento adjudicado consiste en 60 nodos de cómputo dual AMD EPYC 7532 cada uno con 128 GiB de RAM DDR4-3200 y conectividad Mellanox Infiniband HDR100, todo encapsulado en chasis, fuentes y placas madre Supermicro A+ Server 2124BT-HTR.
La cuenta total de CPUs asciende a 3840 núcleos de arquitectura Zen 2.

La compra traerá una performance de 156 TFLOPS pico y 132 TFLOPS efectivo de potencia de cálculo, duplicando la capacidad pico y triplicando la capacidad de cálculo efectiva de todo el CCAD.

Promo de AMD sobre la nueva máquina

CCAD instala servers de cómputo en INTA

En septiembre de 2019 nos contactaron para acondicionar equipos destinados a Bioinformática desde el recientemente creado UFYMA, una Unidad Ejecutora de doble dependencia entre CONICET y Centro de Investigaciones Agropecuarias (CIAP) del INTA.

 

 

Se puso en funcionamiento un cluster compuesto por una cabecera HP DL580 Gen9 con 2*Xeon E7-4809v3, 512 GiB RAM y 5*256 GiB SSD RAID5 storage
y dos nodos de cálculo HP ProLiant XL170r Gen9 con 2*Xeon E5-2620v4 y 128 GiB RAM.
Los equipos estaban a la espera de instalar desde hace un par de años, y como el valor de las supercomputadoras se deprecia con el tiempo, el CPA de CONICET y técnico del CCAD, Lic. Marcos Mazzini aprovechó toda la experiencia de Mendieta y Mulatona.
Rápidamente instaló CentOS 7 y OpenHPC con SLURM en la cabecera y se configuraron los nodos para inicio remoto, a fin de poner en funcionamiento el servidor de cálculo.
También se instaló R y varios paquetes con adaptaciones para ejecutar desde el sistema de colas.
Otra parte importante del trabajo consistió en instalar Galaxy e integrarla con el sistema de colas. Galaxy es un sistema web que baja el umbral de entrada para aprovechar tecnologías de Computación de Alto Desempeño. Desde esta plataforma los usuarios cuentan con variadas herramientas de bioinformática y mediante la interfaz web pueden enviar los trabajos al cluster y manipular los resultados.

Marcos Mazzini, técnico del CCAD, trabajando en los servers del UFYMA (CONICET-INTA)

También se agregaron usuarios que realizarán secuenciaciones relacionadas a COVID-19. Se está a la espera de que la situación se normalice para transferir la administración al personal del CIAP.

Infraestructura CCAD y COVID-19

En marzo pusimos a disposición una partición y prioritaria para trabajos relacionados con COVID-19. Hubo tres proyectos que están haciendo uso de la infraestructura para simulaciones: dos de drug repurposing con diferentes enfoques, y uno sobre estrategias de cuarentena. Se utilizaron hasta ahora 54.000 horas/core de trabajo computacional.

Flyer realizado por Marcos Mazzini.

 

 

 

 

 

 

A partir del inicio del ASPO en Argentina, ofrecimos tiempo de cómputo prioritario para proyectos relacionados a COVID-19. Hubo tres proyectos que utilizaron los recursos computacionales del CCAD-UNC.

  • Drug repurposing de la FCQ-UNC: screening virtual de para predecir la interacción de fármacos con proteínas y testear fármacos ya aprobados por la FDA con el objetivo de comprobar si alguno es efectivo contra el SARS-CoV-2.
  • Drug repurposing del IIMT-Universidad Austral: el mismo objetivo que el anterior, pero con diferente base de datos de fármacos y la utilización de química cuántica para los cálculos de interacciones.
  • Estrategias de cuarentena basados en circulación de personas de FaMAF-UNC.

Segundos usos a fármacos conocidos

El equipo de la FCQ-UNC formado por Marcelo Piuatti (Química Orgánica), Alfredo Quevedo (Farmacia), Rodrigo Quiroga (Química Teórica), Alexis Paz (Química Teórica), Sergio Ribone (Farmacia) y Marcos Villarreal (Química Teórica).

Los investigadores nos cuentan de qué se trata el proyecto.

El objetivo del proyecto es el reposicionamiento de fármacos (repurposing) para enfrentar al COVID-19. El repurposing consiste básicamente en encontrar un nuevo uso para un fármaco ya conocido. En nuestro caso estamos utilizando docking molecular y simulaciones de dinámica molecular para realizar las predicciones.
En una primera etapa hicimos una exploración de la capacidad de unión de los más de 3500 fármacos aprobados para uso humano por la FDA (Food and Drug Administration de EEUU) en las 26 proteínas que conforman el virus SARS-CoV-2. De un primer análisis se identificaron varias proteínas como potenciales blancos farmacológicos, como ser la proteína Spike, la Helicasa y la 2-O-MT.
A mediados de Abril surgió una colaboración con el Dr. Cameron Abrams (Universidad de Drexel, Filadelfia) y el Dr. Andrés Finzi (Universidad de Montreal). Esta colaboración se centra en encontrar fármacos que mediante la inhibición de la proteína Spike impidan el ingreso del virus a la célula huésped. En la colaboración, el Dr. Abrams realiza simulaciones de dinámica molecular (MD) de la proteína Spike, nosotros realizamos docking y cálculos MM-GBSA sobre los resultados de la MD
(ver abajo el render estático y dinámico) y el Dr. Finzi ensaya experimentalmente las predicciones en un modelo de infección viral que ha puesto a punto en su laboratorio. Actualmente se han probado 7 compuestos con resultados un poco contradictorios. En un comienzo los ensayos mostraron potencial inhibitorio en varias de las drogas, mientras que en una segunda repetición fueron inactivos. En el laboratorio del Dr. Finzi se encuentran realizando nuevos ensayos al respecto.
Mientras aguardamos novedades estamos por retomar la idea original de estudiar las restantes proteínas del virus.

En la parte de docking, los investigadores hicieron un fork del proyecto iDock que denominaron Vinardo. Los investigadores explican que fué lo que cambiaron.

Nosotros le metimos mano, más del lado de la química que desde el lado de computación. Básicamente mejoramos la forma de estimar la energía de unión, que es el core del problema.

Vinardo no corría de manera eficiente en los 64 núcleos KNL de los nodos de Eulogia, por lo que el CPA Principal de CONICET Carlos Bederián transformó el paralelismo que hacía uso de boost::threads a OpenMP obteniendo una ganancia sustancial de desempeño.

Otra vuelta de tuerca al Drug Repurposing

El Laboratorio de “Diseño Computacional de Fármacos e Informática Biomédica” del Dr. Claudio Cavasotto (Instituto de Investigaciones en Medicina Traslacional, CONICET-Universidad Austral) publicó recientemente un trabajo usando la estrategia de reposicionamiento de fármacos, en el que se analizaron más de 11.000 compuestos, y se identificaron candidatos promisorios para COVID-19.

Juan Di Filippo, becario doctoral del Dr. Cavasotto estuvo utilizando MOPAC 2012 (Molecular Orbital PACkage), un paquete de química quántica (QC), para cálculos de proteínas del SARS-CoV-2 que genera el COVID-19. El trabajo fué además reseñado por la Universidad Austral, la Agencia Telam y el diario Clarín. Los autores nos comentan que,

La idea fue optar por una estrategia de reposicionamiento de fármacos, es decir encontrar un uso nuevo a un fármaco conocido. De esta forma, se ahorra mucho tiempo y se reducen los costos, ya que los fármacos conocidos ya han pasado las etapas de evaluación de toxicidad y propiedades farmacológicas. Ten en cuenta que el tiempo y costo total para desarrollar una nueva droga desde sus inicios se estima en +10 años y +2.5 billones de dólares.

Es importante marcar la diferencia con el trabajo realizado por el equipo de la FCQ-UNC. Una de las diferencias es la base de datos de moléculas, que fue construida por el Dr. Cavasotto a partir de fármacos aprobados para su uso o que están avanzadas en las etapas de evaluación.
Otra diferencia es que además de Spike se utilizan otras dos proteasas como blanco de la drogas. Se utilizó el paquete MOPAC 2012 de química cuántica (QC) para generar el ranking de que tan «buenas» serían esas moléculas como ligandos de las proteínas de interés. El método es un desarrollo del grupo de Cavasotto y resulta novedoso respecto a la metodología más tradicional de scoring basado en mecánica clásica.

Estrategias de Cuarentena

Benjamín Marcolongo de FaMAF-UNC realizó simulaciones de estrategias de cuarentena basados en la circulación de personas. El nos cuenta de que se trata su trabajo:

Estoy usando Mendieta para hacer simulaciones de epidemias con modelos de agentes móviles que pueden transportar información -en este caso una enfermedad-. Es decir, simulamos personas -agentes móviles- que se mueven, interactúan -a través de choque- y que durante esa interacción pueden transmitir la enfermedad. Esto es, básicamente, el proceso concreto con el que las enfermedades se propagan.

Benjamín compara esta forma de atacar el problema con las llamadas Teorías de Campo Medio, donde el ejemplo que más conocemos es el modelo que utiliza R0 también conocido como Ritmo Reproductivo Básico, que puede depender de muchas cosas

El objetivo de la investigación es entender cuál es el rol de la movilidad o circulación de personas en la propagación de una enfermedad. También se busca explicar las fluctuaciones en el proceso epidémico a partir de estas circunstancias de movilidad. Marcolongo se pregunta:

¿Por qué en ciudades con características similares se pueden ver resultados tan diferentes? ¿Cómo se conecta la aleatoriedad del movimiento de los individuos en una sociedad con la probabilidad de que haya una epidemia? ¿Cómo varían los resultados respecto de distintas «estrategias» de movimientos? ¿Cuán sensible son las respuestas de los modelos a la implementación de cuarentenas -que se traducen en políticas de reducción de circulación-? ¿Cuál es el alcance y las limitaciones de este tipo de teorías para explicar fenómenos tan complejos como las epidemias? ¿Es posible predecir un pico y la duración de un pico? ¿Es posible asociar una teoría basada en distribuciones de probabilidades que sirva para hacer predicciones razonables? Son algunas de las preguntas que nos estamos haciendo y que en gran medida estamos empezando a entender.

El rol del CCAD-UNC es fundamental, ya que el proceso de simulación es computacionalmente intensivo.

La supercomputadora me permitió hacer miles de experimentos que son costosos. En cada simulación tengo que evolucionar en el tiempo una sociedad con todos sus individuos y con todas sus interacciones. Hacer tantos experimentos numéricos -que son necesarios para construir la estadística- con mi computadora de escritorio me hubiera llevado meses -tal vez años-. Con un nodo de Mendieta y paralelizando las simulaciones pude hacer -al día de la fecha- alrededor de 50 mil simulaciones de epidemias en distintas condiciones. Estoy convencido que sin este nodo  mi investigación hubiera sido mucho más lenta y con resultados más difusos.

El software es un desarrollo propio en C++ que utilizar un red-black tree para optimizar la parte de las interacciones. Aunque el programa simula en un tiempo razonable 100.000 partículas, es decir el tamaño de una ciudad, se optó por un modelo más pequeño de 1000 agentes para poder hacer estadística, ya que los procesos son estocásticos. Marcolongo ensaya a manera de resumen.

Lo principal que vemos es que la movilidad es muy importante para entender si hay o no epidemias y las fluctuaciones son enormes. Es decir: si tirás una epidemia en la misma ciudad podés tener resultados muy diferentes.

 

Notas relacionadas

Tres servidores nuevos para Eulogia

Aumentamos la capacidad de Eulogia en más de 50%, pero con las elecciones de diciembre de 2019 y la pandemia todo se retrasó. La historia atrás de una barata de nodos para Eulogia que encontramos en eBay.

Cuando Carlos Bederián encontró el 22 de octubre del año pasado una promo de nodos KNL (Xeon Phi 7210) en eBay, no pensamos que podríamos comprarlos. Carlos conectó un par de cosas y encontró que el vendedor era Lambda Labs con sede en San Francisco, California, EEUU.

El 25 de octubre ya estábamos en contacto con la empresa pidiendo un presupuesto oficial, y el 31 ya teníamos un presupuesto mejorado y acorde al bolsillo del CCAD-UNC. El 15 de noviembre presentamos ROECYT y el 28 se giró el dinero desde el BNA al banco receptor vía el BCRA.
La transferencia llegó a destino 99 días después, el 6 de marzo. Las razones fueron varias: elecciones presidenciales 2019, cambio de gobierno y limitaciones del BCRA.

Ese mismo día, desde Lambda Labs nos mostraban las cajas listas para ser despachadas. Tres chasis 2U de 4 nodos KNL 7210 cada uno, totalizando 12 procesadores de 2.66 TFLOPS pico cada uno. Nos estaban mostrando 32 TFLOPS para sumar a los 56 TFLOPS de Eulogia. Esto significaba aumentar la capacidad de nuestra máquina un 57%.

La pandemia del COVID-19 avanzaba a pasos agigantados y el 16 de marzo se cerraron las fronteras en Argentina. Con ello la llegada de los vuelos MPTO a SACO quedaban cancelados, la vía usual que tenemos para recibir envíos. El 20 de marzo empezaba el ASPO en el país, y en San Francisco (EEUU) había medidas similares. A principios de mayo supimos que los vuelos de COPA a Córdoba se reanudarían recién el 7 de septiembre.

El 2 de junio, 88 días después de que estuvieran listos, el forwarder contratado nos indica que a un mayor costo podrían traer la carga vía SCEL y luego por camión a Aduana Córdoba. Los 125 Kg de carga viajaron el 12 de junio. Estimamos que diez días después estarán en Córdoba.

Los módulos vienen sin memoria y sin disco. Estaremos haciendo una compra comunitaria entre todos los usuarios del CCAD-UNC para llenar los 12 nodos y ponerlos a producir. Necesitamos:

  • 72 módulos 16 GiB DDR4-2400 2Rx4 ECC REG.
  • 12 discos Intel S4610 240GB.

Hacer HPC en Argentina es un deporte de riesgo. En el CCAD-UNC lo practicamos a diario.

Actualización

Nueva demora. Por nieve en el Paso Cristo Redentor, la carga llegará 14 días después.

Actualización II

El 30 de junio de 2020 el camión llegó a Córdoba.

Actualización III

El miércoles 8 de julio finalmente pudimos sacar los equipos y dejarlos en el datacenter de la PSI en el Pabellón Argentina de Ciudad Universitaria.

Queremos agradecer especialmente las gestiones de Isidoro Díaz (Comercio Exterior, FaMAF-UNC), Alejandra Maldonado (Área Económico Financiera, FaMAF-UNC), Susana Navas (Córdoba Internacional), Mario Farías  (Comercio Exterior UNC), Marcela Giomi (Comercio Exterior UNC) y Marcela Yorio (AFIP-DGA) que hicieron posible que hoy ya tengamos estos 32 TFLOPS pico en nuestras manos.

Notas periodísticas

 

Federico Barone: «no se puede hablar de desarrollo tecnológico nacional sin hablar de HPC»

Un físico argentino obtuvo el premio a la mejor tesis del Master en HPC del ICTP (MHPC) en Trieste, Italia. «Disculpá la demora, fueron unas semanas complicadas por acá. De hecho el plan de sacarme la foto con el cluster es imposible… «, nos respondió Federico que está pasando la cuarentena por el COVID-19 en la zona más afectada de Europa.
CCAD: ¿Qué estudiaste en Argentina? ¿Cómo llegaste a Trieste para dedicar 2 años de tu vida a formarte en HPC?
Federico Barone: Mi llegada a Trieste y al mundo de HPC fue un tanto aleatoria. Estudié Ciencias Físicas en la UBA, y aunque siempre me interesó la programación, no fue algo que estudié formalmente. Mi interés fue desde el vamos la física aplicada donde la computación cumple un rol fundamental. Durante la tesis de licenciatura y una vez terminada la carrera trabajé en YTEC desarrollando modelos matemáticos de distintos fenómenos. En ese período realicé un curso de programación en paralelo organizado por el ICTP con la expectativa de aplicarlo a mis tareas en YTEC. A partir de ese workshop quedé muy enganchado con todo lo relacionado a HPC y terminé optando por aplicar al MHPC para profundizar mis conocimientos en el área.
CCAD: En la Lic. en Física de UBA y/o en YTEC ¿Habías tenido experiencia en computación paralela?
FB: La licenciatura no incluye ningún contenido formal en computación paralela. Empecé a incursionar en el tema por recomendación particular de compañeros y profesores, motivado en algún problema de física puntual en donde la programación en paralelo transformaba un problema aparentemente no computable en uno computable. En YTEC trabajaba desarrollando simulaciones en donde HPC podía ser relevante pero no llegué a implementarlo ya que ese fue el momento en que me fui a hacer el Master a Trieste.
CCAD: Por tu formación de físico, ¿Qué te costó más y que te resultó mas sencillo de la Maestría?
FB: Al nunca haber recibido educación formal en programación lo que más me costó/cuesta es modificar la manera en que programo de forma tal que el código sea legible, comprensible y sobre todo mantenible. Es muy distinto desarrollar código para uno mismo que para otras personas.
La ventaja de tener una formación en física fue en todo lo relacionado a HPC para programación científica. El máster tiene una gran carga horaria dedicada a este tipo de problemas y la base en física, pero sobre todo en matemática, fue de gran ayuda.
CCAD: ¿De que se trató tu trabajo final de la Maestría? ¿Qué equipamiento utilizaste?
FB: Mi trabajo final no fue una tesis ‘tradicional’ dentro de las que suele haber en el master. Trabajé en conjunto con un hospital oncológico para desarrollar un algoritmo de compresión de imágenes médicas. El objetivo era optimizar el acceso y el análisis de los datos. El algoritmo está basado en redes neuronales y fue entrenado utilizando un nodo con dos tarjetas gráficas NVIDIA Tesla P100.
CCAD: Esta es la segunda vez consecutiva que un argentino/a gana el premio a la mejor tesis del MHPC, antes lo recibió Alejandra Foggia, los dos con formación de grado en física. ¿Las y los físicos quieren conquistar este bastión de las Ciencias de la Computación?
FB: Imposible que lo conquistemos, pero sin lugar a duda es una herramienta accesoria que a medida que pasan los años se está transformando en una necesidad excluyente para todo aquel que quiera hacer investigación de punta tanto en Física como en otras áreas.
CCAD: ¿Vas a volver a Argentina para aplicar tus conocimientos de HPC?
FB: Mi idea es volver a la Argentina pero todavía tengo mucho camino por recorrer antes de poder contribuir de alguna manera significativa.
Estoy en plena etapa formativa y necesito ganar experiencia trabajando en problemas reales.
CCAD: ¿Cómo ves al HPC en Argentina? ¿Qué se debería hacer a futuro?
FB: Como en cualquier rama tecnológica desarrollada en el país el capital humano está pero hacen falta más y mejores inversiones. La inversión en el cluster TUPAC fue una buena señal en su momento y es un camino que espero se retome. Quizás un poco influenciado por mi entorno actual considero que no se puede hablar de desarrollo tecnológico nacional sin hablar de HPC.