1 / 18

Técnicas de Predição de Desvios

Técnicas de Predição de Desvios. MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240. Motivaçã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

clea
Download Presentation

Técnicas de Predição de Desvios

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Técnicas de Predição de Desvios MO401 -Arquitetura de Computadores Jaudete Daltio RA 049240 Universidade Estadual de Campinas – Instituto de Computação

  2. Motivaçã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 Técnicas de Predição de Desvio

  3. Tipos 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 Técnicas de Predição de Desvio

  4. Predição em Software • 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 Técnicas de Predição de Desvio

  5. Predição em Software Técnicas de Predição de Desvio

  6. Predição em Software • 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 Técnicas de Predição de Desvio

  7. Predição em Software • InLine • 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 Técnicas de Predição de Desvio

  8. Predição em Hardware • 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 Técnicas de Predição de Desvio

  9. Prediçã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 Técnicas de Predição de Desvio

  10. Prediçã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 Técnicas de Predição de Desvio

  11. Predição Dinâmica Técnicas de Predição de Desvio

  12. Prediçã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 Técnicas de Predição de Desvio

  13. Prediçã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 Técnicas de Predição de Desvio

  14. Prediçã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 Técnicas de Predição de Desvio

  15. Predição Dinâmica Técnicas de Predição de Desvio

  16. Prediçã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% Técnicas de Predição de Desvio

  17. Predição Dinâmica Técnicas de Predição de Desvio

  18. Conclusõ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 Técnicas de Predição de Desvio

More Related