Skip to content
Latchkey

O que é loop unrolling?

O loop unrolling é uma otimização que duplica o corpo de um loop para que cada iteração faça o trabalho de várias, reduzindo o número de desvios e atualizações do contador. Com menos instruções de controle do loop e mais operações independentes expostas, o processador pode sobrepor o trabalho de forma mais eficaz. O trade-off é código maior, que pode pressionar o cache de instruções.

Por que isso importa

A sobrecarga do loop pode dominar loops apertados com corpos pequenos, e o unrolling amortiza esse custo em mais trabalho útil. Ele também dá ao escalonador e ao vetorizador mais material para otimizar.

Guias relacionados