processador intel itanium. visão geral caracteristicas arquitetura epic - explicit parallel...

26
Processador Intel Itanium

Upload: internet

Post on 17-Apr-2015

121 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Processador Intel Itanium

Page 2: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Visão Geral

Page 3: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Visão Geral

Page 4: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Caracteristicas

• Arquitetura EPIC

- Explicit Parallel Instruction-Set Computer

• Processador de 64 bits

• Predication

• Execução Especulativa de Dados e Instruções

• Prediction

• ILP (Instruction Level Parallelism)

- Pacotes de Instruções (Bundles)

Page 5: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Registradores

• Muitos registradores

• Propósito geral: 128 de 64 bits

• Ponto flutuante: 128 de 82 bits

• Registradores de predicado: 64 de 1 bit

• Registradores de branch: 8 de 64 bits

• RSE: Register Stack Engine

• Salvamento automático de determinados registradores

• Permite compartilhamento com outras funções

Page 6: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Diagrama de blocos do processador

Page 7: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Diagrama de blocos

• Processamento de instruções

• Prefetch, fetch, cache L1, branch prediction, geração de endereçamento, buffer de instruções, despacho de instruções, register renaming

• Execução

• Controle

• Alimentador de exceções, pipeline, SER

• Subsistema de memória

• Cache L2, Cache L3, TLB, ALAT, PIC

Page 8: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Sistema de memória

• Endereça 2^128 bytes!

Page 9: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Sistema de memória

• Cache L1: possui 2 unidades (1 para dados e a outra para instruções) de 16K cada

• Cache L2: unificada (armazena dados e intruções)

• Cache L3: idem à L2

Page 10: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Cache L1

• L1I e L1D

• 4-way set-associative

• fisicamente indexadas

• para L1D: política de write through

Page 11: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Cache L2

• Unificada

• 256 KB de espaço

• 8-way set-associative

• Linhas de cache com 128 bits

• Implementa o Write back

Page 12: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Cache L3

• Unificada

• Tamanho variável: 1,5 MB até 3,0MB

• 12-way set-associative

• Linhas de cache de 128 bits

Page 13: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Sistema de memória

• Advanced Load Address Table (ALAT)• Permite data speculation

• Translation Lookaside Buffers (TLB)• Mapeamento entre endereços virtuais e físicos• DTLB e ITLB• DTLB L1 e DTBL L2

• L1 gerencia Loads e acertos na Cache L1D• L2 gerencia Stores e acertos nas Caches L2 e L3

•Write Coalescing

Page 14: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Pipeline

• O pipeline do processador Itanium possui dez estágios:

Page 15: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Pipeline

Nos 3 primeiros estágios ocorrem:

• Prefetch de instruções

• Fetch de 32 bytes em 1 ciclo de clock

Page 16: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Pipeline

• Brach Prediction

• O Itanium provê instruções para o fornecimento de branch hints

• Há também estruturas dentro do processador para esta função

Page 17: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Pipeline

No quarto estágio do pipeline ocorre:

• Despacho de até 6 instruções para 9 portas de emissão.

• Bits de controle tipo Stop eliminam checagem de dependências

Page 18: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Pipeline

No quinto estágio do pipeline ocorre:        

• Register Renaming

• Transparente para o compilador

• Evita empilhar/desempilhar parâmetros

Page 19: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Pipeline

No sexto e sétimo estágios do pipeline ocorrem:• Busca de operandos • "Delayed Stall" para dependências de registradores, o qual ajuda a evitar o esvaziamento do pipeline. • Operand Latch Manipulation (OLM) captura retorno de dados dos operandos em latches, a fim de simular leitura de registradores.

Page 20: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Pipeline

No oitavo estágio do pipeline ocorre:• Resolução de predicados e cancelamento de execução de instruções cujo bit indicador de predicado tenha sido desligado. • Todas as instruções cujo bit indicador de predicado ainda permaneça ligado, têm operandos lidos e executam na unidade funcional correspondente.

Page 21: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Nos nono e décimo estágios do pipeline ocorrem:

• Execução de branches em paralelo, sendo que a especulação e

predição dos branches resultam em clusters de branches.

Pipeline

Page 22: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

• A execução de três branches por clock é realizada de forma otimizada para clusters de branches, permitindo compares/branches no mesmo grupo de emissão.

Pipeline

Page 23: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Tipos de instruções

• 6 tipos diferentes

• Cada um pode ser executado por 1 ou mais unidades de execução

• Cada formato possui diversas codificações diferentes

• OBS: instruções tem um formato fixo!!!

Page 24: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Tipos de instruções

• Lógica de execução

• 2 pacotes são lidos pelo processador por ciclo

• Cada pacote contém 3 instruções

• Instruções não utilizadas são gravadas em um buffer

• Pacote:

• cada instrução tem 41 bits

• 5 bits são utilizados como template, indicando a unidade de execução

Page 25: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Instrução

• Formato: [qp] opcode[.complementos] destino=fonte[,fonte]

• Paralelismo: o Itanium exige que o código assembly esteja separado em unidades independentes

•Especulação

• Exceções e resultados gerados em código que não deveria ser executado são descartadas

Page 26: Processador Intel Itanium. Visão Geral Caracteristicas Arquitetura EPIC - Explicit Parallel Instruction-Set Computer Processador de 64 bits Predication

Performance?...

• Performance ainda ruim...

• falta um compilador bom

• problemas arquiteturais e de implementação

• Muito bom para muitas coisas ao mesmo tempo, mas ‘lento’ em cada uma delas.