Mi otra computadora es un clúster Beowulf de 4.000 nodos -- ThinkGeek
Un clúster es una consolidación de software y hardware configurados para resolver tareas computacionales de forma paralela y en red. El más importante de todos los clústers fue uno humilde y legendario, el Cluster Beowulf creado en la NASA en 1994 con hardware de tercera clase, casi de desecho, sin embargo adecuado para crear una útil supercomputadora. Me atrevo a decir que con esto cambio la historia de la computación científica.
Los antecedentes
La llegada de los mainframes significó una revolución para la ciencia, especialmente en áreas con modelos matemáticos complejos o que requieren cálculo numérico intensivo: particularmente Física y Química. El problema es que los mainframes llegan a alcanzar precios exorbitantes, sólo factibles para las principales universidades y centros de investigación del planeta.
Por ejemplo, la primera unidad de la famosa supercomputadora Cray-1 fue vendida en 8.8 millones de dólares a mediados de los años 70. Claro que así como la Ley de Moore se cumplió en los procesadores, también en las supercomputadoras y para la década de los 80 y 90 el panorama fue muy favorable en todos sentidos, pero el costo de los equipos y su mantenimiento (generalmente pactado en contratos anuales de miles de dólares) se mantuvo elevado.
Por otra parte, la arquitectura de las supercomputadoras era casi exclusivamente de propósito específico, muy interesante es cierto, pero que por ser el resultado de diseños exclusivos elevaba sin remedio su precio. La llegada de los clústers cambió el estado de las cosas, porque democratizó el acceso al supercómputo, lo hizo más barato, tanto en su construcción como en su mantenimiento, y con creces más flexible que mainframes y supercomputadoras de diseño.
La leyenda
Beowulf es una de las obras cumbre de la literatura anglosajona protagonizada por un héroe homónimo con la fuerza de unos treinta hombres en la palma de su mano. Este don inspiró a Thomas Sterling (en la foto) y Donald Becker para iniciar el Proyecto Beowulf durante su estancia en la NASA allá por 1994 con el objetivo de construir una máquina que sumara la fuerza computacional de muchas.
Cuentan que el éxito fue inmediato: agruparon 16 procesadores Intel DX4 de unos 100 MHz, los interconectaron con tecnología Ethernet a 10 Mbps, en equipo viejos con Linux instalado, para ejecutar tareas científicas en paralelo a un precio incomparablemente bajo para su tiempo. De hecho el kernel Linux de aquel entonces no tenía tanto soporte para placas Ethernet como hoy en día, por eso Donald Becker se dio a la tarea de escribir drivers propios que por supuesto compartió a la comunidad.
Primero fueron los colegas de la NASA, luego los de otros centros investigación en EE. UU., Europa, Asia y hasta Latinoamérica, la idea de una nueva técnica para abaratar el preciado poder del supercómputo se hizo viral y en pocos años el cómputo científico llego a los más "pobres": a los que no podían pagar cientos de miles de dólares en la compra y mantenimiento de equipos que, en el mejor de los casos, duraban vigentes unos tres años.
Así nació una leyenda que sigue su curso, y hasta gabinetes IKEA beowulf existen ahora que el supercómputo dejó de ser un recurso exclusivo.
Los comentarios finales
Los clústers no serían posible sin tecnologías abiertas, sin Linux, el software libre y su comunidad, sin la mejora constante de las técnicas para abaratar y escalar ese tipo de supercomputadoras. Muchas guías y aplicaciones para clústers Beowulf existen en la red. Mi recomendación para los más curiosos es que investiguen y saquen del abandono esos viejos equipos para construir su propia supercomputadora personal, su pequeña granja de servidores, tendrán una experiencia llena de aprendizaje. Se los dice un fanático.