Tendências Tecnológicas em Processadores                   CMG Journal of Computer Resource Management                    ...
Acima tipificamos uma Máquina Super Escalar, como       Este BenchMark mostra o efeito dos Caches napor exemplo uma z10, q...
3 – Pipelines mais Profundas                                                       Observar que, embora com Ciclo mais ráp...
Acima, as aparições destes artigos no IEEE Journal of                                                       Solid State Ci...
4 – CMOS e sua evolução                                                     Não houve muita diferença (95mm) para o MCM da...
Apenas por curiosidade, esta Micro Fotografia retrata o                                                        chip com um...
5 – ‘State of Art’ nos equipamentos z196As novas máquinas z196 acrescentaram um Cache L2de 1.5MB, intermediário entre os L...
Esta Micro Fotografia, da apresentação de Charles      Esta bonita Micro Fotografia nos mostra que:Webb, agrupa e identifi...
6 – Conclusões:                                          Questões: Se desejar maiores detalhes e/ou quiser                ...
O RedBooks z10 e z196 Enterprise Class    Technical Guides SG 24-7516 e 7833.pdfo   IBM Journal of Research and Developmen...
Upcoming SlideShare
Loading in …5
×

Tendências Tecnológicas em Processadores, por Luiz Carlos Orsoni

650 views

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
650
On SlideShare
0
From Embeds
0
Number of Embeds
51
Actions
Shares
0
Downloads
9
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Tendências Tecnológicas em Processadores, por Luiz Carlos Orsoni

  1. 1. Tendências Tecnológicas em Processadores CMG Journal of Computer Resource Management Preparado por Luiz Carlos Orsoni 18 de Agosto de 2.011 Devido à aproximação dos limites físicos, os Processadores evoluem em 2 “frentes”: Mais e maiores Caches e Pipelines mais “profundas”. Esta Palestra procurará identificar estes componentes nos MainFrames IBM, comentando como têm evoluído e qual a sua tendência . . . [A evolução Tecnológica em Circuitos reduz o Cycle Time, mas não é nosso foco] Com esse propósito, objetiva-se esclarecer a perguntas do tipo: Execução em Paralelo? Execução Fora de Ordem? O que há em 80% da Área nos Chips de Processadores?1 – Máquinas Super EscalaresFocaremos os principais componentes dos modernosHardwares: Caches e PipeLines, como apareceramnos Mainframes, e qual seu estado atual até asmáquinas zEnterprise, ou z196.Fundamentaremos os conceitos com Figuras e Textospresentes em Manuais, RedBooks e Palestras da IBM. Embora os Caches cumprissem sua função, baixando os tempos em que se esperava trazer e levar Operandos para a Memória, enquanto houvesse apenas uma ALU, as máquinas continuariam sendo Não Escalares.Nos primeiros System/360, a Memória de NúcleosMagnéticos era lenta e longínqua, alimentando osCircuitos do Instruction Fetch, e da Execution Unit,única portadora de ALU, capaz de produzir osresultados, uma Instrução por vez. Este fatocaracterizava-os como Máquinas Não Escalares.Pelo fato de trabalharem em série, ou seja, todos oscircuitos aguardavam enquanto um dos componentes O artigo do Professor Sima, do qual se extraiu a Figuraestava ativo, o througput era baixo. Para reduzir os acima, esclarece que a qualificação Escalar se aplica atempos necessários para se obter Instruções e máquinas que executem mais de uma Instrução emOperandos, ou guardá-los, em Memória, foi Paralelo, mas decodifiquem seqüencialmente.introduzido o conceito de Cache. Por outro lado, quando ambas são feitas em paralelo, a máquina é dita Super Escalar. COPYRIGHT CMG BRASIL - DIREITOS RESERVADOS AO CMG BRASIL SOBRE QUALQUER FORMA DE REPRODUÇÃO, CÓPIA E DIVULGAÇÃO DESTE MATERIAL
  2. 2. Acima tipificamos uma Máquina Super Escalar, como Este BenchMark mostra o efeito dos Caches napor exemplo uma z10, que execute até 3 Instruções Performance do Modelo 85, comparado ao 65 (sempor ciclo (sem dependências e nem Delays devido aos Cache), para os dois tamanhos possíveis: 16 ou 32KB.Caches e/ou TLBs). Notar:1 – A Adição de Caches de nível 1, separados para Observar na primeira coluna, o ganho obtido peloInstruções (Read) e Dados (Read&Write) Modelo 75, também sem Cache, apenas aplicando mais2 – A existência de várias Instruções e seus recente e melhor Tecnologia, com menor Cycle Time.Operandos, aguardando Execução em Filas3 – Os Circuitos de Tradução de Endereços e suas Na última coluna aparecem os resultados do Modelo 91,respectivas Memórias Associativas TLBs e ALB assunto que trataremos na seção 3 - PipeLines.4 – Tabelas para acelerar Branches, como a BHT –Branch History Table2 – Mais e Maiores Caches Quantidade de Bytes atualmente colocadas à disposiçãoAnunciado em Jan/68 e entregue em Dez/69, o /360 das PUs:Modelo 85 trouxe a novidade do Cache, podendo sersolicitado em 16KB ou 32KB. z9: 256KB para cada L1 (IeD), vindos de 40MBTestes iniciais mostraram que, com uma Line Size de z10: 192KB de Caches IeD, mais L1.5 privado de 3MB,64 bytes, um Cache de apenas 16KB permitiria vindos de Cache Externo de 48MBencontrar nele mais de 80% dos bytes requisitados, ecom 32KB, quase 90%, obtendo um grande ganho em z196: 192KB de Caches IeD, mais L2 privado de“vazão” (de 3,2 até 4,8 vezes mais rápido). 1,5MB, mais L3 de 24MB compartilhado com as outras 3 PUs do chip, vindos de Cache Externo de 192MBPrevalecendo a idéia de Cache, implementou-se novonível dentro da própria CPU, reduzindo o tempo de Conclusão: Da z10 até a z196, o Cache é 4 vezesbusca, bem como dividindo o Cache L1 em maior! Da z9 até a z196, o Cache é quase 5 vezesInstruções e Dados, com o IF solicitando os Dados maior! Mais de 6 mil vezes, desde a introdução doantes, para serem usados a seguir, na Execution Unit. System/360 Modelo 85. COPYRIGHT CMG BRASIL - DIREITOS RESERVADOS AO CMG BRASIL SOBRE QUALQUER FORMA DE REPRODUÇÃO, CÓPIA E DIVULGAÇÃO DESTE MATERIAL
  3. 3. 3 – Pipelines mais Profundas Observar que, embora com Ciclo mais rápido, e fazendo mais coisas em Paralelo, a z10 tem mais “Penalty Cycles”.Anunciado em Nov/64 e entregue em Out/67, o /360 Ver no IBM Systems Journal do z10, o conceito deModelo 91 trouxe a novidade do Pipeline, permitindo FanOut.execução simultânea de mais do que uma Instrução.A inclusão de várias Execution Units, com suas ALUs,tornou possível executar mais do que uma Instruçãopor vez (processamento Super Escalar), colocandomaior demanda na Performance dos Caches.Notar: 8 DoubleWords de PreFetch, mais duas paraExecução Alternada, devido a Branches.Ver a descrição de “Imprecise Interrupts” e daInstrução BCR 15,0 no Manual “FunctionalCharacteristics” do System /360 Modelo 91. . Completamos a Figura anterior, que representou o z10, adicionando: 1 – Cada Cache L2 alimenta os 4 Books 2 – Todos os Canais também se servem do L2 3 – O Cache privado L1.5 4 – Cada chip de PU é quádruplo 5 – Existem 5 chips de PU por MCM, ou Book A Figura já ilustra as adições, ocorridas no System/370 e seguintes, como DAT, TLB em 2 níveis, ALB (AASF) e a Branch History Table, que permitem acelerar decisões.Aqui temos uma comparação das PipeLines domodelo z9 com o z10 (internamente era chamado dez6, nesta apresentação de Charles Webb, em 2007). COPYRIGHT CMG BRASIL - DIREITOS RESERVADOS AO CMG BRASIL SOBRE QUALQUER FORMA DE REPRODUÇÃO, CÓPIA E DIVULGAÇÃO DESTE MATERIAL
  4. 4. Acima, as aparições destes artigos no IEEE Journal of Solid State Circuits, Volume 32 Número 11, e no IBMComparado à z9, a Pipeline da z10 é mais “profunda”, Journal of Research and Development, Volume 41o que também pode ser detalhado no Volume do IBM Número 4/5.Journal of Research and Development, Vol. 53 No. 1de 2009, do qual se recomenda a leitura.Por volta de Março de 1.997, Charles Webb e John Embora não seja o nosso foco nesta Palestra,Liptay publicam artigos relatando terem conseguido apresentsmos acima o decréscimo nos Cycle Times dasimplementar um Mainframe da Arquitetura ESA/390 máquinas da zSeries, conseqüência da evoluçãoem um único chip CMOS, eliminando a necessidade Tecnológica na construção de circuitos eletrônicos.de refrigeração a água. COPYRIGHT CMG BRASIL - DIREITOS RESERVADOS AO CMG BRASIL SOBRE QUALQUER FORMA DE REPRODUÇÃO, CÓPIA E DIVULGAÇÃO DESTE MATERIAL
  5. 5. 4 – CMOS e sua evolução Não houve muita diferença (95mm) para o MCM das z9, também com chips de PU duplos.Apenas para comparação, ilustramos o tamanho dosMCM – Multi Chip Modules das primeiras máquinas daSérie z, como a z900, com 5 polegadas de lado (13cm) e 20 chips de PUs, dos quais até 16 CPUs. Nas z10 o chip de PU passa a ser quádruplo, com 5 chips por MCM, podemos ter até 20 PUs por Book.Para ser mais rápido, o MCM da z990 tinha que sermenor, apresentando apenas 3,5 polegadas de lado(96mm), tendo 8 chips de PUs duplos, alguns dosquais só podiam ser usados uma PU por vez.O z990 também introduziu o conceito de Book,podendo haver até 4 Books em cada CEC. Como o Nas z196, o MCM reduz para apenas 83mm de lado,máximo era 12 por MCM, o z990 pode ter até 48 PUs. com 6 chips de PUs quádruplos, 24 PUs por Book). COPYRIGHT CMG BRASIL - DIREITOS RESERVADOS AO CMG BRASIL SOBRE QUALQUER FORMA DE REPRODUÇÃO, CÓPIA E DIVULGAÇÃO DESTE MATERIAL
  6. 6. Apenas por curiosidade, esta Micro Fotografia retrata o chip com uma PU da z900, contendo Caches de Nível 1 de 256KB, tanto para Dados quanto para Instruções.A Figura acima ilustra as conquistas deste milênio: Estas máquinas, até a z990, tinham circuitos duplicadosMulti Chip Modules do tamanho de um diskette de 3,5 para Decodificação e Execução das Instruções, sendopolegadas (95mm), como o da z9 sobreposto ao seu resultado comparado pela R-Unit, por questões dediskette e o da z10, logo abaixo. integridade (RAS). Notar circuitos separados para Execução em Ponto Fixo e Ponto Flutuante, permitindo paralelismo.Nas duas Figuras acima, ressaltamos em azul osChips dedicados aos Caches L2.Na Micro Fotografia das z10 ao lado, vê-se que dentrodo mesmo chip estão abrigadas 4 PUs, mais 2 Co-Processadores para Crypto e Compressão de Dados,mais os Interfaces com Canais (GX) e Cache L2 eMemória Central (MC).Vê-se também a região dedicada ao Instruction Fetche Branch Prediction, Decodificação, Execuçãoseparada para Ponto Fixo, Flutuante (Hexa e Binário)e Decimal, Load & Store Unit, Conversão deEndereços e RAS. COPYRIGHT CMG BRASIL - DIREITOS RESERVADOS AO CMG BRASIL SOBRE QUALQUER FORMA DE REPRODUÇÃO, CÓPIA E DIVULGAÇÃO DESTE MATERIAL
  7. 7. 5 – ‘State of Art’ nos equipamentos z196As novas máquinas z196 acrescentaram um Cache L2de 1.5MB, intermediário entre os L1 (Instrução eDados) e os L3, permitindo à PU trabalhar mais tempoindependente dos circuitos externos e dos L3 e L4. Detalhamento da composição do chip das máquinasAlém da implementação de Execução de até 5 z196:Instruções, incluindo Fora de Ordem (OOO), e mais Cada PU conta com 64KB de Cache L1 para Instruçõesumas 100 novas Instruções, os equipamentos z196 e sua respectiva TLB1I, mais 128KB de Cache L1 paracontam com outras “maravilhas” [como Non Quiesce Dados e sua respectiva TLB1D, mais um Cache L2 deSSKE e Partial Purge, mais os indicadas com ? na 1,5MB.Figura acima] cujo tempo desta Palestra não permite Cada 4 PUs em cada chip, compartilham um Cache L3discorrer, mas que aconselhamos seja pesquisado de 24MB.nos Manuais correspondentes. Cada Book possui um Cache L4 de 192MB, compartilhado por todos os Chips e pelos Canais. Cada Co Processador tem 2 Caches de 16KB. Observar a área ocupada pelos Caches! 80%!Esta Micro Fotografia dá conta do existente dentro decada um dos 2 chips que completam a composição doMCM, tendo 96MB cada um.Lines de 256 bytes destes Caches de nível 4 sãotambém disputadas por todos os Canais, durante asOperações de I/O, via conexão InfiniBand. Esta Micro Fotografia do RedBook do Power7, foiAlém de servirem os 6 chips de PUs do próprio Book, colocada aqui apenas a título de comparação e paratambém se comunicam, em estrela, com os demais L4 completar a idéia de Tendência desta Evoluçãodos outros 3 Books, caso existam. Tecnológica. São 8 PUs no Chip, mais seus respectivos Caches: L1I (32KB), L1D (32KB), L2 (256KB) e L3Notar circuitos para ETR e TOD. (32MB). COPYRIGHT CMG BRASIL - DIREITOS RESERVADOS AO CMG BRASIL SOBRE QUALQUER FORMA DE REPRODUÇÃO, CÓPIA E DIVULGAÇÃO DESTE MATERIAL
  8. 8. Esta Micro Fotografia, da apresentação de Charles Esta bonita Micro Fotografia nos mostra que:Webb, agrupa e identifica os diversos circuitos naPU da z10. Instruções vêm do Cache L2 para a ICM, no L1I e TLB1I, sob comando da IFB, que também faz BranchCompare-se com a próxima Micro Fotografia, dos Prediction: BHT+PHT+BTB.circuitos equivalentes da z196, que ganha a ISU – Daí, são decodificadas pela IDU e seqüenciadas pelaInstruction Sequencing Unit, que habilita a z196 a ISU, sendo então distribuídas para a LSU, que é dupla,executar até 5 Instruções por ciclo e também fora de para a FXU, também dupla, para a BFU (se Pontoordem. Flutuante Hexadecimal ou Binário) ou para a DU (se Ponto Flutuante Decimal ou Decimal Compactado).Notas: Máquinas como a ES-9000 já executavamInstruções fora de ordem, aumentando o throughput, Todo Operando necessário é movimentado pela LSU emas este esquema não havia nas máquinas da Série toda Tradução de Virtual para Real é tratada pela XU,z, reaparecendo agora na z196. Quanto aos onde estão os circuitos do DAT e a TLB2. A RU garanteOperandos, todas os processam fora de ordem. o RAS. Observar na Figura ao lado que a parte de cima é feita “In Order”, enquanto que a parte de baixo, após a ISU, é feita “Out Of Order”, se possível. Decidido pela IFB o que “fetchar”, as Instruções migram do Cache L1I para a IDU via buffers, de onde são Decodificadas e entregues à ISU, que detecta dependências e, sendo possível, as entrega a uma das duas LSU, ou uma das duas FXU, ou à BFU ou à DU (além de Ponto Flutuante, estas duas Unidades também se encarregam de Multiplicação e Divisão “normais”). Todo Operando é manipulado pela LSU, onde se encontra o Cache L1D, e Endereços são Traduzido pela XU. COPYRIGHT CMG BRASIL - DIREITOS RESERVADOS AO CMG BRASIL SOBRE QUALQUER FORMA DE REPRODUÇÃO, CÓPIA E DIVULGAÇÃO DESTE MATERIAL
  9. 9. 6 – Conclusões: Questões: Se desejar maiores detalhes e/ou quiser trocar informações, contactar: • Limites Físicos impõem restrições ORSONI@MAFFEI.COM.BR Acrônimos: • Otimizar Códigos, aproveitando as vantagens já existentes! o AASF Advanced Address Space Facility • Opções de Compiladores . . . O ALB Access Register Lookaside Buffer • Objetivar “Desperdício ZERO!” O ALU Arithmetic and Logic Unit • Novamente: SpinTrônica? O BHT Branch History Table o Book Estrutura eletrônica onde ficam o MCM,Como o limite desta Tecnologia se aproxima Memórias e as Interfaces com os Canaisrapidamente, é aconselhável que alguns analistasiniciem uma “Caça ao Desperdício”, para eliminar, ou O CEC Central Electronic Complexpelo menos reduzir, todo consumo indesejável (e o CMOS Complementary Metal Oxidedesnecessário!). Semiconductor O CPU Central Processing Unit, a unidadeAlguns Compiladores já oferecem a possibilidade de Lógica para executar Instruçõesgerar Código específico para a Arquitetura de uma DAT Dynamic Address Translation, osdada máquina, otimizando a execução deste mesmo circuitos que traduzem endereços eCódigo. usam TLBs e ALB o ESA Enterprise System ArchitectureContinuam as pesquisas com a SpinTrônica, O ETR External Time Referenceprovavelmente a “nova” Tecnologia a substituir a atual o EX Execution UnitMetodologia para fabricar circuitos. O IEEE Institute of Electrical and Electronics Engineers o IF Instruction Fetch O InfiniBand Substitui os STIs conectando Canais O I/O Input Output o L1 Cache de Nível 1 o L1I Cache de Nível 1 para Instruções o L1D Cache de Nível 1 para Dados o L1.5 Cache entre os Níveis 1 e 2 o L2 Cache de Nível 2 o L3 Cache de Nível 3 o L4 Cache de Nível 4 O MCM Multi Chip Module o OOO Out Of Order Instruction Execution O PU Processing Unit, os circuitos Físicos O RAS Reliability, Availability, Serviceability o SSKE Set Storage Key ExtendedAcima uma pequena Bibliografia do assunto O TLB Translation Lookaside BufferSpinTrônica. o TLB1 TLB do Cache L1 O TLB1I TLB do Cache L1IUm dos objetivos desta Palestra foi tentar mostrar O TLB1D TLB do Cache L1Dque, desde a introdução de PipeLines no final dos o TLB2 TLB dos Caches de demais níveisanos 60, e a conseqüente proliferação de máquinas O TOD Time Of Day ClockSuper Escalares, devemos nos abster de imaginar osMainframes executando apenas uma Instrução por Referências Bibliográficas:vez (ou por Ciclo, para aquelas que necessitam deapenas um Ciclo). O Principles of OPeration.pdf DZ9ZR007 z/10 Ago/ 2.010 SA22-7832-08 COPYRIGHT CMG BRASIL - DIREITOS RESERVADOS AO CMG BRASIL SOBRE QUALQUER FORMA DE REPRODUÇÃO, CÓPIA E DIVULGAÇÃO DESTE MATERIAL
  10. 10. O RedBooks z10 e z196 Enterprise Class Technical Guides SG 24-7516 e 7833.pdfo IBM Journal of Research and Developmento Professor Dezsõ Sima, Kandó Polytechnik, Budapest, do CD-ROM que acompanha o livro "The Anatomy of a Microprocessor: A Systems Perspective," por Shriver & Smith IEEE PressO Todos os Manuais e RedBooks: © IBMO Cursos MFTS00 e MFTS30 da MAFFEI COPYRIGHT CMG BRASIL - DIREITOS RESERVADOS AO CMG BRASIL SOBRE QUALQUER FORMA DE REPRODUÇÃO, CÓPIA E DIVULGAÇÃO DESTE MATERIAL

×