Llegamos a ustedes gracias a:



Noticias

Un nuevo lenguaje cuadruplica la velocidad en la gestión de grandes datos

[04/10/2016] La gestión de la memoria ya supone de por sí un reto más que suficiente para los conjuntos de datos tradicionales. Pero, cuando hablamos de grandes volúmenes de datos, la administración puede tornarse demasiado lenta. Sin embargo, un nuevo lenguaje de programación anunciado por el MIT tiene como objetivo remediar el problema e incluso cuadruplicar la velocidad en algoritmos comunes.

El principio de localidad es el que rige la gestión de memoria en la mayoría de los chips de las computadoras actuales. Si un programa necesita información almacenada en algún lugar de la memoria, necesitará, generalmente datos cercanos. Sin embargo, cuando hablamos de grandes volúmenes de datos, no siempre se cumple esta regla. En cambio, los programas a menudo deben actuar en tan solo unos pocos elementos de datos dispersos a través de enormes conglomerados. La búsqueda de datos de la memoria principal es el trámite más lento para los chips actuales, así que ir a buscar datos con más frecuencia puede retardar considerablemente la ejecución.

"Por ejemplo, es como si cada vez que queremos una cucharada de cereales, abrimos la nevera, vertimos leche en la cucharada y guardamos el brick de leche otra vez en la nevera, explicó Vladimir Kiriansky, estudiante de doctorado en ingeniería eléctrica y ciencias de la computación en el MIT.

Con este desafío en mente, Kiriansky y otros investigadores han creado Milk, un nuevo lenguaje que permite a los desarrolladores de aplicaciones gestionar la memoria de manera más eficiente en los programas que se relacionan con datos dispersos entre grandes conjuntos.

En esencia, Milk ha añadido varios comandos a OpenMP, una API para lenguajes como C y Fortran que hace que sea más fácil escribir código para procesadores de múltiples núcleos. Al usarlo, el programador inserta unas pocas líneas de códigos adicionales alrededor de cualquier instrucción que recorre en iteración una gran colección de datos en busca de un número relativamente pequeño de artículos, y compila toda la información para más tarde administrar la memoria.

Con un programa escrito Milk, cuando un núcleo descubre que necesita un grupo de datos no lo solicita desde la memoria principal. En lugar de ello, se añade la dirección del grupo de datos en una lista de direcciones almacenada localmente. De esta manera, cada petición puede ser recuperada eficientemente.

En pruebas con varios algoritmos comunes, los programas escritos en el lenguaje nuevo han funcionado cuatro veces más rápido que los que están escritos en los lenguajes ya existentes, según el MIT. Los investigadores presentarán el proyecto en la Conferencia Internacional sobre arquitecturas paralelas y técnicas de compilación.

Katherine Noyes, IDG News Service