Queremos a sua opinião
Temos grande interesse nos seus comentários sobre o site. Clique aqui para enviar seus comentários, mudanças e sugestões.
Início › Tecnologia e Pesquisa › Revista Technology@Intel ›
Programa Intel de Pesquisa em Escala Tera focado em migrar de alguns para muitos núcleos
 
Visão geral: Computadores mais poderosos e com economia de energia para os usuários
 
O Programa Intel® de Pesquisa Tecnológica em Escala Tera é o esforço abrangente da Intel para moldar o futuro dos processadores e plataformas Intel®. Os pesquisadores da Intel já estão trabalhando em mais de 100 projetos de P&D no mundo inteiro, para vencer os desafios do hardware e software de construir e programar sistemas com dezenas de núcleos (que economizam energia) com uma hierarquia de memória sofisticada. Atualmente, os projetos desse Programa abrangem tecnologias de circuito, microarquitetura, interconexões, memória e tecnologias de software.

Alguns podem questionar por que a Intel está dando tanto ênfase à pesquisa em escala tera. O motivo é simples: a computação em escala tera é uma revolução em dois aspectos, tanto pelos recursos que os dispositivos terão, quanto pelo volume de inovações necessárias para lidar com os aplicativos avançados de amanhã. O termo em si — escala tera — tem a ver com terabytes de dados que devem ser manipulados por plataformas capazes de teraflops de desempenho tecnológico. Isso significa mil vezes mais capacidade de cálculo do que já existe nos dispositivos atuais em escala Giga.

barra
A computação em escala tera é uma revolução em dois aspectos, tanto pelos recursos que os dispositivos terão, quanto pelo volume de inovações necessárias para lidar com os aplicativos avançados de amanhã.
barra

Por que esse salto à frente? Porque as melhorias incrementais no desempenho e nas capacidades simplesmente não darão suporte a mineração de dados (data mining) em tempo em teraflops de dados; a inteligência artificial (AI) para carros e utilitários mais inteligentes; a realidade virtual (VR) para modelagem, visualização, simulação de fenômenos físicos e treinamento médico; e outras aplicações ainda nos limiares da ficção científica. Além disso, dos armazenamentos de dados estão se tornando maiores e mais complexos. Na medicina, uma varredura médica do corpo inteiro já contém terabytes de informações. Até mesmo em casa, as pessoas estão gerando grandes quantidades de dados, como centenas de horas de vídeo, milhares de documentos e dezenas de milhares de fotos digitais, que precisam ser indexados e pesquisados. A computação em escala tera é a maneira de trazer os recursos tecnológicos massivos dos supercomputadores para os dispositivos do cotidiano, que vão de servidores a desktops e a laptops.

Por exemplo, com um computador em escala tera, seria possível criar gráficos 3D fotorealísticos, com qualidade de estúdio, em tempo real. Ou você poderia gerenciar a mídia pessoal de modo mais eficiente, analisando, identificando e classificando automaticamente imagens e vídeos domésticos. Poderiam ser usados algoritmos avançados para melhorar a qualidade dos filmes capturados em câmeras mais antigas, de baixa resolução. Um aplicativo avançado de tratamento digital poderia avaliar a saúde de um paciente, interpretando enormes volumes de dados em uma varredura, e contribuir na tomada de decisões em tempo real.

 
 
Seções do artigo
 

 
 

 
Nesta Edição
História em destaque
 

O aspecto fundamental das tecnologias em escala tera — e o centro da pesquisa da Intel — está efetuando esses cálculos complexos em tempo real, basicamente através da execução de múltiplas tarefas em paralelo. Este é o requisito básico para as aplicações complexas e surpreendentes que veremos no futuro.

Novas arquiteturas oferecem novas oportunidades
 
Evidentemente, as arquiteturas em escala tera trazem vários desafios. Elas também oferecem muitas oportunidades únicas em seus projetos multi-core altamente integrados. Por exemplo, pense nas latências e a largura de banda das comunicações núcleo a núcleo, em chip. Essas serão ordens de grandeza melhores do que os sistemas de multiprocessamento chip a chip utilizados atualmente na computação paralela.

barra
Há pessoas que ainda questionam um futuro multi-core, em escala tera, e o motivo pelo qual os aplicativos de amanhã necessitarão de tantos processos. A resposta reside no fato de que esses aplicativos inteligentes e avançados exigem capacidades de supercomputação e o respectivo paralelismo que permite o processamento desses aplicativos em tempo real.
barra

O número de núcleos em um chip também pode alcançar níveis muito além daqueles dos servidores sofisticados tradicionais. Isso pode trazer benefícios importantes, tanto no desempenho, quanto em reduções de custo, em relação aos sistemas tradicionais de processador único ou duplo. Por último, o altíssimo poder computacional de um processador em escala tera, combinado à modularidade de muitos núcleos, permite que os designers dediquem recursos do hardware (como um ou mais núcleos) para funções específicas. Poderiam ser dispositivos de gerenciamento de sistema ou de uso exclusivo, como um utilitário de voz sobre IP (para telefonia na Internet), criptografia ou codificação / decodificação de mídia.

Áreas de pesquisa da computação em escala tera
 
A Intel identificou vários atributos chave, necessários nas futuras plataformas em escala tera:

  • Programabilidade Sem software otimizado, as plataformas em escala tera não exercerão todo o seu potencial. As plataformas devem atender efetivamente às necessidades dos modelos de programação novos e já existentes. Isso também abrange ferramentas de desenvolvimento e depuração de software, assim como novos benchmarks de desempenho, consistentes com a execução altamente paralela.
  • Adaptabilidade A plataforma deve ser capaz de alterar a configuração para acompanhar a diversificação de uso e workloads, assim como se adaptar às mudanças implementadas no ambiente do hardware, como as relacionadas aos fatores energéticos e térmicos.
  • Confiabilidade A plataforma deve manter os níveis atuais de confiabilidade ou aumentar sua confiabilidade, a despeito do aumento da complexidade inerente nessas plataformas.
  • Confiança A plataforma deve propiciar um ambiente de confiança, a despeito de sua flexibilidade e da complexidade de seu projeto.
  • Escalabilidade A plataforma deve proporcionar um desempenho que aumente de acordo com o número de núcleos, com o hardware e software efetivamente dimensionado.

Para ajudar a desenvolver plataformas que atendem a esses requisitos, o Programa Intel de Pesquisas Tecnológicas em Escala Tera abrange projetos no mundo inteiro e supera desafios em três áreas críticas: microprocessadores, plataformas e desenvolvimento de software. Entre outros, esses desafios englobam otimizar projetos para workloads de vários processos e altamente paralelas, desenvolver interconexões on-die escaláveis, reconstruir cache e hierarquias de memória, melhorar a E/S e identificar e explorar o paralelismo através do desenvolvimento de software.

Pesquisa de microprocessador
 
Uma das metas da Intel é fornecer uma arquitetura de processador em escala tera, escalável e altamente modular, que possa se encarregar da grande variedade de plataformas Intel® dentro das futuras limitações de energia. Há quatro aspectos primordiais para o fornecimento dessa arquitetura: projetos de núcleo otimizados, unidades de funções fixas, interconexões on-die escaláveis e gerenciamento eficiente de energia.

Projetos de núcleo
Um dos aspectos diferenciais das arquiteturas em escala tera é o uso de uma microarquitetura de núcleo, otimizada para workloads de vários processos e altamente paralelas. O multi-threading simultâneo pode ajudar a lidar com as latências de memória e a reduzir ou eliminar uma complexidade imprópria.

Na Intel, os pesquisadores estão trabalhando para determinar o projeto (ou projetos) de núcleo ideal, necessário(s) para as arquiteturas em escala tera. Os pesquisadores também se esforçam para identificar o número de núcleos que podem ser efetivamente explorados em determinada geração de processos de fabricação (como 45nm, 32nm ou 22nm). A pesquisa voltada para incluir em cada núcleo recursos e mecanismos especiais, que facilitem a exploração do paralelismo no nível de processos, é de especial importância.

O software do legado e os algoritmo inerentemente de processos únicos impõem outro desafio às arquiteturas em escala tera. Para solucionar esse problema, os pesquisadores da Intel estão explorando meios de incorporar núcleos heterogêneos, de propósito geral (núcleos otimizados de processo único e de múltiplos processos) às arquiteturas em escala tera. Além disso, os pesquisadores estão investigando o uso de conjuntos de núcleos simples para agilizar os processos únicos, através de especulação no nível de processos e de outras técnicas avançadas.

Ao variar o mix de elementos funcionais, a arquitetura pode permitir que os designers criem diversas implementações que atendam a necessidades específicas do mercado. Se o processador usa os ladrilhos (quadriculados) comuns, que consistem em um ou mais núcleos, cache, um roteador e outros itens de hardware de apoio, seria possível reutilizar aspectos diferentes de um layout de um processador para o outro.

Figura 1. Os futuros chips em escala tera usarão uma matriz de dezenas até centenas de núcleos com caches reconfiguráveis, bem como aceleradores de hardware de propósito especial.

Unidades de funções fixas
As demandas por economia de energia sugerem que, em algumas situações, compensaria criar unidades de funções fixas. Unidades de funções fixas são elementos de processamento dedicados a uma determinada workload (carga de trabalho). O desempenho dessas unidades nessa tarefa específica será melhor do que o rendimento de uma unidade de execução de propósito geral (por exemplo, a manipulação de bits de comprimento variável ou a lógica de decodificação de vídeo). Essas funções podem ser mecanismos de lógica fixa ou programável, otimizados para um propósito específico, como mecanismos de gráficos para agilizar o processamento de texturas. Outras possibilidades sendo pesquisadas abrangem vários aceleradores de rede, mecanismos de criptografia e mecanismos de Física.

Com unidades de funções fixas, uma plataforma específica em escala tera pode ter um processador com um mix de tipos de elementos correspondentes às workload significativas no segmento ao qual ele deve atender. Tanto o número de unidades, quanto o número relativo de cada tipo podem variar.

Malha de interconexões on-die escaláveis
Um processador em escala tera precisa se conectar, não somente com um grande número de núcleos, como também com caches e hardware de propósito especial, como unidades gráficas. Basicamente, à medida que mais elementos são encapsulados em um chip em escala tera, há uma necessidade proporcionalmente maior da comunicação dessas unidades entre si. Estudos têm demonstrado que o projeto das interconexões e a microarquitetura terão um papel muito importante na determinação do rendimento "líquido" de uma arquitetura em escala tera.

Em particular, a arquitetura em escala tera exigirá uma "malha" de interconexões modulares on-die (ou em chip), dimensionável para suportar um número variável de núcleos. As interconexões também devem ser robustas diante das falhas, e devem ter uma durabilidade arquitetônica que pode abranger várias gerações de projetos de processadores. Por último, as interconexões devem ter um gerenciamento de energia eficiente que reduza o consumo de energia para alcançar o uso mais eficiente dos núcleos. Espera-se de que as redes de interconexões on-chip ofereçam várias vantagens em relação às atuais interconexões do núcleo off-chip:

  • Os fios on-chip são baratos e abundantes, em comparação às redes off-chip em placas de circuito impresso.
  • As interconexões on-chip geralmente podem ser roteadas na parte superior de alguns tipos de estruturas de circuito (como os caches), para ocuparem menos espaço on-die.
  • Considerando-se as distâncias menores que as interconexões on-die devem abarcar, geralmente elas são mais ágeis e economizam mais energia do que as interconexões off-die.
  • As larguras do barramento on-die podem ser maiores do que as das placas de circuito impresso, permitindo velocidades de modulação mais baixas, e mais eficientes. Em outras palavras, é possível aumentar as larguras de banda, alargando o barramento e realmente diminuindo a velocidade de modulação para economizar energia.

Como as interconexões on-die podem aceitar um grande número de núcleos, elas podem atender a vários segmentos do mercado, desde dispositivos de servidores grandes até pequenos processadores de mini-notebooks. A arquitetura de interconexões aceitaria projetos modulares (com uma interface padrão para diversos elementos de cálculo) e ofereceriam mais possibilidades de dimensionar o desempenho por uma década, para dar suporte a diversas gerações de processos. Essas características são típicas de interconexões de plataformas, como a PCI, que ressalta mais ainda a natureza básica de um processador em escala tera como uma plataforma/sistema em um chip.

Gerenciamento de energia
Uma arquitetura em escala tera ofereceria novas oportunidades de gerenciamento de energia. Por exemplo, a disponibilidade de diversos núcleos modulares permitirá que o sistema migre o trabalho, conforme a necessidade, para equilibrar o uso no processador em escala tera, ou para equiparar a workload com o tipo de núcleo. O gerenciamento eficiente de cargas térmicas nos componentes individuais de um processador em escala tera também vai melhorar a confiabilidade geral, assim como o desempenho geral, dispersando uniformemente a carga térmica.

No nível do circuito, a Intel está pesquisando várias áreas críticas. Essas áreas abrangem projetos de circuitos para caches on-die e memória on-die, que são mais eficientes em termos de uso da energia. Os circuitos de arquivamento de registros de protótipos já estão constando uma melhoria três vezes maior na velocidade dos acessos à memória, e uma redução de até quatro a cinco vezes maior do consumo de energia nos circuitos atuais. O objetivo da Intel é alcançar uma melhoria de 10 vezes mais no desempenho por watt, nos próximos 10 anos.

Os processadores em escala tera também podem contar com a possibilidade de reduzir o consumo de energia em uma tarefa específica de computação. Isso significa que as workloads não críticas ou altamente paralelas poderiam ser executadas a uma freqüência reduzida, diminuindo com isso o consumo de energia. Para o código crítico ou segmentos de código altamente serial, é possível otimizar o desempenho, acelerando temporariamente a freqüência.

Áreas de pesquisa de plataforma Intel
 
Para conhecer mais detalhes sobre essas novas áreas de pesquisa inovadoras, leia a publicação técnica relacionada, intitulada “De alguns para muitos núcleos: uma visão geral da pesquisa tecnológica em escala tera” (PDF 238KB)Informações em Inglês. Essa publicação examina com mais detalhes as áreas de Pesquisa de plataformas da Intel, a saber:
  • Cache e hierarquia de memória
  • E/S
  • Virtualização e particionamento
  • Ambientes de execução
  • Áreas de pesquisa de desenvolvimento de software
  • Workloads futuras, inclusive reconhecimento, mineração e síntese
  • Ambientes de programação
  • Programação paralela

Visite também a página Computação em escala teraInformações em Inglês no site da Intel na web, onde você encontrará um demo e outras informações relacionadas.

Resumo
 
A Intel prevê dispositivos futuros girando ao redor de arquiteturas em escala tera, que usam dezenas a centenas de núcleos para processar quantidades gigantescas de informações simultaneamente. Ao tornar esses dispositivos escaláveis, adaptáveis e programáveis, a Intel pode ajudar a conduzir a indústria para uma nova era onde existe a possibilidade de aplicativos mais imersivos, interativos e úteis.

Em um mundo em escala tera, existirão novos recursos de processamento para minerar e interpretar a montanha crescente de dados do mundo, e fazer isso com mais eficiência. Agentes inteligentes poderiam avisar os usuários em tempo real sobre compra e venda de ações e outras decisões financeiras. Esses agentes poderiam pesquisas coleções imensas de vídeos digitais, para localizar pessoas ou eventos específicos, e até editar um novo vídeo, de acordo com o que o usuário deseja ver. Para os usuários de games, há o benefício óbvio de gráficos fotorealísticos em tempo real. Contudo, até mesmo esses benefícios não se destinam apenas aos usuários de games. Já estão sendo desenvolvidos ambientes virtuais interativos para colaboração e aprendizagem, como aprender um idioma, interagindo com falantes nativos virtuais, ou treinar um médico para uma situação de emergência, em um corpo humano simulado.

Há pessoas que ainda questionam um futuro multi-core, em escala tera, e o motivo pelo qual os aplicativos de amanhã necessitarão de tantos processos. A resposta reside no fato de que esses aplicativos inteligentes e avançados exigem capacidades de supercomputação e o respectivo paralelismo que permite o processamento desses aplicativos em tempo real. Esta é uma grande mudança no que os dispositivos mais importantes — servidores, desktops e portáteis — podem fazer, e exige uma mudança de iguais proporções no hardware e software.

A computação em escala tera não é um objetivo novo, mas o atendimento da Plataforma 2015 — A visão de longa data da Intel sobre a evolução coletiva das tecnologias, interfaces e infra-estruturas tecnológicas, e a inovação da arquitetura e capacidades do núcleo permitirão essa evolução. Através do Programa de Pesquisa Tecnológica em Escala Tera, a Intel tem dedicado muitos esforços no sentido de desenvolver as tecnologias para realizar essa visão. As descobertas e conquistas resultantes não somente moldarão o futuro da microarquitetura Intel, como também guiarão as capacidades das plataformas básicas e permitirão a realização das possibilidades do futuro através de aplicativos revolucionários.

Mais info
 
Para conhecer mais detalhes sobre essas novas áreas de pesquisa inovadoras, visite o site da Intel na web e leia a publicação técnica relacionada, “De alguns para muitos núcleos: uma visão geral da pesquisa tecnológica em escala tera” (PDF 238KB)Informações em Inglês. A publicação também contém uma lista completa de referências.

Para obter mais informações sobre a pesquisa da Intel sobre computação em escala tera, visite o site da Intel na web:

Computação em escala teraInformações em Inglês
Desempenho com economia de energiaInformações em Inglês
Plataformas Intel®Informações em Inglês
Intel Multi-CoreInformações em Inglês
Evolução da computação paralelaInformações em Inglês

Para saber mais sobre os projetos de pesquisa e os laboratórios da Intel, visite a área Pesquisa & Tecnologia do site da Intel.

Jim Held, Fellow da Intel e diretor do Intel Tera-Scale Computing Research Program (Programa Intel de Pesquisa Tecnológica em Escala Tera), Jerry Bautista, diretor adjunto do Intel Tera-Scale Computing Research Program, e Sean Koehl, estrategista em tecnologia no Intel Tera-Scale Computing Research Program, contribuíram extensivamente para este artigo e para a publicação técnica complementar.

Todas as informações fornecidas relacionadas a produtos e planos futuros da Intel são preliminares e sujeitas a alterações a qualquer momento, sem aviso.

Para o começo da página