Pensamientos más profundos

Lo máximo en máquinas de juego.

Supercomputación. El mundo cuenta con una nueva computadora más rápida, gracias a los juegos de video 

Fanáticos de la velocidad como son a los obsesivos de la informática les gusta verificar la página web de Top500, una colaboración entre los científicos de computación estadounidenses y alemanes que mantienen datos sobre cuáles computadores son las más rápidas. El 12 de noviembre la página divulgó su lista más reciente y desveló un nuevo campeón.

La computadora en cuestión se llama "Titan", y se encuentra en el Laboratorio Nacional de Oak Ridge, en Tennessee. Ocupó el primer lugar de otra máquina estadounidense, la "Sequoia" de IBM, que se encuentra en el Laboratorio Nacional Lawrence Livermore en California. Estas dos computadoras han ayudado a reafirmar el dominio de los Estados Unidos en una lista que, en los últimos años, había sido encabezada por computadoras de China y Japón.

Titan es diferente de otros campeones en varias formas. Por un lado, es un sistema abierto, que significa que investigadores científicos con problemas suficientemente complicados podrán optar por utilizarla, igual que muchos astrónomos concursan para utilizar los telescopios. Por el contrario, Sequoia, se pasa la mayor parte de su tiempo en simulacros muy callados de armas nucleares, y por lo tanto muy rara vez está a disposición del público.

Titan también tiene un diseño poco usual. Todas las supercomputadoras están formadas por miles de chips procesadores enlazados. Con frecuencia, estos son derivados de las unidades centrales de procesamiento, o CPU, que se encuentran en el corazón de las modernas computadoras de escritorio. Pero Titan deriva la mayor parte de su empuje -más de 90%- de la tecnología originalmente desarrollada para la industria de juegos de video. La mitad de sus 37,376 procesadores son CPU corrientes. Pero la otra mitad son unidades de procesamiento de gráficos, o GPU. Estos son dispositivos especializados diseñados para manejarse con juegos de video modernos, que son algunas de las más exigentes aplicaciones que podría utilizar cualquier equipo de hogar. La máquina china "TianHe-1", una ex campeona Top500, fue construida de la misma forma, al igual que otras 60 máquinas de la lista Top500.

Mundos paralelos

En términos generales, un CPU - que se espera maneje cualquier cosa desde una hoja electrónica hasta software de reconocimiento de voz y videos codificados - tiene que ser generalista, competente en todo tipo de tarea matemática pero sin sobresalir en ninguna. Por el contrario, un GPU, está diseñado para sobresalir en una sola cosa: manipulación de cifras enormes de los triángulos de donde surgen todos los gráficos modernos de computadoras.

Hace varios años investigadores de Nvidia y AMD (las dos compañías que producen la mayoría de los GPU de alto desempeño) se percataron de que muchos problemas científicos que demandan enormes cantidades de poder de computación -desde simulacros climáticos y modelado de combustión en un motor para análisis sísmico para la industria de petróleo y gas- podía ser traducido a una forma que era digerible para sus GPU. Poco después, los fabricantes de supercomputadoras tales como Cray (que creó a Titan utilizando GPU de Nvidia) empezaron a prestar atención.

El tomar prestado de la industria de juegos de esta manera ofrece varios beneficios. Uno grande es la eficiencia. Titan es un mejoramiento de la máquina "Jaguar" de Oak Ridge. El mejoramiento de Jaguar con un CPU corriente habría significado la creación de una computadora que requeriría 30MW de electricidad operando a toda máquina - energía suficiente para proveer electricidad a un pueblo pequeño. Debido a que los GPU son tan buenos en su tarea especializada, Titan puede lograr su increíble rendimiento mientras solo requiere de la cantidad (relativamente) modesta de 8.2MW.

También tiene sentido financieramente, dice Sumit Gupta, el jefe de supercomputación de Nvidia. Los chips que la empresa vende a los fabricantes de supercomputadores son casi idénticos a los que vende a los fabricantes de juegos. Como señala Gupta, "la historia de alto desempeño en computación está plagada con los cuerpos de empresas que trataron de fabricar productos solo para el mercado de supercomputadoras. En sí mismo, es un nicho demasiado pequeño."

Sin embargo no todo es positivo. Titan logra su velocidad desmenuzando un problema en miles de pequeños pedazos y enviando cada uno a un solo procesador. Una analogía útil, quizás, es pintar una casa: una estrategia podría ser contratar a un solo pintor, pero probablemente sería más rápido emplear varias personas y que cada una pinte una habitación.

No todos los problemas son susceptibles de ser desmenuzados de esa manera (otra analogía sería la contratación de una docena de barberos, es poco probable que acelere de manera significativa un corte de pelo.) Otra barrera es el requisito de traducir un problema al tipo de matemáticas que un GPU puede digerir. Gupta da el ejemplo de los modelos utilizados para simular cómo un carro reaccionará en un choque como uno de los problemas que hasta ahora ha resistido lo que la industria llama el enfoque "masivamente paralelo". Programadores inteligentes en ocasiones encuentran una salida a estos temas: el trazado de rayos, un enfoque matemático intenso de alta calidad de los gráficos computarizados que está dirigido a simular rayos de luz individuales, irónicamente durante mucho tiempo se pensó que era el tipo de problema con el que un GPU moderno tendría dificultades. Sin embargo en una conferencia de gráficos en el 2008, un grupo de investigadores de Nvidia anunció que habían encontrado la forma de hacerlo.

Oak Ridge y Nvidia tienen planes de trabajar con científicos que desean tiempo en el Titan para ver si sus algoritmos pueden ser ajustados de manera similar, para hacerlos más digeribles para la nueva máquina. Gupta está optimista. Hasta el recalcitrante simulacro del choque de vehículos, piensa él, se rendirá pronto ante el nuevo enfoque. Pero eso no significa que todos los problemas se pueden solucionar. Y los científicos que encuentran que no pueden ajustar sus códigos podrían encontrarse luchando por aprovechar el desempeño cada vez mejor de las computadoras más rápidas del mundo.

© 2012 The Economist Newspaper Limited. All rights reserved. De The Economist, traducido por Diario Libre y publicado bajo licencia. El artículo original en inglés puede ser encontrado en www.economist.com