⾕

Computação  |  

A solução envolve duplicação de recursos ou organização cuidadosa do pipeline.

Paralelismo em Nível de Instrução (ILP)

O Paralelismo em Nível de Instrução (Instruction-Level Parallelism – ILP) representa a capacidade de executar múltiplas instruções simultaneamente dentro de um único processador.

O pipeline é uma forma básica de ILP, mas arquiteturas mais avançadas exploram paralelismo adicional por meio de execução múltipla (superscalar) e execução dinâmica fora de ordem.

Arquiteturas Superscalares

Em um processador superscalar, existem múltiplas unidades funcionais (ALUs, unidades de ponto flutuante, etc.), permitindo que mais de uma instrução seja emitida e executada por ciclo de clock.

O hardware detecta dependências entre instruções e decide dinamicamente quais podem ser executadas em paralelo.

Dependências e Limites de ILP

O potencial de ILP é limitado pelas dependências de dados, instruções de controle e pela complexidade de detecção de paralelismo no hardware.

Por isso, técnicas de reordenação dinâmica e previsão especulativa foram desenvolvidas para ampliar o aproveitamento do ILP.

Execução Fora de Ordem e Especulação

Para contornar as limitações do pipeline estritamente sequencial, os processadores modernos implementam a execução fora de ordem (Out-of-Order Execution).

Nesse modelo, as instruções são buscadas e decodificadas na ordem do programa, mas podem ser executadas assim que seus operandos estiverem disponíveis, mesmo que instruções anteriores ainda não tenham sido concluídas.

Back Next