Primer procesador comercial con arquitectura malla y 64 cores


Leo un interesante artículo en Tecnology Review que comenta que hoy, 20 de agosto, un spin-off del MIT, Tilera, ha anunciado la comercialización de un procesador llamado Tile64 con arquitectura en malla que contiene 64 cores. Según comentan, parece ser que está especificamente diseñado para la ejecución de aplicaciones de vídeo como pueden ser sistemas de videoconferencia, para monitorizar tráfico de red o reducir el spam de emails o virus.

Algo realmente interesante es que parece ser que el procesador evita algunos de los problemas de embotellamiento que se dan en los procesadores más frecuentes, como puede ser el saturamiento de datos a través de los buses. Para ello, éste utiliza una estructura de malla similar a lo que es en sí Internet, una red en la cuál hay muchos nodos descentralizados, razón por la cuál no existen embotellamientos en éste. Según comenta el fundador de la empresa, Anant Agarwal,

"is very much like the Internet on a chip, and like the Internet, Tilera's chip can be scaled up gracefully; it doesn't need to be redesigned each time new cores are added".


Personalmente, me parece una muy buena notica el que se propongan nuevas estructuras en la arquitectura de los microprocesadores, puesto que creo que el diseño actual de procesadores es muy poco innovador . Sería bastante bueno que surjan ideas como esta de modo que la arquitectura computacional no quedara tan estancada como lo está ahora, puesto que realmente no ha habido grandes cambios desde los 80. Simplemente ha habido una evolución generacional de la arquitectura, bastante lógica, que ha ido resolviendo los problemas que han aparecido.

Para algunos les parecerá que 64 cores son muchos, y lo son. Y es cierto que 64 cores pueden plantear graves problemas en el diseño de computadores (por lo comentado anteriormente), pero lo cierto es que si uno redefine la arquitectura de los microprocesadores y le da un enfoque completamente distinto al que le dan empresas como Intel, AMD, IBM o SUN, por poner un ejemplo, quizás se pueda expandir la frontera de algo que a día de hoy solo está al alcance de estas multinacionales. Y no solo eso, sino que todos nos podríamos beneficiar. Es más, es un aliciente para todos los ingenieros informáticos, para que veamos que realmente todavía quedan cosas por "inventar", y digo inventar porque realmente no es un invento, sino un cambio en la concepción de la cosas que nos conduce a un mismo ente, el procesador.

Finalmente, he de añadir (gracias a un barrapuntero) que creo que éste procesador no tiene un nicho de mercado más allá de para lo que ha sido diseñado, puesto que para la ejecución de un programa cualquiera es realmente complicado sacarle partido a tal número de cores. Incluso es difícil que un sistema operativo saque partido a más de 8 cores (tal y como lo entendemos día a día). De todos modos, todo esto depende de cómo se descentralice los núcleos del procesador, puesto que si fuera posible que el propio hardware desvíe las cargas de trabajo a los núcleos ociosos podría ser muy interesante.

22 comentarios:

  Anónimo

21 de agosto de 2007, 3:32

Hola. Interesante el post, pero creo que utilizas de forma errónea el concepto de arquitectura von Neuman al usarlo en CPU's. Échale un vistazo a la wikipedia: http://es.wikipedia.org/wiki/Arquitectura_von_Neumann

De todas formas, creo que es un salto cualitativo el utilizar el concepto de red descentralizada para organizar los cores. No obstante, creo que las cpu's han ido evolucionando en cuanto a arquitectura: por poner un ejemplo, la arquitectura CELL PowerPC master + 8 vectoriales...

  Anónimo

21 de agosto de 2007, 8:09

El dia que un ingeniero informatico diseñe un microprocesador, me como un zapato.

  ellipe

21 de agosto de 2007, 8:39

"Anónimo" ... ¿por qué me da que eres un intruso-teleco?

  Alginros

21 de agosto de 2007, 8:56

Respondiendo a nakashima (gracias por la corrección, ;) ) yo sigo pensando que la arquitectura CELL tampoco es una innovación, puesto que a fin de cuentas lo que difiere con los procesadores más comerciales es en disponer de 8 unidades vectoriales SPE's que envían todos los datos al Power PC "elemental" por llamarlo de una manera. Realmente ni siquiera diría que el CELL tiene 8 núcleos como lo venden "en la calle". Bien es cierto que ha supuesto una innovación respecto de lo anterior, pero sí que dista de esta idea de descentralizar los cores.

Quizás el procesador este no llegue a nada, pero yo me quedo con lo positivo de esta idea, que quizás en el futuro la implementen las grandes compañías.

  Víctor

21 de agosto de 2007, 9:11

Lo del diseño de arquitecturas, tiene su gracia, porque es algo que se estudia en la carrera en 3º y 4º de Ingeniería Informática, doy fe de ello puesto que estoy en 4º :P

Por lo que respecta a los cambios en la informática, no creo que suponga mucho más que los nuevos diseños de placas, ya que al resto de componentes les es irrelevante de donde provenga la información mientras la reciban.

  Anónimo

21 de agosto de 2007, 9:30

Tampoco es un procesador tan innovador. Como todo en esta vida, toma ideas de los años 70/80/90 que, o bien no pudieron llevarse a cabo por falta de tecnología o bien se llevó a cabo como experimentos que no han tenido continuidad, y las ha llevado un poco más allá. Entre otras cosas, la forma de evitar cuellos de botella distribuyendo procesadores en malla es muy típica de clusters de ordenadores; en este caso es en el mismo chip, pero el enfoque no es nuevo. De hecho incluso en un único chip se han realizado cosas similares en procesadores como el niágara de Sun.

  pacodani

21 de agosto de 2007, 10:41

Este comentario ha sido eliminado por un administrador del blog.
  mitcoes

21 de agosto de 2007, 11:25

Sería muy interesante publicar sus benchmarks, y saber si existe un compilador para Linux, y si se va a poder usar como procesador para servidores bajo Linux.

  Anónimo

21 de agosto de 2007, 11:27

Puede que no sea tan inovador como dictan , pero la verdad es que ha solucionado el problema de cuello de botella que impedia avanzar en la evolucion de los procesadores y arquitecturas.
No se puede negar que tampoco es un gigantesco cambio , pero si una gigantesca solucion y algo que empezara como punto de partida de una evolucion hacia ordenadores mas potentes .

  Anónimo

21 de agosto de 2007, 12:18

¿cuántos MiB de cachés L1 y L2? ¿o no tienen cachés?

¿tienen hardware de soporte de coherencia de cachés para protocolo MOESI o Dragon?

  Anónimo

21 de agosto de 2007, 12:30

touche! para ellipe
salu2

  chispita

21 de agosto de 2007, 12:34

Por partes, al supuesto teleco que dice que cómo va un informático a diseñar un procesador .... no tengo ni idea de si el Dr. Agarwal (porque para ser profesor de universidad en EEUU hay que ser doctor) es de la rama de Computer Science o de Electrical Engineering, pero en el departamento que da clases es de ambas cosas (EECS = Electrical Engineering and Computer Science). Así que da un poco igual el ver qué es lo que estudió este señor, cuando el que esté en un grupo que hacen cosas relacionadas en circuitos y ver que tiene libros de microprocesadores (mira en Amazon), hacen que, cuanto menos, sabe de lo que habla y se dedica a ello.

Por otro lado, respondiendo a víctor, en EEUU las cosas son diferentes. Tú en España habrás dado cosas de microprocesadores, pero si estuvieses en EEUU no las darías estudiando Computer Science, solo desde Electrical Engineering ;-) En cualquier caso, en Teleco en España sí que se dan cosas, no ya de circuitos, sino de aproximación a los microprocesadores (probablemente desde otro enfoque que lo vuestro) aunque desgraciadamente no se llegan a ver mucho.

  Anónimo

21 de agosto de 2007, 12:53

Soy el anonimo "supuesto teleco", que en realidad es un "confirmado industrial". Pero eso si, intruso al fin y al cabo.

Por favor, no me compares a los Electrical Engineers o los de Computer Science de los USA con los ingenieros informaticos de aqui, que me da la risa.

Para entrar en Berkeley (por poner un ejemplo) tienes un peazo examen de programacion que te cagas. Si, sobre eso que los "ingenieros informaticos" de aqui dicen que ellos no tienen por que saber hacer.... que ellos solo diseñan...

Ja.

  Antonio

21 de agosto de 2007, 13:31

Es una propuesta interesante la de este procesador aunque, en mi opinión, su utilidad es bastante limitada. Aunque para organizar los buses se haya diseñado una estructura en malla "similar a Internet" (qué comercial debe quedar decir eso a un potencial cliente ;-) eso sólo podría solucionar el problema de la saturación de los buses. Aún queda el enorme problema (realmente grave en términos de rendimiento) que supone mantener la coherencia de las cachés propias y compartidas de los distintos cores (nada menos que 64 :-S). Además, hay que tener en cuenta que para que se pueda aprovechar el rendimiento de 64 cores es necesario que el software que se esté ejecutando sea paralelizable en 64 procesos (o al menos 64 hebras) con un reparto de carga equitativo entre todas ellas, algo francamente imposible en la inmensa mayoría de los problemas que resuelve el software. Por lo tanto, como digo al principio, a mi parecer es una propuesta interesante pero que no resuelve todo el problema y sólo tiene aplicación en determinados ámbitos muy concretos.

  Anónimo

21 de agosto de 2007, 14:39

coincido plenamente que el nivel de los mit, berkely,... es muchisimo mas elevado que cualquier universidad española

  Az

21 de agosto de 2007, 14:51

A ver a ver, voy a formular las clásicas preguntas consumistas:

¿Qué velocidad tiene esa cosa?
¿Dónde puedo conseguirlo?
¿Cuanto cuesta?
¿Ya se han fabricado placas compatibles?

Recuerdo, noviembre, PCI Xpress :P

Esto se pone calentito, ¿que hará intel? ¿Fusionarse con la empresa? Yo quiero acciones de esa gente!!!

  Alginros

21 de agosto de 2007, 15:07

Respondo a antonio:

Estoy totalmente de acuerdo contigo, es realmente complicado programar un cacharro así, pero lo cierto es que tenemos que ir olvidándonos en quedarnos en los paradigmas de programación que tenemos hoy en día porque la previsión de número de cores por procesador va a ir creciendo a un ritmo muy grande. Quizás sea hora de cambiar la estructura de los programas e intentar plagiar a las tarjetas gráficas, donde se ejecuta un programa en cada shader.

Lo cierto es que si pasara esto último habría que reprogramar todo, así que estaríamos en un caos.

Francamente, solo espero la iniciativa más práctica sobreviva. Pero pese a todo, bienvenidas sean "reinnovaciones" como esta.

  Anónimo

21 de agosto de 2007, 20:27

Al supuesto ingeniero industrial: me parece estupendo por su parte decir que en Berkeley sales más preparado que aquí. Yo no lo discuto, pero que se aplique el cuento a él mismo, que igualmente que todos los ingenieros españoles, yo inclusive, son "una mierda" de ingenieros, el también entra en el trapo. Para diseñar un procesador hace falta una estrecha colaboración entre Ingenieros en Electrónica e Ingenieros en Informática. Hay que pensar que lo más plausible en la actualidad a una arquitectura de semejantes características es una máquina de cómputo de altas prestaciones como las que se utilizan en investigación. Como bien menciona el autor del artículo diseñar un SO doméstico para tal arquitectura y que haga todo lo que pretende es demasiado complejo, pero no imposible. SI la intención es portar el diseño para los PC, de dentro de taitantos años, como no se cambie el chip a los usuarios de PC lo veo derrochador y poco viable, dado que no se le saca gran jugo a la tecnología de la máquina. Usarlo para el Messenger, para el Chat de Terra o para jugar a los SIMS me parece absurdo. Y de lo que comenta acerca de la evolución de los PCS, es cierto que en organización desde los 80 no ha cambiado a penas, pero en arquitectura si ha habido cambios, ahí está el Pipelining o las arquitecturas superescalares y vectoriales. Gracias a Dios, se ha parado de la subida drastica de frecuencias de 15 en 15 dias a sacar procesadores de doble/cuádruple núcleo y de bajo consumo. Ojalá llegue el día en el que un procesador doméstico pueda disponer de una temperatura ambiente de 15 grados. :D.

  Anónimo

2 de febrero de 2010, 8:10

Good fill someone in on and this post helped me alot in my college assignement. Thanks you seeking your information.

  Anónimo

7 de febrero de 2010, 22:20

Opulently I to but I about the list inform should acquire more info then it has.

  Anónimo

28 de noviembre de 2012, 4:38

Greetings! Very useful advice within this post!

It is the little changes that produce the greatest changes.
Thanks for sharing!
Here is my blog post ; onlinebusinesssystemsreview.net

  Anónimo

11 de diciembre de 2012, 18:06

[url=http://ivlkrwnnz.com]xPwaEJYqnD[/url] - zVSxvVSKRRBafBKNz , http://hhmgziigpu.com