Если вы выберите значение 0 Cycle(0 циклов), то контроллер памяти будет мгновенно обновлять открытые страницы при наличии цикла простоя.
Если вы выберите значение Disabled,то контроллер памяти не будет обновлять открытые страницы. Открытые страницы остаются активным до тех пор, пока не наступит время их обновления.
Большинство производителей по умолчанию используют значение 8 Cycles(8 циклов), что позволяет контроллеру памяти обновлять открытые страницы после восьми циклов простоя. Благодаря этому запрос команды чтения или записи, обращенный к данным страницам, может быть выполнен мгновенно.
Тем не менее, возможности этой функции ограничены настройкой цикла обновления в BIOS. Это значит, что при необходимости открытая страница будет обновлена независимо от того, достигло ли количество пустых циклов отметки, заданной опцией SDRAM Idle Limit, или нет. Поэтому функция SDRAM Idle Limitможет применяться только для того, чтобы вынудить обновление банка SDRAM до завершения цикла обновления, но не для задержки данного цикла.
Уменьшение количества циклов до 0 Cyclesзаставляет контроллер памяти закрывать все открытые страницы после того, как запросы перестают отправляться на контроллер памяти. То есть открытые страницы обновляются сразу после прекращения запросов. Теоретически, это может привести к повышению эффективности памяти, так как обновление открытых страниц маскируется во время пустых циклов. Но все запросы, поступающие после этого, должны ждать обновления страницы.
Так как обновления происходят нечасто (примерно один раз в 64 миллисекунды), их воздействие на производительность памяти можно считать минимальным. Преимущество маскировки обновлений во время пустых циклов невелико, особенно если учесть то, что современные системы памяти используют для маскировки обновлений обмен данными между банками.
При установке 0 Cyclesзапросы данных тоже могут задерживаться, так как один пустой цикл заставляет контроллер памяти закрыть все открытые страницы! На обычных компьютерах операции чтения из памяти пользуются принципом пространственной локализации (spatial locality), который указывает на то, что при считывании одного бита данных велика вероятность считывания и следующего бита. Поэтому закрытие открытых страниц с помощью функции SDRAM Idle Limitведет к снижению производительности.
С другой стороны, ограничение в 0 или 8 пустых циклов гарантирует более частое обновление содержимого памяти, что позволяет избежать потери данных, вызванной неполным обновлением ячеек памяти. Если вы заставите контроллер памяти чаще обновлять открытые страницы, это позволит удерживать страницы открытыми достаточно долго, чтобы добиться завершения операции.
При работе на обычном компьютере рекомендуем выбирать опцию Disabled,чтобы максимально задерживать обновление страниц. Это позволяет уменьшить количество обновлений и увеличивает пропускную способность памяти.
Для приложений, которые выполняют множество произвольных запросов (например, для серверов), рекомендуем выбирать опцию 0 Cycle,так как последующие запросы, скорее всего, будут выполняться другими страницами. Если открытые страницы будут закрываться для обновления, это подготовит их для следующего запроса. Увеличенное количество обновлений вполне компенсируется повышенной интеграцией данных.
Также вы можете увеличить значение функции Refresh Intervalили Refresh Mode,чтобы повысить пропускную способность и поддерживать интеграцию данных в ячейках памяти. Так как очень большие интервалы обновления (например, 64или 128m sec)могут привести к потере данных в ячейках, настройка параметра SDRAM Idle Limitна 0 Cycleили 8 Cyclesпозволяет ячейкам памяти чаще обновляться. Причем высока вероятность того, что подобные обновления будут происходить во время пустых циклов. В результате, как кажется, нам удается решить сразу две задачи, – увеличить время активации банка при высокой загрузке контроллера памяти и сделать обновления более частыми при простое контроллера памяти.
Однако в действительности этот способ не является предпочтительным, так как он зависит от возможности памяти к созданию пустых циклов для активации обновлений. Если ваша системная память подвергается большой нагрузке, у нее может не быть пустого цикла, который позволил бы активировать обновление. Это способно привести к потере данных в ячейках памяти.
Читать дальше
Конец ознакомительного отрывка
Купить книгу