Posted by : Unknown martes, febrero 04, 2014

¡Hola! En esta ocasión, discutiré un poco sobre el artículo "Parallel Computing on any desktop", escrito por Ami Marowka, el cual fue publicado en el Communications of the ACM.

El artículo habla acerca de paralelismo aplicado a distintos equipos de cómputo. Hace algunos años, hablar de paralelismo no era muy común. Solamente los equipos con un buen nivel de procesamiento eran los “indicados” para realizar este tipo de tareas. Actualmente, hablar de paralelismo es no solamente común, sino que se ha vuelto una necesidad.

El tema de paralelismo en computadoras que pueden ser adquiridas por personas “comunes” es algo que implícitamente nos hace ver a los programadores que tenemos que explotar todo el procesamiento disponible que existe. Es importante saber que cuando se habla de “explotar”, no se refiere a solamente hacer que el procesador trabaje al máximo de su capacidad, sino que todo lo que el procesador trabaje sea efectivo dentro del programa.

En el artículo se propone como una solución a OpenMP. Hay que recordar a OpenMP como una herramienta poderosa que permite configurar código y permitir la ejecución de ciertas tareas de manera paralela. Si bien existen herramientas tan buenas como OpenMP, hay que recordar que solo es eso: una herramienta. El programador es quien se tiene que hacer cargo de comprender la naturaleza del problema y posteriormente escribir código que sea thread-safe. La parte de comprender el problema es sumamente importante, ya que mientras más se conozca el problema, menor es la probabilidad de sufrir de alguna falla referente a datos que son accesados por varios threads.

Finalmente, hay que remarcar la parte de equipos de cómputo en ámbitos empresariales. Es cierto que a un buen equipo empresarial podría sacar provecho de herramientas como OpenMP. Sin embargo, cuando hablamos de empresas que empiezan a crecer en grandes dimensiones, es necesario explorar otras alternativas, como el cómputo distribuido. Esta solución puede ser vista como “factible”, debido a que el sistema puede estar construido con distintos equipos caseros y que, usando cómputo distribuido, puede ser capaz de procesar grandes volúmenes de información en un periodo de tiempo aceptable.

Eso es todo por ahora, espero haya sido de su agrado :)


Leave a Reply

Subscribe to Posts | Subscribe to Comments

- Copyright © Programación Multinúcleo - Hatsune Miku - Powered by Blogger - Designed by Johanes Djogan -