Empresas de telecomunicaciones, bancos, proyectos científicos y cualquier otra compañía que requiera de un alto procesamiento de cómputo tiene claro que la única solución son los HPC o Sistemas de Alto Rendimiento Computacional.
Cuando se habla de infraestructura informática de alto rendimiento (High Power Performance Computer - HPC) o clúster de alto rendimiento, el término se suele confundir con alta disponibilidad. Pero el alto rendimiento se refiere a las propiedades del hardware y software para brindar poderosas prestaciones en cuanto a capacidad de cálculo se refiere.
En términos simples, HPC significa una gran demanda de procesamiento de datos en procesadores, memoria y otros recursos de hardware, donde la comunicación entre ellos es muy rápida. La capacidad de procesamiento con la que cuentan estas supermáquinas permite satisfacer las necesidades más exigentes de la ciencia, la investigación y la industria en general.
Las arquitecturas tradicionales de los microprocesadores tienen atributos fundamentales que limitan su desempeño. Para lograr un alto rendimiento, los procesadores no solo deben ejecutar las instrucciones de una manera más rápida, sino, que también deben ejecutar más instrucciones por ciclo de reloj, a esto nos referimos como una mayor "ejecución en paralelo". Esto permite que más información sea procesada al mismo tiempo, por consiguiente esto mejora el rendimiento global del procesador.
Dentro de este contexto una de las configuraciones más utilizadas es la "computación paralela", que se refiere a una máquina con dos o más procesadores que pueden trabajar simultánea y/o coordinadamente. Hay de dos tipos: MIMD (Multiple Instruction Multiple Data), y SIMD, que se refiere a que los procesadores ejecutan las mismas instrucciones pero con diferentes datos.
Con el tiempo, esta tecnología ISA de 64 bits trajo consigo un modus operandi innovador, que está superando a todas las limitaciones de las arquitecturas tradicionales. Con esto, la industria está migrando a los 64 bits, como una forma de implementar un sistema de alta "performance".
Existen básicamente tres tipos de técnicas para el mejoramiento de desempeño: El paralelismo explícito, la predicación y la especulación. En el paralelismo explícito, las órdenes recibidas se organizan de forma paralela cuando son procesadas, haciendo más eficiente el desempeño, incluso programa con anterioridad ciertas operaciones. La Predicación es un método para manejar ramificaciones condicionales. La idea principal del método es que el compilador planifique ambos caminos posibles de la ramificación para que sea ejecutada en el procesador simultáneamente. La Especulación por su parte, es un método que permite al procesador iniciar la carga anticipadamente, incluso antes de que se sepa que va a ser utilizada.
Es tanta la importancia que se le está dando a nivel mundial al tema de la informática de alto rendimiento, que no sólo la industria informática se ha preparado para abordarla, sino que se han elaborado varios estudios y mediciones independientes al respecto. Uno de los más famosos y que conviene siempre revisar es el conjunto de pruebas de desempeño HPC Challenge, diseñado por Jack Dongarra y Piotr Luszczek de la Universidad de Tennessee junto a colaboradores de Estados Unidos y Europa.