Ir al contenido principal

The Free Lunch Is Over


En las últimas décadas, miles de desarrolladores e investigadores han dedicado sus vidas a mejorar la forma en la que vivimos, así como la manera en la que realizamos ; sin embargo, seguir el mismo camino hasta su última consecuencia implica un límite, pues normalmente los materiales que usamos, los teoremas que aplicamos, funcionan bajo un conjunto de circunstancias limitadas.

No es una tarea sencilla buscar otra manera, en gran medida desarrollar algo "mejor", suele ir de la mano con un cambio de paradigma (nada sencillo). En la entrada pasada habábamos de FairChild, una compañía que encontró una mejor manera de desarrollar electrónica, y concluímos en cómo la hoy llamada Intel, ha encontrado algunos inconvenientes en reducir su proceso de fabricación pues a pesar de que durante las últimas décadas ha controlado el mercado del silicio, se han dado cuenta que éstamos llegando a los límites que habían previsto, aún cuando su competencia ha logrado llegar al proceso de fabricación de los 7 nanómetros, pronto nadie será capaz de reducirlo más.

Sin embargo esto no tiene qué cambiar la manera en la que hacemos cómputo, ¿o si?, nuestro paradigma sigue corriendo bajo las mismas leyes, pues aún cuando Intel está teniendo problemas en alcanzar a su competencia en la miniaturización, AMD, ARM, Apple y Samsung también optaron por “tirar más núcleos al problema” (Linus Sebastian, Youtube, 2019), que es lo que Intel ha estado haciendo en la última Séptima y Octava generación de procesadores.

Y hoy en día podemos legítimamente decir que nuestro paradigma no ha cambiado gracias a que el concepto de multiprocesamiento, ha sido adaptado de tal manera que no rompe el paradigma tal y como es, sino que aumenta cambia la arquitectura.

En lugar de aprovechar la potencia de cálculo de un procesador con una frecuencia de reloj generosa, en realidad es mucho mejor aprovechar la capacidad muchos procesadores cada vez más eficientes. Hemos crecido en una industria y tecnología que lo hace relativamente sencillo en el silicio, pero sumamente complejo en la parte conceptual, el software.

La problemática recae en que no es tan simple como nos gustaría. Si nuestro paradigma ha durado lo suficiente como para durar con ligeros cambios a lo largo de su vida, tal vez la ventaja de la arquitectura de la que hablé antes, podría costarnos la verdarea evolución hacia un cómputo completamente paralelo.


Comentarios

Entradas más populares de este blog

Teaching Concurrency with Erlang

Como presentamos anteriormente en la entrada correspondiente a Erlang, nos queda claro que el Paralelismo aunque es diferente a la concurrencia, ambos nos ayudan a alcanzar nuestro deseado objetivo de tener un paradigma de desarrollo de software más enfocado al aprovechamiento de recursos listos para multiproceso. A medida que la tecnología avanza, el interés por hacer programas Concurency-Oriented incrementa debido a que cada vez se integra tecnología más compleja y completa que satisface diversas necesidades que han surgido con el tiempo, así como la miniaturización, la eficiencia y por supuesto la potencia. Actualmente tenemos procesadores que tienen al menos dos núcleos, y gracias a un poco de astucia mercantil e ingenieril, podemos decir que ambos núcleos se pueden sentir como cuatro. Así mismo contamos con teléfonos móviles que cuentan con hasta 8 núcleos y tienen arquitecturas interesantes como BIGlittle; sin embargo esta necesidad por “tirar más núcleos al problema”

El código enigma

Muchas veces la ciencia ficción está más cerca de lo que creemos, y a veces terminamos ignorando las maravillosas hazañas que personas increíbles han logrado desde tiempos inmemoriables, todo porque damos por sentadas muchas de las cosas que poseemos y hemos logrado a través de décadas de acumular conocimiento y experimentando con nuestras posibilidades. Especialmente cuando vemos películas documentales que tratan de narrarnos una forma en la que sucedieron eventos que dieron lugar a cosas que pueden no verse muy importantes hoy en día. En este blog discutimos en gran medida las posibilidades y retos que implica el paralelismo en el software ya que el hardware lo tenemos normalizado; sin embargo cabe destacar que no siempre fue así, y que hemos pensado en el potencial de mucha de la tecnología que manejamos hoy, probablemente desde que la concebimos o incluso desde que imaginábamos qué sería bueno alcanzar para lograr solucionar ciertos problemas que hemos tenido a lo lar

¿Sueñan los androides con ovejas eléctricas?

Siempre he pensado que el concepto de humanidad, para los seres humanos puede llegar a ser un misterio de manera muy cotidiana. A lo largo de la historia, el protagonista Rick Deckard cuestiona, la caracterización del “humano”, pues aún cuando es un género que recurre en gran medida a la fantasía, el “Cyberpunk” nos ayuda a que estas cuestiones tengan un verdadero sentido, especialmente en el mundo actual, donde lo cibernético puede quedar más a la vista como algo cotidiano. En el mundo donde la novela toma lugar, los robots son parte de la vida cotidiana, androides y animales cibernéticos conviven y ayudan a los seres humanos a realizar sus labores diarias. Dichos robots son descritos con un aspecto muy apegado a la naturaleza de lo que pretenden ser, razón por la que muchas veces suelen ser confundidos con sus contrapartes naturales; sin embargo, a pesar de que los a los androides tienen un aspecto y comportamiento humano no logran desarrollar lo que se define c