Zusammenfassung der Ressource
Capitulo 14.2
- Política de emissão de instruções
- Conforme mencionado, o paralelismo de máquina não é simplesmente uma questão de ter múltiplas instâncias de cada estágio do pipeline. O processador também deve ser capaz de identifi car o
paralelismo em nível de máquina e orquestrar a busca, a decodifi cação e a execução de instruções em paralelo. Johnson (1991k) usa o termo emissão da instrução (instruction issue) para se referir ao
processo de iniciação da execução da instrução em unidades funcionais do processador e o termo política de emissão de instruções para se referir ao protocolo usado para a emissão instruções.Em geral,
podemos dizer que a emissão da instrução ocorre quando a instrução é movida do estágio de decodifi cação para o primeiro estágio de execução do pipeline.
- Basicamente, o processador está tentando olhar para frente do ponto atual de execução para localizar instruções que podem ser trazidas no pipeline e executadas. Três tipos de ordenação são
importantes nesta consideração:
- A ordem em que as instruções atualizam o conteúdo dos registradores e as posições de memória.
- A ordem em que as instruções são executadas.
- A ordem em que as instruções são lidas.
- Renomeação de registradores
- Quando a emissão de instruções fora -de -ordem e/ou conclusão de instruções fora -de -ordem são permitidas, nós vimos que aumenta a possibilidade de dependências WAW e WAR. Estas
dependências diferem das dependências de dados RAW e dos confl itos de recursos que refl etem o fl uxo de dados através de um programa e sequência da execução
- Quando as instruções são emitidas e completadas na sequência, é possível especifi car o conteúdo de cada registrador em cada ponto da execução.
- 14.2 CONTINUAÇÃO:
- Quanto mais sofisticado o processador, menos ele é ligado por um relacionamento estrito entre essas ordens
- EMISSÃO EM-ORDEM COM CONCLUSÃO EM -ORDEM A política mais simples de emissão de instruções é a ordem exata que seria alcançada pela execução sequencial (emissão em
-ordem) e pela escrita de resultados na mesma ordem (conclusão em -ordem).
- Jouppi e Wall (1989l) fazem uma distinção importante entre dois conceitos relacionados: paralelismo em nível de instruções e paralelismo de máquina.
- O paralelismo em nível de instruções existe quando as instruções de uma sequência são independentes e, assim, podem
ser executadas em paralelo por sobreposição. Como um exemplo do conceito de paralelismo.
- O paralelismo em nível de instruções e o de máquina são fatores importantes para melhorar o desempenho. Um
programa pode não ter paralelismo em nível de instruções sufi ciente para obter a vantagem total do paralelismo de
máquina. O uso de uma arquitetura com conjunto de instruções de tamanho fi xo, como em RISC, melhora o
paralelismo em nível de instruções. Por outro lado, o paralelismo de máquina limitado irá limitar o desempenho,
não se importando com qual a natureza do programa.
- O paralelismo de máquina é uma medida da habilidade do processador para obter vantagem do paralelismo em nível de instruções. Ele é determinado pelo número de instruções que podem
ser obtidas e executadas ao mesmo tempo (o número de pipelines paralelos) e pela velocidade e sofi sticação dos mecanismos que o processador usa para localizar instruções independentes