rep movsd будет быстро работать при условии выровненных адресов по кеш-линии (64 байта) и достаточно большого кол-ва данных. не помню точно - в optimization guide все указано. самый быстрый способ для больших объемов данных - чтение в xmm регистры и запись non-temporal store (movnta) в память, минуя кеш. это позволяет избавиться от загрузки данных из памяти в кеш и последующего сброса кеша в память при записи. опять же - это работает при условии выровненных на 16 байт адресов.
Vadim Sukhomlinov,
Intel, Enterprise Software Enabling