ТЕХНИКА ОПТИМИЗАЦИИ ПРОГРАММ

       

Использование преимуществ синхронного чтения


Использование собственных тактовых генераторов в микросхемах памяти типа SDRAM позволяет осуществлять обмен с памятью без участия процессора – действительно, если процессор точно знает: когда закончится цикл чтения (записи) зачем ему постоянно опрашивать контроллер памяти?

Поэтому, при загрузке 32-байтной строки из оперативной памяти ее первые 64-бита (четверное слово) доступны сразу же в момент их получения! Отсюда следует, что чтение массива по колонкам должно происходить заметно быстрее его чтения по столбцам. Достаточно лишь выровнять массив по адресу, кратному 32 и позаботится, чтобы он полностью умещался в кэш второго уровня. Тогда – пока ожидается поступление первых 64-битов ячейки очередной линейки столбца, три оставшихся 64-битных ячейки предыдущей линейки загружаются в "фоновом" режиме! Благодаря этому скорость обработки массива возрастает практически вдвое. Единственное условие – массив должен целиком вмещаться в кэш второго уровня.



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