Execução Especulativa Conceitos, Princípios e Técnicas Patrícia Pilisson Côgo RA 041481 Campinas, Novembro/2005
Agenda Introdução Técnicas de Execução Especulativa Especulação de Controle Branch Prediction Eager Execution Disjoint Eager Execution Especulação de Dados Endereço Valor Tratamento de Exceções
Introdução Processadores com Pipeline Paralelismo a Nível de Instrução Dependências: Controle Dados
Introdução Execução Especulativa Localidade Valor Tempo Espaço
Técnicas de Execução Especulativa
Especulação de Controle Branch Prediction Direção Endereço Alvo Eager Execution Disjoint Eager Execution
Especulação de Controle Fig.1 :Comparação entre técnicas de esp. de controle, extraída do trabalho de Augustus K. Uht e Vijay Sindagi
Especulação de Dados Predição de Endereços Explora localidade temporal MAP: Memory Address Prediction Fig.2 : Representação da Memory History Table, adaptada do trabalho de Gonzalez e Gonzalez
Especulação de Dados Predição de Valor Explora localidade de valor Fig. 3: Localidade de Valor para Instruções de Load, extraída do trabalho de Lipasti e Shen
Especulação de Dados Predição de Valor Fig. 4: Localidade de valor para escrita em registradores, extraída do trabalho de Lipasti e Shen
Especulação de Dados Predição de Valor Implementação em dois níveis: Fig.5: Unidade de Predição, extraída do trabalho de Lipasti e Shen
Especulação de Dados Predição de Valor Fig. 6: Unidade de Verificação e Correção extraída do trabalho de Lipasti e Shen
Tratamento de Exceções Garantir Funcionalidade Métodos Modelo de especulação restritivo Modelo geral de especulação Write-back Supression
Dúvidas??