martes, 24 de marzo de 2009

Los procesadores multinúcleo, el gran reto de la industria

El añadir más núcleos en los procesadores se ha convertido en la principal vía para aumentar el rendimiento en los chips para ordenadores y servidores, pero los beneficios no serán tan numerosos si la industria no es capaz de superar determinados retos de programación y de hardware.

La ciudad californiana de Santa Clara acoge la Multicore Expo, feria en la que se ha puesto de relieve que la industria ha de ser capaz de superar los retos que, a nivel de hardware y programación, suponen los procesadores multinúcleo si se quieren obtener todas las ventajas que estos nuevos chips permiten.

Así, la mayoría de las aplicaciones se siguen escribiendo para procesadores de un solo núcleo y necesitarán ser desarrolladas de nuevo o actualizadas para que puedan sacar partido del cada vez mayor número de núcleos (o core) que fabricantes como Intel, Sun o AMD, entre otros, están incluyendo en sus productos.

Los fabricantes de chips e integradores de sistemas han empezado ya los primeros esfuerzos, sobre todo a la hora de formar a los desarrolladores y ofrecerles las mejores herramientas para que puedan programar en entornos multinúcleo. Hace un año, Intel y Microsoft declararon que dedicarían 20 millones de dólares a la apertura de dos centros en las universidades de Estados Unidos para afrontar este problema. La ausencia de herramientas de programación multicore para la mayoría de los desarrolladores es, quizá, el mayor reto al que se enfrenta a día de hoy la industria, en valoraciones de Linley Gwennap, de la firma The Linley Group.

Escribir aplicaciones de una manera que permite diferenciar las partes de una tarea de computación, como solventar un problema matemático o mostrar una imagen, serán divididos y ejecutados de manera simultánea a través de múltiples core en estos sistemas multinúcleo. Este modelo, generalmente conocido como informática paralela, ha estado limitado para entornos especializados y de alta computación.

Sin embargo, en los últimos años, Intel y AMD han estado añadiendo cores como una manera más eficiente de incrementar el rendimiento de los procesadores, lo que ha marcado un cambio fundamental en la manera en que se incrementaba la velocidad de reloj de los chips. Intel está incluyendo ocho núcleos en sus próximos Nehalem-EX chips, mientras que AMD prepara un procesador de 12 núcleos para servidores. Ambos están incluyendo prestaciones multi-threading, que permite a cada núcleo trabajar en múltiples líneas de código al mismo tiempo.

Es decir, que las aplicaciones más comunes habrán de ser escritas de diferente manera si se quiere que sean capaces de sacar partido de estos mayores núcleos disponibles. El trabajo es duro y crea el potencial de generar nuevos errores de seguridad en las aplicaciones.

No hay comentarios: