jueves, 6 de febrero de 2014

The free lunch is over

Este es la primera entrada de este blog y les comentaré acerca de un artículo que leí llamado "The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software”, escrito por Herb Sutter y publicado en  la revista Dr. Dobb's Journal de marzo del 2005.

En este artículo se habla acerca de la adopción que se está teniendo de los procesadores multinúcleo y las soluciones de software que se buscan.

Se habla de que la programación multinúcleo es la nueva revolución en esta época. La anterior fue la programación orientada a objetos. 

Y esta revolución trae un cambio en las responsabilidades de los programadores. Antes, el programador no se tenía que preocupar por optimizar sus programas, ya que gracias a la Ley de Moore los procesadores irían incrementando de transistores y con ello el software aprovecharía esos recursos. 
Pero llegamos a un momento donde la Ley de Moore ya no se está cumpliendo porque al estar aumentando transistores, el calor producido por el procesador ya no seguro.
Por ello, se pensó en una alternativa: los procesadores multinúcleo y técnicas como hyperthreading. 
Con esto, estamos ante un nuevo reto y es el de lograr explotar todos los nuevos recursos que tenemos disponibles en las computadoras. 
Aprender paralelismo es la clave. Ahora los programadores tendremos que preocuparnos por crear algoritmos más complejos que nos permiten dividir el trabajo entre threads, ya que tenemos que preocuparnos por bugs tan complicados cuando se implementa paralelismo como condiciones de carrera, deadlocks, starvation, etc.

En conclusión, veo que este artículo es un aviso para muchos programadores y nos dice que tenemos que hacer el cambio lo más pronto posible y aprender a manejar estas nuevas tecnologías. 
El paralelismo ofrece nuevas área de oportunidad para la investigación y suena muy interesante el hecho de que el mayor reto es crear compiladores que automáticamente traduzcan código y permita que se ejecute en paralelo.

No hay comentarios.:

Publicar un comentario