Como es costumbre, publicaré una canción para el blog de hoy, y dado el título del post es imposible elegir otra, la canción será "Welcome to the Jungle" cover por Postmodern Jukebox ft. Daniela Andrade.
El artículo por Herb Sutter habla de las alternativas que han surgido y que gradualmente se harán más comunes para contrarrestar el fin de la ley de Moore, desde la popularización de dispositivos multinúcleo, la proliferación de distintos tipos de procesadores y sus variantes especializadas, hasta cómputo en la nube.
Como todo en la industria de software, no existe una alternativa que sea "mejor" que la otra, sino que todas buscan solucionar de una forma un problema y al final ofrecen un trade-off, y a medida que uno desarrolle una solución de software es probable que termine optando por un enfoque híbrido, tratando de maximizar los beneficios de cada uno de los trade-offs.
Es importante mencionar que el artículo fue escrito en el 2011, por lo que vale la pena hacer una comparación de las premisas que profetizaba Sutter al momento de escribir el artículo con la actualidad.
Los dispositivos multinúcleo desde el momento en que se escribió el artículo ya eran prácticamente algo estándar en el mercado, en la actualidad casi todos los dispositivos tienen al menos dos núcleos (la mayor parte ya cuenta con cuatro, y algunos high-end ocho). Por lo que desarrollar aplicaciones multinúcleo ya es una práctica relativamente estándar (desde el punto de vista de desarrollo de aplicaciones móviles es una práctica muy común paralelizar lo más eficiente posible una aplicación, ya que son dispositivos que a la fecha cuentan con capacidad de procesamiento relativamente limitada en comparación con computadoras portátiles).
La proliferación de distintos tipos de procesadores especializados ya está sucediendo, la más común siendo los GPUs, desde el punto de vista de gráficos ya es común utilizar CUDA para paralelizar aplicaciones en entornos de desarrollo con tarjetas Nvidia u OpenCL para tarjetas AMD.
El cómputo en la nube es algo común, Microsoft, Google y Amazon siendo las empresas más importantes en soluciones de cómputo en la nube.
Sin duda en los próximos años definir arquitecturas de desarrollo que aprovechen lo mejor de las tres distintas soluciones al fin de la ley de Moore será un problema común de los desarrolladores, ya que se deben contemplar temas de compatibilidad y escalabilidad que antes no eran algo común, el mismo ejecutable iba a tener mejores tiempos de ejecución conforme pasara el tiempo, la responsabilidad de la eficiencia de software acaba de ser transferida de los fabricantes de hardware a los fabricantes de software.
Welcome to the Jungle.
Wololo.
No hay comentarios:
Publicar un comentario