Doce mil computadoras en una sola
Hace pocos meses se puso en funcionamiento en el Polo Científico Tecnológico de Palermo la supercomputadora TUPAC, un cluster de computadoras que trabajan en paralelo con una capacidad de cálculo equivalente a 12.000 computadoras hogareñas. Permite simular procesos complejos de diversa índole y promete motorizar el progreso tecnológico del país.
A mediados de marzo de este año la presidenta de la Nación, Cristina Fernández de Kirchner, presentó en videoconferencia desde Casa de Gobierno la flamante supercomputadora TUPAC. Desde el Centro de Simulación Computacional para Aplicaciones Tecnológicas (CSC), dependiente del CONICET, ubicado en el Polo Científico Tecnológico, encabezaron el acto el ministro de Ciencia, Tecnología e Innovación Productiva, doctor Lino Barañao; el presidente del CONICET, doctor Roberto Salvarezza; el presidente de la Agencia Nacional de Promoción Científica y Tecnológica, doctor Fernando Goldbaum; el responsable de la puesta en funcionamiento de TUPAC, doctor Eduardo Dvorkin; el responsable técnico de TUPAC, el doctor Esteban Mocskos; y la doctora Cecilia Galarza, integrante de la Comisión Asesora de esta iniciativa tecnológica.
Durante la comunicación con la presidenta, el titular de la cartera de Ciencia sostuvo que “esta computadora es una muestra de la alta tecnología puesta al servicio del desarrollo económico y social del país”. Barañao aseguró que se trata de “una iniciativa que nos pone a la vanguardia en la región en cuanto a sus capacidades de procesamiento de datos y que permitirá la realización de estudios de gran impacto a nivel económico y social”.
A su turno, Dvorkin explicó el porqué del nombre elegido para la supercomputadora: “Túpac Amaru luchó por la independencia de los pueblos americanos. Hoy la lucha por la independencia pasa por el dominio nacional de la tecnología; el cluster TUPAC será una herramienta vital en esta lucha”.
Todas las pompas de su inauguración indican que TUPAC está destinada a ser una referente poderosísima de un fenómeno que en la última década fue tomando forma en nuestro país: la computación de alto rendimiento o high performance computing (HPC, por sus siglas en inglés). Se trata de una tecnología de enorme capacidad de cálculo. Para que se entienda: TUPAC está conformada por un grupo de computadoras, que ocupan un espacio similar al de cinco heladeras, pero cuyo poder de procesamiento es equivalente a 12.000 PC hogareñas. La particularidad de este conglomerado es que sus integrantes están unidas entre sí por una red de alta velocidad y se comportan como si fuesen una única computadora: por eso se lo llama cluster.
“Dentro de sus prestaciones, TUPAC puede simular procesos de fractura hidráulica (fracking) para la industria petrolera, específicamente la técnica a utilizar por YPF en la explotación hidrocarburífera de Vaca Muerta. A su vez, puede desarrollar modelos de predicción meteorológica para el Servicio Meteorológico Nacional (SMN), modelados estructurales y fluidodinámicos de vehículos espaciales (como el Tronador II, de la CONAE) y aeronaves en general. También puede ser utilizada para modelos de radar y sonar por la empresa INVAP”, ejemplifica el doctor Eduardo Dvorkin, director del proyecto.
En el Sistema Nacional de Computación de Alto Desempeño (SNCAD) de Argentina ya hay registradas treinta y seis supercomputadoras, claro que no de las dimensiones y potencia de TUPAC, que posiciona a la Argentina, junto con México y Brasil, entre los países líderes en tener este tipo de equipamiento en Latinoamérica. La instalación de TUPAC demandó una inversión de 1.212.486 dólares y 2.745.785 pesos, aportados por la Agencia Nacional de Promoción Científica y Tecnológica (ANPCyT) y el CONICET. Cabe aclarar que antes de la inauguración de TUPAC, la Argentina ya contaba con una de las supercomputadoras más rápidas de la región: el espécimen en cuestión es Mendieta, y está emplazada en el Centro de Computación de Alto Desempeño (CCAD) de la Universidad Nacional de Córdoba (UNC).
Divide y vencerás
TUPAC, como muchas de sus congéneres, es un cluster computacional dirigido a la resolución de modelos matemáticos por medio de simulación numérica. Se trata de encontrar soluciones a las ecuaciones que gobiernan los procesos del sistema que se estudia. Una simulación hace posible recrear una y otra vez aquello que sucede en un sistema integrado por muchísimos elementos individuales sin necesidad de insumir el tiempo y los recursos que requeriría repetir el experimento real. Existen muchos tipos de simulación por computadora, pero todos ellos comparten una característica común: tratan de generar una muestra de escenarios representativos para un modelo en el que una relación completa de todos los estados posibles de este sería muy costoso o imposible. “Hoy en día, la simulación es una herramienta crítica e indispensable en casi cualquier proceso de creación de conocimiento o de desarrollo tecnológico”, puntualiza el doctor Esteban Mocskos, responsable técnico de TUPAC y docente de Exactas-UBA.
Mediante el uso de supercomputadoras se puede modelar el clima (pasado, presente y futuro); estudiar el Sol y o el nacimiento de una galaxia; simular de qué manera un tsunami podría afectar una determinada costa o ciudad; probar la aerodinámica de aviones militares; modelar cómo la modificación de determinadas proteínas puede afectar a las personas que sufren la enfermedad de Alzheimer; y modelar explosiones nucleares sin la necesidad de verdaderas detonaciones.
Hoy, en diversos campos tecnológicos existe la necesidad de contar con equipos de HPC que permitan resolver los problemas que plantean las simulaciones utilizando lo que se llama técnicas de paralelización o procesamiento en paralelo. “Paralelizar es aplicar la estrategia de dividir para conquistar”, metaforiza Nicolás Wolovick, doctor en Computación de la Universidad Nacional de Córdoba y uno de los miembros del CCAD-UNC, responsable de la supercomputadora cordobesa Mendieta. “Particularmente en HPC, significa dividir el cálculo en partes y hacer que estas partes progresen en forma simultánea. Entonces, si se tiene un problema que requiere de diez veces la velocidad de cálculo de una computadora, se buscan diez computadoras y se reorganiza el cálculo para dividir el trabajo en diez partes”.
Los conocedores del tema saben que el desarrollo de software paralelo es una tarea nada sencilla para la cual se requiere bastante tiempo y muchas habilidades. “La combinación de necesitar recursos humanos altamente capacitados y de tener que usar estos recursos por mucho tiempo hace que no sea algo accesible a cualquier proyecto”, señala Mocskos.
TUPAC sin duda abrirá las puertas para la realización de proyectos de una envergadura que, hasta el momento, estaba por fuera de las posibilidades de nuestro país. “El mayor desafío que enfrentamos recae en la utilización de esta herramienta para proyectos que tengan que ver realmente con el avance tecnológico del país y lograr que tenga un impacto en el desarrollo de productos o tecnologías que aumenten el valor agregado a nivel país”, invita Mocskos.
La propia historia computacional
En el mundo, quienes se dedican a la HPC realizan cada año un listado con las quinientas supercomputadoras más rápidas del mundo, con mejores desempeños. Este análisis muestra que en las últimas dos décadas las prestaciones de los sistemas ubicados en el primer puesto ha crecido sostenidamente, cumpliendo la ley de (Gordon) Moore (uno de los fundadores de Intel) y duplicando la potencia, aproximadamente, cada catorce meses. En junio de 2013, el sistema más rápido, el Tianhe-2, de China, era 419.100 veces más rápido que el sistema más rápido en noviembre de 1993. Por debajo del Tianhe-2 se ubican Titan y Sequoia, ambas de Estados Unidos, y K Computer, de Japón. “Hay una correlación muy fuerte entre una economía que desarrolla productos y el uso de herramientas de cómputo de alto desempeño como TUPAC”, indica Mocskos. “Por ejemplo, si se desarrolla un nuevo material cerámico, la utilización de ese nuevo material en un producto industrial da valor agregado a ese producto. Ese camino es el que se sigue en todas las economías que lideran los desarrollos industriales en el mundo”.
Pensar el fenómeno que supone la instalación del cluster TUPAC desde la perspectiva de nuestra propia historia, conduce en forma casi directa a la instalación de la computadora Ferranti Mercury, más conocida como Clementina, en el Instituto de Cálculo de la UBA en 1961. “Clementina, que fue la primera computadora de uso científico disponible en nuestro país, tenía una triple misión: docencia, investigación y servicio. Los servicios tenían como principales usuarios a distintos organismos como la CNEA, EnTEL, INTA, YPF, Instituto Nacional de la Salud (INS) o el Instituto de Sociología, entre otros. Este último objetivo o misión –la de resolver problemas computacionales de otros organismos– es idéntico al que tiene TUPAC, que prestará servicios a YPF, INVAP, y FAdeA (Fábrica Argentina de Aviones), entre otras”, historia Gustavo Del Dago, integrante del proyecto Salvando la Memoria de la Computación Argentina (SaMCA), una iniciativa que se originó en 2007 como respuesta a la preocupación de un grupo de informáticos por incorporar dentro del campo disciplinar líneas de investigación sobre su propia historia.
Del Dago es especialista en desarrollo de software y profesor de computación en escuelas técnicas, además de pionero de la arqueología computacional, una incipiente disciplina en la Argentina. “Preservar programas, desarrollar ecosistemas (emuladores) donde volver a ejecutarlos y realizar estudios en profundidad sobre estos objetos, son las tareas principales que realizamos cuando trabajamos bajo este enfoque”, describe este especialista, quien desarrolló una reconstrucción del ambiente de programación y ejecución de la Ferranti Mercury y, en particular, del lenguaje COMIC, primer lenguaje de computación desarrollado en el país. Esto le sirvió para poner a funcionar y estudiar programas que nunca más se utilizaron después de La Noche de los Bastones Largos.
“Una consecuencia no planeada, o por lo menos nunca expresada de forma explícita, de la adquisición de Clementina fue la creación de la primera carrera de Computador Científico. Se podría decir que en la búsqueda de soluciones a problemas provenientes de otras disciplinas comenzaron a aparecer algunas soluciones que implicaron un dominio muy amplio del instrumento con el que se trabajaba. De modo que se comenzó a trabajar en problemas propios de la computación. El primer lenguaje y compilador (COMIC), el desarrollo de simuladores y software de base, fueron los primeros pasos en la incipiente disciplina que hoy conocemos como Ciencias de la Computación. En ese mismo sentido, veo la incorporación de TUPAC como la de un nuevo instrumento, que a la vez que permite resolver los problemas que hoy requieren gran capacidad de cómputo, se convierte en un objeto de estudio que nos puede permitir abordar este nuevo y vasto campo disciplinar que es la computación de alto rendimiento”.
En la actualidad, Del Dago se encuentra trabajando en un plan de formación sobre temas de computación de alto rendimiento orientando a estudiantes secundarios y utilizando las netbooks del Programa Conectar Igualdad. “Esto implica que muchas de las políticas de Estado se refuerzan mutuamente”, observa el docente.
Lo más interesante de esta historia es que no es solo historia, fundamentalmente es futuro.