Почему современные компиляторы игнорируют требование разместить переменную в регистре?

6 года назад от он

1 ответ



0 голосов
они и раньше не обязаны были это делать. а сейчас оптимизация лучше программиста догадается, что куда поместить.

тем боле, что раньше было два уровня - либо ОЗУ, либо регистр, а сейчас еще и кэши у процессора есть, сейчас важне, чтобы переменные оказались в кэше к нужному моменту, чем в регистре.

чтобы это понять, достаточно посчитать сумму большой квадратной матрицы матрицы циклами по строкам/столбцам и наоборот, по строкам/строкам
6 года назад от Ленар Рамазанов

Связанные вопросы

2 ответов