Agradecemos sus comentarios
Nos interesa su opinión sobre el sitio. Por favor, díganos lo que piensa y qué podemos mejorar.
Inicio › Tecnología e investigación › Revista Technology@Intel ›
El programa de investigación a escala tera de Intel se centra en la transición de pocos núcleos a muchos
 
Introducción: Ofrecer a los usuarios equipos más potentes de menor consumo de energía
 
El Programa de investigación en informática a escala tera de Intel es una iniciativa de gran alcance que tiene por objeto perfilar el futuro de los procesadores y las plataformas de Intel. Los investigadores de Intel ya están trabajando en más de 100 proyectos de investigación y desarrollo a fin de dar respuesta a los problemas de hardware y software que plantean la creación y programación de sistemas de varios núcleos con un consumo eficaz de energía mediante una jerarquía sofisticada de memoria. En la actualidad, los proyectos de este programa abarcan tecnologías de circuitos, microarquitectura, interconexiones, memoria y tecnologías de software.

Algunos se preguntarán por qué Intel hace tanto hincapié en la investigación a escala tera. El motivo es sencillo: la informática a escala tera es una doble revolución, tanto en las funciones con que contarán los dispositivos como en el nivel de innovación que se necesitará para manejar las aplicaciones avanzadas del mañana. Por "escala tera" se entiende los terabytes de datos que deben manejar las plataformas con capacidad de teraflops de desempeño de cómputo. Eso equivale a una capacidad computacional mil veces superior a la que se ofrece en los actuales dispositivos a escala giga.

bar
La informática a escala tera es una doble revolución, tanto en las funciones con que contarán los dispositivos como en el nivel de innovación que se necesitará para manejar las aplicaciones avanzadas del mañana.
bar

¿Por qué este avance? Porque las mejoras incrementales de desempeño y funciones sencillamente no admitirán la minería en tiempo real de teraflops de datos, la inteligencia artificial en automóviles y equipos más inteligentes, la realidad virtual para modelado, visualización, simulación de física y capacitación médica, y otras aplicaciones que aún parecen pertenecer al mundo de la ciencia ficción. Además, el volumen y la complejidad de los almacenes de datos son cada vez mayores. En el campo de la medicina, una exploración de cuerpo completo ya contiene terabytes de información. Incluso en el hogar, las familias están generando grandes volúmenes de datos: cientos de horas de video, miles de documentos y decenas de miles de fotografías digitales que son objeto de clasificación y de búsquedas. La informática a escala tera es el instrumento que permite introducir las enormes capacidades de las supercomputadoras en los dispositivos cotidianos, desde servidores hasta equipos de escritorio o portátiles.

Por ejemplo, con una computadora a escala tera, podrán crearse gráficos tridimensionales fotorrealistas de calidad profesional en tiempo real. O podrán administrarse más adecuadamente los medios personales al analizar, etiquetar y clasificar automáticamente las fotografías instantáneas y los videos domésticos. Por su parte, los algoritmos avanzados podrán utilizarse para mejorar la calidad de las películas tomadas con videocámaras más antiguas y de baja resolución. Una aplicación médica digital avanzada podrá evaluar el estado de salud de un paciente al interpretar enormes volúmenes de datos de una exploración y facilitar la toma de decisiones en tiempo real.

 
 
Secciones del artículo
 

 
 

 
En esta edición
Artículo principal
 

El aspecto esencial de las tecnologías a escala tera — y uno de los principales objetos de investigación de Intel— consiste en poder realizar cálculos complejos en tiempo real, fundamentalmente mediante la ejecución de múltiples tareas en paralelo. Éste es el requisito fundamental de las complejas e interesantes aplicaciones que veremos en el futuro.

Las nuevas arquitecturas ofrecen nuevas oportunidades
 
Es evidente que las arquitecturas a escala tera plantean numerosos desafíos. Paralelamente, ofrecen numerosas oportunidades únicas mediante los diseños multi-core sumamente integrados. Por ejemplo, considere las latencias y el ancho de banda de las comunicaciones entre núcleos en el chip. Su orden de magnitud será superior al de los sistemas de multiprocesamiento de chip a chip que se utilizan hoy en día para la computación paralela.

bar
Existen personas que aún hoy ponen en tela de juicio el futuro multi-core, a escala tera y preguntan por qué las aplicaciones del mañana necesitarán tantos subprocesos. La respuesta es que esas aplicaciones avanzadas e inteligentes necesitarán capacidades de supercomputadoras y el correspondiente paralelismo que permita el procesamiento de esas aplicaciones en tiempo real.
bar

La cantidad de núcleos en un chip también alcanzará niveles que superarán en gran medida a los de los servidores tradicionales de alto nivel. Gracias a ello, se obtendrán importantes ventajas en términos de desempeño y reducción de costos respecto de los sistemas tradicionales de procesador único o doble. Por último, cabe destacar que la potencia de cómputo sumamente elevada de un procesador a escala tera, combinada con la modularidad de muchos núcleos, ofrece a los diseñadores la flexibilidad necesaria para dedicar recursos de hardware (como un núcleo o varios) a funciones específicas. Puede tratarse de dispositivos de administración de sistemas o de un solo uso, como por ejemplo, un equipo de voz por IP (para telefonía por Internet), criptografía o codificación/descodificación de medios.

Áreas de investigación en informática a escala tera
 
Intel ha identificado varios atributos fundamentales que serán necesarios en las futuras plataformas a escala tera:

  • Capacidad de programación. Si no se cuenta con software optimizado, las plataformas a escala tera no podrán aprovechar al máximo todo su potencial. Las plataformas deben dar una respuesta eficaz a las necesidades de los modelos de programación actuales y nuevos. Asimismo se necesitan las herramientas de desarrollo/depuración de software así como nuevos análisis de desempeño acordes a la ejecución de alto paralelismo.
  • Adaptabilidad. La plataforma debe contar con la capacidad para modificar su configuración según los distintos usos y las diversas cargas de trabajo, así como adaptarse a los cambios del entorno de hardware, por ejemplo los derivados de factores térmicos o de energía.
  • Confiabilidad. La plataforma debe mantener los niveles actuales de confiabilidad o incrementarlos, independientemente de la mayor complejidad inherente de estas plataformas.
  • Confianza. La plataforma debe proporcionar un entorno confiable, al margen de su flexibilidad y de la complejidad de su diseño.
  • Escalabilidad. La plataforma debe ofrecer un desempeño que aumenta en relación proporcional con la cantidad de núcleos y deben contar con hardware y software que acompañan el crecimiento de manera eficaz.

A fin de desarrollar plataformas que satisfagan estos requisitos, el Programa de investigación en informática a escala tera abarca proyectos que se llevan a cabo en todo el mundo y procura resolver problemas en tres áreas fundamentales: microprocesadores, plataformas y desarrollo de software. Entre las tareas a encarar cabe mencionar la optimización de los diseños para cargas de trabajo sumamente paralelas y de varios subprocesos, el desarrollo de interconexiones escalables en el chip, el rediseño de jerarquías de caché y memoria, la mejora de la E/S y la identificación y el aprovechamiento del paralelismo mediante el desarrollo de software.

Investigación en microprocesadores
 
Uno de los objetivos de Intel es proporcionar una arquitectura de procesador a escala tera sumamente modular y escalable que pueda satisfacer las necesidades de la amplia gama de plataformas Intel® dentro de las futuras limitaciones de alimentación de energía. Son cuatro las claves para proporcionar esta arquitectura: diseños de núcleos optimizados, unidades de función fija, interconexiones escalables en el chip y administración eficaz de la energía.

Diseños de núcleos
Uno de los aspectos distintivos de las arquitecturas a escala tera es el uso de una microarquitectura de núcleo que se optimiza para las cargas de trabajo sumamente paralelas de varios subprocesos. La ejecución simultánea de varios subprocesos puede ayudar a manejar las latencias de memoria y a reducir o eliminar la complejidad inadmisible.

En Intel, los investigadores están trabajando a fin de determinar el diseño o los diseños óptimos de núcleos para las arquitecturas a escala tera. Asimismo, los investigadores están trabajando para identificar la cantidad de núcleos que puede aprovecharse con eficacia en una determinada generación de procesos de fabricación (por ejemplo 45nm, 32nm o 22nm). Por otra parte, reviste particular importancia la investigación orientada a incorporar en cada núcleo funciones y mecanismos especiales que facilitarán el aprovechamiento del paralelismo de subprocesos.

El software tradicional y los algoritmos inherentemente de un solo subproceso plantean otro desafío a las arquitecturas a escala tera. Para resolver este problema, los investigadores de Intel están examinando alternativas a fin de incorporar núcleos heterogéneos de uso general (núcleos optimizados de un solo subproceso y de varios subprocesos) en las arquitecturas a escala tera. Además, los investigadores están evaluando el uso de conjuntos de núcleos simples a fin de acelerar los subprocesos únicos mediante la especulación de subproceso y otras técnicas avanzadas.

Al variar la combinación de elementos funcionales, la arquitectura permitirá a los diseñadores crear varias implementaciones que respondan a las necesidades específicas del mercado. Si el procesador utiliza placas regulares que se componen de uno o varios núcleos, caché, un router y otros componentes, podrán reutilizarse los diversos aspectos de la disposición entre procesadores.

Figura 1. Los futuros chips a escala tera utilizarán un conjunto de decenas a cientos de núcleos con cachés reconfigurables, además de aceleradores especiales de hardware.

Unidades de función fija
Las exigencias de un consumo eficaz de energía sugieren que en algunos casos será conveniente crear unidades de función fija. Las unidades de función fija son elementos de procesamiento dedicados a una determinada carga de trabajo. Su desempeño en esa tarea será superior al de una unidad de ejecución de uso general (por ejemplo, un circuito lógico de descodificación de video o manipulación de bits de longitud variable). Estas funciones pueden ser motores programables o lógicos fijos que se optimizan para un determinado fin, por ejemplo, motores de gráficos para acelerar el procesamiento de texturas. También se están investigando otras posibilidades, como diversos aceleradores de red, motores de criptografía y motores de física.

Con las unidades de función fija, una determinada plataforma a escala tera puede tener un procesador con una combinación de tipos de elementos según las cargas de trabajo importantes del segmento en que ha de operar. El número de cada una y el número relativo de cada tipo pueden variar.

Estructura escalable de interconexiones en el chip
Un procesador a escala tera no sólo debe conectarse con una gran cantidad de núcleos sino también con cachés y dispositivos especiales, como por ejemplo, unidades de medios gráficos. Básicamente, a medida que se incorporan más elementos en un chip a escala tera, existe una necesidad mayor de que estas unidades se comuniquen entre sí. Los estudios realizados han demostrado que el diseño y la microarquitectura de las interconexiones desempeñarán un papel importante a la hora de determinar el desempeño neto de una arquitectura a escala tera.

En particular, la arquitectura a escala tera necesitará una estructura de interconexión modular en el chip que sea escalable a fin de admitir una cantidad variable de núcleos. Las interconexiones también deben ser robustas ante posibles fallas y deben poseer una vida útil arquitectónica que abarque varias generaciones de diseños de procesadores. Por último, las interconexiones deben contar con una administración eficaz de la energía que reduzca su consumo y acompañe el aprovechamiento más eficaz de los núcleos. Se anticipa que las redes de interconexión en el chip ofrecerán varias ventajas respecto de las interconexiones actuales de núcleos fuera del chip:

  • Los hilos en el chip son económicos y abundantes en comparación con las redes fuera del chip de las placas de circuitos impresos.
  • Las interconexiones en el chip pueden distribuirse por encima de algunos tipos de estructuras de circuitos (como cachés), para que ocupen poco espacio en el chip.
  • Como las interconexiones en el chip deben cubrir distancias más cortas, suelen contar con una mayor capacidad de respuesta y presentar un consumo más eficaz de la energía que las interconexiones fuera del chip.
  • El ancho de los bus en el chip puede ser mayor que el de las placas de circuitos impresos, lo que permite reducir la velocidad de modulación con mayor eficacia. Es decir, los anchos de banda pueden aumentarse al ensanchar el bus y reducir efectivamente la velocidad de modulación a fin de ahorrar energía.

Debido a que las interconexiones en el chip pueden admitir una gran cantidad de núcleos, podrán utilizarse en numerosos segmentos del mercado, desde dispositivos de servidor de gran magnitud hasta procesadores pequeños para mini equipos portátiles. La arquitectura de las interconexiones admitirá diseños modulares (mediante una interfaz estándar con los diversos elementos de cómputo) y permitirá incrementar el desempeño en el curso de una década, a fin de admitir varias generaciones de procesos. Estas características son típicas de las interconexiones de plataformas como PCI, lo que pone en clara evidencia la naturaleza esencial de un procesador a escala tera como plataforma/sistema en un chip.

Administración de energía
Una arquitectura a escala tera ofrecerá nuevas oportunidades de administración de energía. Por ejemplo, la disponibilidad de numerosos núcleos modulares permitirá al sistema migrar el trabajo según sea necesario a fin de equilibrar su uso en el procesador a escala tera, o para adaptar la carga de trabajo al tipo de núcleo. Asimismo, la administración eficaz de las cargas térmicas en cada uno de los componentes de un procesador a escala tera incrementará la confiabilidad general y aumentará el desempeño global al distribuir de manera uniforme la carga térmica.

En el campo de los circuitos, Intel está investigando diversas áreas de capital importancia. Entre ellas cabe mencionar los diseños de circuitos para cachés y memoria en el chip que sean mucho más eficaces en el consumo de energía. Los circuitos prototipo de archivo de registro ya demuestran mejoras que hasta triplican la velocidad de los accesos a la memoria y una reducción del consumo de energía de hasta 4 ó 5 veces respecto de los circuitos actuales. El objetivo de Intel es lograr una mejora de 10 veces del desempeño por vatio en los próximos 10 años.

Además, los procesadores a escala tera podrán acelerar el consumo eficaz de la energía en una determinada tarea de cómputo. Es decir, las cargas de trabajo no esenciales o sumamente paralelas podrán ejecutarse a una frecuencia reducida y con ello podrá reducirse el consumo de energía. En el caso de código esencial o de segmentos de código sumamente en serie, el desempeño podrá incrementarse mediante un aumento transitorio de la frecuencia.

Áreas de investigación en plataformas de Intel
 
Podrá encontrar mayor información sobre estas innovadoras áreas de investigación en el documento técnico “De pocos núcleos a muchos núcleos: Descripción general de la investigación en informática a escala tera” (PDF, 238KB)Información en inglés. En este documento se analizan con mayor profundidad las distintas áreas de investigación en plataformas de Intel, a saber:
  • Jerarquía de caché y memoria
  • E/S
  • Virtualización y partición
  • Entornos de ejecución
  • Áreas de investigación en desarrollo de software
  • Cargas de trabajo futuras, como reconocimiento, exploración y síntesis
  • Entornos de programación
  • Programación paralela

También puede visitar la página Informática a escala teraInformación en inglés en el sitio Web de Intel, donde encontrará una demostración e información relacionada.

Resumen
 
Intel anticipa los futuros dispositivos con arquitecturas a escala tera que utilizan de decenas a cientos de núcleos para procesar grandes volúmenes de información en paralelo. Al hacer que estos dispositivos sean escalables, adaptables y programables, Intel impulsará a la industria a ingresar en una nueva era en la que serán posibles las aplicaciones más realistas, interactivas y útiles.

En el mundo de la escala tera, podrá contarse con nuevas capacidades de procesamiento para explorar e interpretar los crecientes volúmenes de datos y para hacerlo con una eficacia aún mayor. Los agentes inteligentes podrán asesorar a los usuarios en tiempo real sobre operaciones bursátiles y otras cuestiones financieras. Estos agentes podrán realizar búsquedas en voluminosas colecciones de videos digitales para encontrar personas o eventos específicos e incluso editar un nuevo video según las preferencias del usuario. Por otra parte, los jugadores podrán disfrutar de las ventajas de gráficos fotorrealistas en tiempo real. Sin embargo, esas ventajas ya no son sólo para los jugadores. Hoy en día, se están desarrollando entornos interactivos virtuales para colaboración y educación, por ejemplo, para aprender un idioma al interactuar con hablantes nativos virtuales, o capacitar a un médico en la atención de una emergencia en un cuerpo humano simulado.

Existen personas que aún hoy ponen en tela de juicio el futuro multi-core, a escala tera y preguntan por qué las aplicaciones del mañana necesitarán tantos subprocesos. La respuesta es que esas aplicaciones avanzadas e inteligentes necesitarán capacidades de supercomputadoras y el correspondiente paralelismo que permita el procesamiento de esas aplicaciones en tiempo real. Se trata de una extraordinaria transformación de las capacidades de los dispositivos de uso general, como servidores, equipos de escritorio y equipos móviles, y exige una transformación del hardware y software de igual magnitud.

La informática a escala tera no es un nuevo objetivo sino la realización de la plataforma de 2015, la visión de gran alcance de Intel de la evolución colectiva de tecnologías, interfaces e infraestructuras computacionales y la innovación arquitectónica y las competencias fundamentales que harán posible esa evolución. Mediante el programa de investigación en informática a escala tera, Intel trabaja denodadamente a fin de desarrollar las tecnologías que permitirán materializar esta visión. Los descubrimientos y los éxitos que se logren no sólo perfilarán el futuro de la microarquitectura Intel sino que también orientarán las capacidades de las plataformas subyacentes y permitirán que se materialicen las posibilidades del futuro mediante revolucionarias aplicaciones.

Más información
 
Encontrará mayor información sobre estas innovadoras áreas de investigación en el sitio Web de Intel y en el documento técnico relacionado “De pocos núcleos a muchos núcleos: Descripción general de la investigación en informática a escala tera” (PDF, 238KB)Información en inglés. En este documento también se ofrece bibliografía completa.

En el sitio Web de Intel podrá encontrar más información sobre los proyectos de investigación de Intel en informática a escala tera:

Informática a escala teraInformación en inglés
Desempeño con consumo eficaz de energíaInformación en inglés
Plataformas Intel®Información en inglés
Intel Multi-CoreInformación en inglés
La evolución de la computación paralelaInformación en inglés

Para obtener más información sobre los laboratorios y proyectos de investigación de Intel, visite la sección Tecnología e investigación del sitio Web de Intel.

Jim Held, investigador y director del Programa de investigación en informática a escala tera de Intel, Jerry Bautista, codirector del Programa de investigación en informática a escala tera de Intel y Sean Koehl, estratega de tecnología del mencionado programa, realizaron importantes aportes a este artículo y al documento técnico relacionado.

Toda la información relacionada con los productos y planes futuros de Intel es preliminar y está sujeta a cambios en cualquier momento y sin previo aviso.

Al inicio de la página