Техника оптимизации под линуха

       

Размножение переменных


На процессорах с конвейерной архитектурой удаление "лишних" копий порождает ложную зависимость по данным, приводящую к падению производительности и переменные приходится не только "сворачивать", но и размножать!

Вот например:

       a = x + y;

       b

= a + 1;    // b

зависит от a

       a = i - j;

       c

= a – 1;    // с зависит от a… точнее от ее второй "копии"



Содержание раздела