На скорость записи и извлечения данных будет влиять производительность вашего локального механизма хранения. На современных процессорах есть регистры, 2 уровня кеша (L1 и L2), DRAM и иногда диск (через своп). Если шаблоны и размер доступа эффективно используют кэш L1 (то есть небольшой и локально согласованный), то, как только данные находятся в L1, их нужно только загрузить в регистры для доступа к ЦП. Если требуемые данные находятся в кеше L2, они должны быть сначала загружены в L1, а затем загружены в регистр для обработки. То же самое относится к DRAM к L2 к L1 к регистрам. Регистры быстрее, чем L1, L1 быстрее, чем L2, а DRAM просто медленный.
Херб Саттер выступил с докладом, посвященным этим вопросам, несколько лет назад на NWCPP:
http://video.google.com/videoplay?docid=-4714369049736584770#
С точки зрения программирования, если ваши данные могут помещаться в строке кэша и требуют многократного доступа или записи, у вас будет более высокая производительность из-за меньшего количества ошибок кэша (что приводит к необходимости извлечения из более высокого уровня кэша). ). Это верно для всех уровней «кэша», будь то регистры, L1, L2, DRAM, диск или удаленный сервер.