5

Ghz: ¿Por qué se estancaron?

Publicado el: 22/06/2010
Procesador
En la anterior entrada vimos como los ordenadores son cada vez más rápidos gracias al aumento de la densidad de transistores, debido a su continua reducción de tamaño. Por un lado, el incremento de transistores permite hacer más operaciones por segundo y, por otro, disminuir su tamaño permite subir la frecuencia de reloj, pero esta segunda vía de optimización se agotó en el 2004. Veamos por qué.

En primer lugar ¿qué son los hercios? El hercio o ciclo por segundo, es una unidad de medida de la frecuencia de reloj de un procesador, es decir, el número de veces, en un segundo, que la señal de reloj sube y baja, haciendo que el procesador trabaje a cada ciclo cambiando de estado sus transistores. Las unidades de medida que se utilizan son las siguientes:

1 GHz = 1.000 Mhz = 1.000.000 Khz = 1.000.000.000 hercios.

Antes del 2004 la frecuencia del reloj iba creciendo siempre al mismo ritmo. La gente presumía de los Mhz's de sus procesadores, porqué con los que existían en esa época se solía cumplir que a más Mhz's, más rápido.

Esto era gracias a que los transistores, al ser más pequeños, podían cambiar de estado más rápido, permitiendo aumentar la frecuencia de reloj. Pero al subir la frecuencia de reloj, también incrementaba el calor disipado y el consumo eléctrico, lo que empezó a impedir que, llegados a cierto punto, se pudiera aumentar más la frecuencia.

La mejor forma de saber si un procesador es mejor que otro, ha sido siempre probar lo rápido que funcionan las aplicaciones que se van a usar en ellos. El hecho de que nos digan la frecuencia de reloj de dos procesadores, no sirve de nada para saber cuál de ellos tiene un rendimiento superior (a no ser que tengan la misma arquitectura).

A la hora de comprar un procesador, la mejor opción es elegir aquel que tenga la arquitectura más reciente. Por ejemplo, un Core i7 a 2Ghz tiene mejor rendimiento que un Quad Core a 3Ghz, dado que el primero es más reciente que el segundo.

Al mismo tiempo y curiosamente, empezó a ser inviable explotar más el paralelismo a nivel de instrucción. Lo que ha agotado esta vía de optimización, es el aumento del coste de añadir hardware adicional que permita encontrar instrucciones que no dependan unas de otras para poderlas ejecutar en paralelo, ya que este coste ha ido aumentando cada vez más, conforme se han ido añadiendo más instrucciones en paralelo.

Gráfica de la evolución de los transistores

Este grafico de D. Paterson de la Universidad de California, muestra la evolución del paralelismo a nivel de instrucción (línea roja), el aumento de consumo (línea azul), la frecuencia del procesador (línea amarilla) y el aumento de transistores (línea verde).

Como estaban agotadas las vías de optimización referentes al aumento de frecuencia y el paralelismo a nivel de instrucción, los ingenieros tuvieron que ingeniárselas para aprovechar el aumento de transistores de otras maneras, y se empezó a añadir paralelismo a nivel de procesador, procesadores de 64 bits y caches más grandes.

El paralelismo a nivel de procesador es lo que más aumenta el rendimiento. Cada 24 meses aparece un nuevo procesador con el doble de núcleos, haciendo que los ordenadores de escritorio se parezcan cada vez más a los supercomputadores, que tienen cientos de procesadores.

El problema que tiene este aumento de núcleos es que la programación se vuelve más compleja, haciendo que el software no se haya podido adaptar lo suficientemente rápido.

La mayoría de los programas no paralelizan sus algoritmos desaprovechando los recursos de estos nuevos procesadores. De momento, sólo pueden sacarle partido algunos juegos y programas de diseño gráfico 3D.

Gráfica de la evolución de la frecuencia de reloj

Este otro gráfico muestra el esfuerzo requerido por los programadores para aprovechar la potencia del procesador (área roja), comparada con el aumento de rendimiento sin intervención del programador (área gris). Se puede apreciar claramente que la aparición de nuevos juegos de instrucciones y el paso, en el 2004, de optimizar con el aumento de frecuencia, a optimizar con aumento de procesadores, ha disparado el esfuerzo necesario de programación para alcanzar el máximo rendimiento.

A este paso, la única solución factible será que los compiladores aprendan a paralelizar los algoritmos ellos solos. Hasta entonces seguiremos comprando máquinas más potentes que no podremos aprovechar al máximo.

Pensamientos (7): Ver comentarios Comentar
Categorías:

Comparte:

Copia y pega en tu página:

Comparte
Escribe tus pensamientos computables

Respondiendo a los siguientes comentarios:

Para comprobar que eres un humano responde correctamente:

Esta pregunta no me gusta, ¡cambialá!

Ninguno de estos datos será almacenado.

(Escribe el correo electrónico)

Campo obligatorio.

(Escribe el correo eléctronico o los correos electrónicos separados por comas)

Campo obligatorio.

Para comprobar que eres un humano responde correctamente:

Esta pregunta no me gusta, ¡cambialá!

Pensamientos
Daialian
Fecha: 23/06/2010 Hora: 16:58:53

¿Conoces a alguien que quiere leer un blog para aprender? Este tipo de cosas son para divertirseeeeeeeeeeeeeeeeeeeeee xDDDDDDDDDDDDDDDDDDDDDDDDDDDDD

(Se que borrarás mañana este comentario... justo después de matarme :P )

Le responden 2 comentarios Ver comentarios
Respondiendo a 1 comentario Ver comentario
Daiatron
Fecha: 24/06/2010 Hora: 20:22:19

En realidad hay bastante gente que lee blogs para aprender y, además, le gusta.

El problema de esta entrada no es que aprendas, en todas aprendes algo, es el hecho de que es un tema que le puede interesar más a un público que le gusta estar informado de qué compra cuando adquiere un nuevo ordenador.

En este blog voy a tratar de muchos temas y es imposible que te gusten todos. Se bien que este en concreto no te interesa ya que lo único que buscas cuando compras un ordenador es que la carcasa sea de color rosa.

Espera a la próxima entrada, estoy seguro que te gustará más.

Le responde 1 comentario Ver comentario
Respondiendo a 1 comentario Ver comentario
Linkusb
Fecha: 27/06/2010 Hora: 0:02:39

¡Bien dicho Daialian!

Ahora sufro por las dificultades que deben estar experimentando los programadores que quieren aprovechar realmente el rendimiento de esta tecnología y también me siento mal porque me compré un ordenador con varios núcleos y ahora se que no estoy sacando el máximo partido a mi ordenador por culpa de los programadores que no se esfuerzan lo suficiente, tirando por tierra el trabajo de los ingenieros. El glamour en un ordenador también es importante. Este texto ha sido escrito por el blogbot creado por linkusb tras ser rechazado y recibir calabazas al intentar ligar con el programa Alice (leer también la entrada cuando las máquinas hablaron entre ellas)

Tobal
Fecha: 29/06/2010 Hora: 16:34:27
La verdad es que ya que te vas a comprar algo pues merece la pena comprarte lo ultimo. Bien es cierto que normalmente somos muchos los que nos dejamos "engañar" por los vendedores (que no todos son malos ;P) ...
Anónimo
Fecha: 24/02/2011 Hora: 18:46:54

Pues no se si lo leerá mucha gente o si ya has dejado de publicar, pero estoy haciendo un trabajo sobre intel y las gráficas me han venido de lujo.

ASIAS!

Respondiendo a 1 comentario Ver comentario
Anónimo
Fecha: 12/11/2011 Hora: 16:06:31
pues yo creo que la velocidad del procesador a los informáticos nos interesa mucho pero por qué no enseñan más. Quiero aprender más del tema por qué no enseñan como una universidad. Yo apoyo a este blog
Sony rios
Fecha: 05/10/2012 Hora: 17:59:27
Ami me gusto la forma tan clara y concisa de explicar los detalles tecnicos que estan inmersos en el mundo de la informatica ... se agradece la simplicidad para que todos lo podamos entender :P ...