Energy-Efficient HPC Desafios para Eficiência de Energia Aula 03 Prof. Abel Guilhermino
Motivação Densidade dos transistores dobrando a cada 18 meses (Moore) Projetar sistemas cada vez mais complexos em uma mesma pastilha (Ex: SoCs, MPSoCs) Propicia aplicações digitais agregar cada vez mais funcionalidade em equipamentos de menor volume (Ex: 65nm) Fonte : Intel www.intel.com. 2009
Preocupação
Componentes de Potência P CMOS = P static + P dynamic Componente dinâmica Carga e descarga de capacitores (I p,i n ) Durante a transição de alto para baixo uma energia E=CV 2 d d é drenada de V dd através de I p uma parte da qual é armazenada em C. Durante a transição de baixo para alto, a capacitância de saída é descarregada através de I n. Fonte : Advanced Memory Optimization Techniques for Low- Power Embedded Processors, Springer 2006. Corrente de curto circuito (I sc ) Ex: Quando a entrada de um inversor CMOS chaveia de um nível lógico para o oposto, haverá um instante em que ambos os transistores pmos e nmos estarão aberto. Durante este tempo uma corrente I sc fluirá de V dd para G nd.
Componentes de Potência P CMOS = P static + P dynamic Componente Estática (I lk ) Fonte : Advanced Memory Optimization Techniques for Low- Power Embedded Processors, Springer 2006. I lk = pmos e nmos não são isoladores perfeitos, com isso, há sempre uma corrente de leakage que flui de V dd para G nd. Ela é inversamente proporcional a característica de tamanho e exponencialmente a tensão de threshold (V t ). Ex: I lk = 10-20pA/transis (130nm; 0,7V t ) Ex: I lk = 10-20nA/transis (130nm; 0,3V t ) Leakage Power: 5% when (0,25µm = 250nm) 20-25% (130nm)
Redução de Tensão Fontes de tensão V dd reduzidas para controlar a potência dinâmica. Isso fez com que reduzisse as escalas de tensão de threshold V th para aumentar a capacidade de fornecimento de corrente. Redução de V th aumento da corrente de subthreshold. Redução de tecnologia implica em redução de canal Isso não foi feito sincronizado com as reduções de V dd e V th. Espessura do óxido reduzida Tox (aumento de campo elétrico)
Redução Tecnologia Transistor Fonte : Low Power Methodology Manual for SoC Design, 2007 Limite Atual de Velocidade =~3 GHz f Op 3GHz Fonte : ITRS - 2007 EDITION - DESIGN
Performance x Number of Cores em CPUs Aumento da quantidade de cores para poder reduzir a frequência e consequentemente reduzir a potência nos processadores.
Tendências ITRS 2008 Soluções potenciais para implementação de sistemas microeletrônicos Fonte : ITRS - 2007 EDITION - DESIGN
Arquitetura típica de Consumidor Estacionário (ITRS) Típica arquitetura de um consumidor estacionário. Aplicações que não requerem uso de bateria. DPE: Processador dedicado a processamento de dados Processador de propósito geral que aloca e escalona jobs para o DPE. I/O para interface com memória e Chip-to-Chip. Source:
SOC Design Complexity Trends Rápido crescimento do número de PEs. Desempenho proporcional ao número de PEs e ao desempenho do dispositivo. Processamento de desempenho desejável crescerá mais que 250x nos próximos 15 anos. Soluções potenciais diversas para encontrar o desempenho desejável: Projeto Lógica, Projeto Circuito, Projeto Físico Source:
SOC Design Complexity Trends Processamento de Desempenho desejável em 2022 será mais de 70TFlops Comparado com consumidor de dispositivo portátil, este driver possui pior relação performance-to-power, mas superior flexibilidade funcional para suportar adições ou modificações. Por ser fácil adicionar ou modificar funções, o ciclo de vida do consumidor SOC estacionário é longo. Source:
SOC Performance Trends Processamento de desempenho desejável crescerá mais que 250x nos próximos 15 anos. Metodologias de projeto automáticas tais como síntese de alto nível são importantes Source:
SoC Power Consumption Trends Source: Explosão no consumo de potência será considerado um fator crítico para o futuro projeto de um SoC. Rápido crescimento do consumo de energia resultará em fatores críticos com encapsulamento e refrigeração do chip. Leakage power será muito maior que o valor calculado na figura, devido ao efeito da temperatura. Consumo de energia por PE diminui de acordo com as tendências de tensão e constante dielétrica.
Potência x Energia Fonte : Low Power Methodology Manual for SoC Design, 2007 Importância em Limitar a Potência Dependente da Aplicação
Aplicação Petrobras Aquisição de dados no mar. O source periodicamente gera ondas que produzem reflexões na borda da superfície que são em seguida coletados por receivers. Processo de Migração Sísmica para produzir uma imagem do subterrâneo consistente com os dados adquiridos. Fonte : PETROBRAS, Computational Characteristics of Production Seismic Migration and its Performance on Novel Processor Architectures, SBAC-PAD 2007.
Aplicação Petrobras Evolução de Potência (KVA) e quantidade de CPUs (Beowulf) em função dos anos. Final de 2006 5166 x86 CPUs (Intel Xeon e AMD Opteron) 26TFlops Fonte : PETROBRAS, Computational Characteristics of Production Seismic Migration and its Performance on Novel Processor Architectures, SBAC-PAD 2007.
Aplicação Petrobras Comparação entre abordagens e indicação de speed up com base em: Quantidade de cores Power Preço Exemplo: Quad Core System: Speed/core: 49,01 Power/board: 415.13 Como são 8 cores/board: Speed /power = (8*49,01)/415.13 = 0,94 Fonte : PETROBRAS, Computational Characteristics of Production Seismic Migration and its Performance on Novel Processor Architectures, SBAC-PAD 2007.
Outras Aplicações Existe uma demanda crescente por desempenho computacional em diversas aplicações: Simulação Molecular Modelagem de Fármacos Processamento de Imagens- Diagnóstico Médico Simulações Numéricas- Equações Diferenciais Simulação Geofísica- Prospecção de Gás e Óleo Bioinformártica Genômica e Proteômica Elementos Finitos- Simulação de Estruturas
AMD Spider Multi-GPU In: http://www.techshout.com/ http://www.terasic.com.tw/ Diferentes Abordagens PC cluster GPU Graphics Processor Units FPGA Field Programmable Gate Array MPPA Massively Paralell Processor Arrays
Comparação (CPU x GPU x MPPA x FPGA) Aplicação Específica: Geração de Números Randômicos Fonte : David B. Thomas, Lee Howes and Wayne Luk; A Comparison of CPUs, GPUs, FPGAs, and Massively Parallel Processor Arrays for Random Number Generation ; FPGA 2009. pp- 63-72
Power Components in FPGA Devices Pre-Programmed Static (Quiescent) Device Power Consumption: Potência consumida pelo FPGA antes da programação do dispositivo Inrush Programming Current Corrente requerida quando programando um dispositivo até a programação completa Post-Programmed Static Power Consumption Potência que está sendo consumida pelo dispositivo com frequência 0 MHz. Muito significante. Devido a grande quantidade de transistores (8x a 10x comparado a ASIC sem considerar lógica de configuração/multiplexação. Dynamic Power Consumption Potência incremental consumida pelo componente de frequência não nula (P = kcv 2 f). Depende do projeto
FPGA Power Comparisons Source: WP298: Power Consumption at 40 and 45nm - 13 Abril 2009
Núcleo de Processamento 2D Núcleo 2D FLOPS/Joules?
Etapas para Avaliação de Energia em Sísmica (1) Mecanismo Preciso para Estimar Energia Plataforma FPGA (2) Metodologia para Estimar Energia de IP-Cores Criar fluxo de projeto para estimar energia em FPGA e comparar com o mecanismo preciso. (3) Mecanismo para Redução de Energia Propor mecanismo para redução de energia em FPGA considerando a abordagem 2D Avaliar impacto de redução comparado com o mecanismo preciso. (4) Realizar etapas (1) e (2) para GPU para avaliar impacto de consumo de energia comparado com FPGA (5) Soluções podem ser estendidas para abordagem 3D.
Etapa 1: Estimativa Precisa de Energia em FPGA Diferentes planos de potência Shunt para medir potência na PCI-E Shunt para medir potência na Fonte EXEMPLO: (E = P x T) E_CPU = 130 x 35,5 = 4589J E_FPGA = 120 x 11 = 1320J
Etapa 2: Metodologia para Estimar Energia em IP-Cores 4W 3W 15W 5W 12W 16W 11W 5W 50W 10W Routing = 40 W I/O = 15 W
Etapa 3: Mecanismo para Redução de Energia Clock Gating MSV Redução de Tensão de Alimentação DVS (Dynamic Voltage Scaling) MSV (Multiple Supply Voltage) DFS (Dynamic Frequency Scaling) DFS Power DVFS (Dynamic Voltage Frequency Scaling) Clock-Gating 20MHz 30MHz 10MHz 20MHz
Etapa 4: Relação Flops/Joules entre FPGA x GPU? X FLOPS/Joules?