![Page 1: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/1.jpg)
Universidade Estadual de Campinas – Instituto de Computação
Técnicas de Predição Técnicas de Predição de Desviosde Desvios
MO401 -Arquitetura de Computadores
Jaudete DaltioRA 049240
![Page 2: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/2.jpg)
Técnicas de Predição de Desvio
MotivaçãoMotivação Exploração de paralelismo aumenta
o desempenho dos processadores Retardo causado pelas instruções
de desvio: “Conflitos de Controle” Técnicas que reduzam as
penalidades Perda de desempenho caso a
previsão seja incorreta
![Page 3: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/3.jpg)
Técnicas de Predição de Desvio
Tipos de PrevisãoTipos de Previsão Em Software
Durante a compilação do programa de aplicação
Em Hardware Durante a execução do programa
de aplicação Estáticas e Dinâmicas
![Page 4: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/4.jpg)
Técnicas de Predição de Desvio
Predição em Predição em SoftwareSoftware Delayed Branch
-instrução de desvio
-sucessor seqüencial-destino de desvio
Tornar a instrução do sucessor seqüencial válida e útil – limitação de possibilidades
Implementada em RISC, IBM 801, RISC I de Berkeley, i860 da Intel, MIPSStanford
![Page 5: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/5.jpg)
Técnicas de Predição de Desvio
Predição em Predição em SoftwareSoftware
![Page 6: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/6.jpg)
Técnicas de Predição de Desvio
Predição em Predição em SoftwareSoftware Branch Folding
Cada instrução inclui o endereço de sua sucessora
Emprega-se uma técnica estática para selecionar o destino
O endereço alternativo é armazenado na cache para o caso da previsão incorreta
Implementada em CRISP da AT&T, PowerPC, IBM RISC System 6000
![Page 7: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/7.jpg)
Técnicas de Predição de Desvio
Predição em Predição em SoftwareSoftware In Line
Substitui chamadas de sub-rotinas pelo código objeto
Vantagem: elimina passagem de parâmetros e chamadas e retornos de procedimentos.
Desvantagem: aumento do código objeto gerado pelo compilador
![Page 8: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/8.jpg)
Técnicas de Predição de Desvio
Predição em Predição em HardwareHardware Estáticas
Baseiam-se em definições feitas na concepção de um novo processador
Dinâmicas Baseiam-se em informações
coletadas em tempo de execução
![Page 9: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/9.jpg)
Técnicas de Predição de Desvio
Predição EstáticaPredição Estática Sempre tomado
Implementada pelo IBM 360/91 Nunca tomado
Implementada pelo i960CA, MC68020 e o VAX 11/780
Média de previsões incorretas igual à freqüência de desvios seguidos (ou não)
Código do comando de desvio
![Page 10: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/10.jpg)
Técnicas de Predição de Desvio
Predição DinâmicaPredição Dinâmica Histórico do Desvio
Buffer ou BHT (Branch History Table)
Verificar o comportamento do desvio nas execuções mais recentes
Considerar o número de entradas da BHT e tamanho do histórico armazenado
![Page 11: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/11.jpg)
Técnicas de Predição de Desvio
Predição DinâmicaPredição Dinâmica
![Page 12: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/12.jpg)
Técnicas de Predição de Desvio
Predição DinâmicaPredição Dinâmica Contadores Saturados
Associa aos desvios um contador de controle
Incrementado ao acerto e decrementado caso contrário
Restrição ao tamanho dos contadores•Neutralizar o efeito de outra instrução
mapeada na mesma entrada
![Page 13: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/13.jpg)
Técnicas de Predição de Desvio
Predição DinâmicaPredição Dinâmica Tabela de Alvos dos Desvios
BTB (Branch Target Buffer) contém os alvos das instruções de desvio
mais eficiente que o BHT: mais informações sobre a instrução alvo
A antecipação reduz a introdução de instruções indevidamente no pipeline
Implementada pelo microprocessador Pentium, março/93
![Page 14: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/14.jpg)
Técnicas de Predição de Desvio
Predição DinâmicaPredição Dinâmica Dois Níveis de História
1º nível: BHR (Branch History Register)•Informações globais originadas por
diferentes instruções de desvio 2º nível: PHT (Patttern History Table)
•Associados ao comportamento de uma instrução de desvio específica
Implementada no Pentium Pro
![Page 15: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/15.jpg)
Técnicas de Predição de Desvio
Predição DinâmicaPredição Dinâmica
![Page 16: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/16.jpg)
Técnicas de Predição de Desvio
Predição DinâmicaPredição Dinâmica Híbridos
Combina diferentes vantagens de outras técnicas, operadas em paralelo
A técnica com maior probabilidade de acerto fornece o resultado
Podendo atingir patamares superiores a 99%
![Page 17: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/17.jpg)
Técnicas de Predição de Desvio
Predição DinâmicaPredição Dinâmica
![Page 18: Universidade Estadual de Campinas – Instituto de Computação Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240](https://reader035.vdocuments.com.br/reader035/viewer/2022062303/552fc10b497959413d8c11ab/html5/thumbnails/18.jpg)
Técnicas de Predição de Desvio
ConclusõesConclusões Desempenho das técnicas relaciona-
se diretamente com a aplicação A eficácia não depende apenas da
previsão - custo da previsão incorreta
Melhores desempenhos Combinações de técnicas de Hardware
e Software Preditores híbridos