282 0

FreeBSD añade soporte para Grand Central Dispatch

FreeBSD_logo.jpgLa tecnología Grand Central Dispatch de Apple, que debutó en Snow Leopard como un mecanismo para optimizar la computación paralela entre los diferentes núcleos de un procesador ha sido portada a FreeBSD. Apple hizo públicos hace unos días sus planes de liberar esta tecnología como Open Source y pocos días después el equipo de FreeBSD hizo una demostración de la tecnología en el EuroBSDCon en Cambridge, Reino Unido. El soporte directo para GCD en el sistema operativo está dispuesto para aparecer con el lanzamiento de la versión 8.1 de FreeBSD.

La prestación Grand Central Dispatch (GCD) de Mac OS X Snow Leopard responde a la necesidad apremiante de sacar todo el partido a los hilos de ejecución sobre el procesador: el conjunto de innovadoras tecnologías permite a los desarrolladores crear con mayor facilidad programas que exprimen hasta la última gota de potencia de los sistemas multinúcleo. Con GCD, es el sistema operativo el que gestiona los hilos de ejecución, no las diferentes aplicaciones. Los programas compatibles con GCD distribuyen su trabajo automáticamente en todos los núcleos disponibles, lo que se traduce en un rendimiento extraordinario, ya estén ejecutándose en un Mac mini de doble núcleo o en un Mac Pro de 8 núcleos, por ejemplo. Cuando los desarrolladores comiencen a utilizar GCD en sus aplicaciones, empezarás a disfrutar de notables mejoras de rendimiento.

¿Porqué Apple ha abierto Grand Central Dispatch?

Esta es una buena pregunta, y en realidad solo Apple tiene la respuesta, pero podemos adivinar, tal como Apple ha planteado el desarrollo y distribución de el software que realmente quien va aprovechar esta tecnología van a ser las distribuciones de Linux y no Microsoft. Windows, como sistema operativo, es tan diferente a Mac OS X que le resultará imposible adaptar el software a su sistema operativo, pero esto no es óbice para que casi con toda seguridad los ingenieros de Microsoft le echen un ojo en busca de soluciones creativas para mejorar su código, porque tan importante es el código en si como las soluciones o fórmulas de crearlo e interpretarlo.

Sin embargo, la adición de esta tecnología en diferentes sabores de Linux no representa una amenaza para Apple, debido a que no representan una amenaza directa para su cuota de mercado en los ordenadores de escritorio, además de que es poco probable que se creen aplicaciones de escritorio para Linux, aunque si es muy posible que si aparezcan para la línea de comandos.

Esta opción de paralelizar código usando Grand Central Dispatch si que será bien recibida por parte de los desarrolladores científicos de forma que el código no solo se ejecute sobre el Mac, sino también en Clusters de supercomputadores.

Apple también puedo aspirar, haciendo que Grand Central Dispatch sea Open Source que una parte del código usado para crearlo llamado Blocks pase a convertirse un estándar dentro del lenguaje C de programación.

Sin embargo, no todo es perfecto: Apple ha liberado el código de las APIS de Grand Central pero las extensiones de Kernel de las que depende han de crearse para cada plataforma. Los compiladores que soporten Blocks también son escasos aunque presumiblemente Applel iberará sus cambios a GCC en algún momento, tal como requiere la GPL, la licencia bajo la que está amparada GCC.

Deja una respuesta