Ускорь свой компьютер | КомпьютерПресс

Выбор оперативной памяти в игровую сборку может обернуться кошмаром, если начать разбираться в тонкостях ее работы. Требования современных игровых и рабочих задач диктуют свои условия, поэтому память — теперь чуть ли не самая важная и сложная часть в сборке компьютера.

Оперативная память и ее скорость

Оперативная память состоит из тысяч элементов, связанных между собой в чипах-микросхемах. Их называют банками (bank), которые хранят в себе строчки и столбцы с электрическим зарядом. Сам электрический заряд — это информация (картинки, программы, текст в буфере обмена и много чего еще). Как только системе понадобились данные, банка отдает заряд и ждет команды на заполнение новыми данными. Этим процессом руководит контроллер памяти.

Для аналогии, сравним работу оперативной памяти и работу кафе. Чипы можно представить в виде графинов с томатным соком. Каждый наполнен соком и мякотью спелых помидоров (электрический заряд, информация). В кафе приходит клиент (пользователь компьютера) и заказывает сок (запускает игру). Бармен (контроллер, тот, кто управляет банками) принимает заказ, идет на кухню (запрашивает информацию у банок), наливает сок (забирает игровые файлы) и несет гостю, а затем возвращается и заполняет графин новым соком (новой информацией о том, что запустил пользователь). Так до бесконечности.

Теория разгона

Говоря о разгоне системы, как правило, имеют в виду разгон памяти и процессора (хотя можно разгонять и видеокарты). Под разгоном при этом понимают принудительное увеличение тактовой частоты процессора и памяти (то есть использование частоты выше номинальной), в результате которого компьютер начинает работать более производительно. Например, если вы приобрели компьютер с процессором Intel Pentium 4 1,6 ГГц и оперативной памятью типа DDR266, то путем нехитрых манипуляций его можно заставить работать так же, как, скажем, компьютер с процессором Intel Pentium 4 2,4 ГГц и памятью DDR333. О том, как это сделать, мы и попытаемся рассказать. eye.gif

Однако прежде всего разберемся с тем, что такое тактовая частота процессора и какие еще частоты бывают в компьютере. Частота процессора, выражаемая в гигагерцах (ГГц), определяет промежуток времени, называемый тактом, в течение которого процессор выполняет определенное количество инструкций. Например, если процессор имеет тактовую частоту 1 ГГц, то это означает, что время одного такта составляет 1 нс (одна миллиардная доля секунды). Если другой процессор имеет тактовую частоту 2 ГГц, то для него время одного такта в два раза меньше, то есть 0,5 нс. Следовательно, одно и то же количество инструкций второй процессор может выполнить в два раза быстрее (если принять, что оба процессора за один такт выполняют одинаковое количество инструкций). Из этого нетрудно сделать вывод о том, что производительность второго процессора в два раза больше. Впрочем, это не совсем так. Давайте задумаемся над тем, что именно следует называть производительностью процессора. С точки зрения пользователя, производительность процессора — это время выполнения им определенного набора команд, последовательность которых и образует программу. Чем оно меньше, тем лучше, то есть тем производительнее процессор. Тогда под производительностью можно понимать количество команд, выполняемых за такт, умноженное на тактовую частоту процессора:

Производительность = (Кол-во команд за такт)х(Тактовая частота)

Количество команд, выполняемых за такт, зависит как от выполняемой программы, так и от архитектуры процессора. На уровне процессора одна команда программы преобразуется в несколько машинных инструкций или элементарных команд, причем эффективность такого преобразования зависит и от архитектуры процессора (с каким набором машинных команд способен работать процессор), и от оптимизации кода под конкретную архитектуру процессора. Кроме того, в зависимости от архитектуры процессора элементарные команды могут исполняться параллельно.

Поэтому некорректно было бы сравнивать производительность процессоров, имеющих различную архитектуру, основываясь только на тактовой частоте процессоров. Вот почему при одной и той же тактовой частоте одни приложения более эффективно могут выполняться на процессорах AMD, а другие — на процессорах Intel.

Однако если рассматривать одно и то же семейство процессоров, то есть процессоры с одинаковой архитектурой, то сравнивать их производительность исходя из частоты процессора будет вполне корректно.

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

Кроме тактовой частоты процессора в компьютерах различают также частоту системной шины, частоту FSB и частоту шины памяти.

Частота FSB, точнее, частота шины FSB (Front Side Bus) — это основная частота в компьютере, по которой синхронизируются все остальные частоты. В современных компьютерах на базе процессора Intel Pentium 4 эта частота может принимать значения 100 или 133 МГц. Длительность одного такта на этой шине определяется прямоугольными импульсами напряжения, причем время каждого нового такта определяется по положительному (то есть возрастающему) фронту тактирующего импульса (отсюда и название Front Side).

Системная шина, или шина процессора, связывает процессор с так называемым северным мостом чипсета. Не вникая в подробности, отметим лишь, что по системной шине процессор обменивается данными со всеми остальными устройствами. В компьютерах на базе процессора Intel Pentium 4 системная шина работает на частоте 400 или 533 МГц. Как уже отмечалось, частоты всех шин синхронизируются с частотой FSB. В случае процессора Intel Pentium 4 частота системной шины ровно в четыре раза больше частоты FSB. Поэтому если частота FSB составляет 100 МГц, то частота системной шины 400 МГц, если же частота FSB равна 133 МГц, то частота системной шины соответственно 533 МГц. Кроме частоты системная шина характеризуется также пропускной способностью, то есть максимальным количеством данных, которые можно передать по шине за одну секунду. Процессорная шина является 64-битной, а это значит, что за один такт по шине можно передать 64 бита, или 8 байт. Соответственно для 400-мегагерцевой шины пропускная способность составит 3,2 Гбайт/с (400 МГц×8 байт), а для 533-мегагерцевой шины — 4,2 Гбайт/с.

Частота шины памяти определяет скорость обмена данными между памятью и контроллером памяти (он, кстати, как раз и располагается в северном мосте чипсета). Эта частота зависит от типа памяти и синхронизована с частотой FSB. Для наиболее распространенных типов DDR-памяти передача данных происходит два раза за такт, то есть по положительному и отрицательному фронтам тактирующего импульса, поэтому эффективная частота работы памяти в два раза больше тактирующей частоты. Для памяти DDR200, DDR266, DDR333 и DDR400 эффективная частота, определяющая скорость передачи данных, составляет 200, 266, 333 и 400 МГц соответственно. Частота тактирующих импульсов при этом — 100, 133, 166 и 200 МГц соответственно. Частота шины памяти также синхронизована с частотой FSB, и, например, при частоте FSB, равной 133 МГц, частота памяти связана с частотой FSB, как показано в табл. 1.

Кроме рассмотренных частоты шины памяти и процессорной шины, тактовая частота процессора также синхронизуется с частотой FSB и всегда кратна этой частоте. Коэффициент связи между тактовой частотой процессора и частотой FSB называется коэффициентом умножения. К примеру, если частота FSB составляет 133 МГц, то при коэффициенте умножения 18х процессор Pentium 4 будет работать на частоте 2,4 ГГц. Для процессора Pentium 4 2 ГГц при частоте FSB 100 МГц коэффициент умножения равен уже 20х.

Казалось бы, самый простой способ увеличить тактовую (внутреннюю) частоту процессора  — это поднять коэффициент умножения. К примеру, процессор Pentium 4 1,6 ГГц c номинальным коэффициентом умножения, равным 16х (частота FSB 100 МГц), можно превратить в процессор Pentium 4 2,4 ГГц, установив коэффициент умножения равным 24x. Способ действительно очень простой и надежный, но, увы… Во всех современных процессорах (включая семейство процессоров AMD Athlon) возможность изменения коэффициента умножения заблокирована. И если у процессоров AMD путем хитроумных уловок такое ограничение можно снять (информацию о том, как это сделать, можно найти в Интернете), то в отношении процессоров Pentium 4 это принципиально невозможно.

Однако эти обстоятельства — не повод для уныния. Давайте вспомним, что тактовая частота процессора синхронизована с частотой FSB, поэтому если повышать частоту FSB, то автоматически будет возрастать и тактовая частота процессора, благо производители материнских плат (за исключением плат производства Intel) позволяют изменять частоту FSB. Например, если номинальная тактовая частота процессора Pentium 4 составляет 2,4 ГГц при частоте FSB 133 МГц (коэффициент умножения 18x), то при увеличении частоты FSB до 180 МГц тактовая частота процессора увеличивается до 3,24 ГГц (табл. 2).

Говоря о разгоне системы, следует особо подчеркнуть, что только процессор разогнать нельзя, то есть, разгоняя процессор путем увеличения частоты FSB, мы увеличиваем и частоту памяти, поскольку память синхронизирована с работой процессора (см. табл. 2). Это очень важное обстоятельство, о котором порой забывают. Дело в том, что заранее неизвестно, кто первым «умрет» — память или процессор. Более того, как правило, именно память является «тормозом» разгона, не позволяя переходить на более высокие частоты FSB. Так, если процессор способен выдержать разгон до частоты FSB 180 МГц, а память не может работать на частотах FSB более 150 МГц, то разгон будет ограничен именно частотой FSB в 150 МГц. Поэтому очень многое зависит от качества модуля используемой памяти.

Для того чтобы преодолеть ограниченные возможности по разгону памяти, существует два способа. Прежде всего, за счет настроек BIOS можно изменить отношение между частотой FSB и частотой памяти так, чтобы частота шины памяти была как можно меньше. Учитывая, что при разгоне системы частота FSB и частота шины памяти увеличиваются синхронно и в соответствии с заданным между ними отношением, можно создать условия для разгона в большей степени процессора и в меньшей степени памяти. Допустим, система рассчитана на частоту FSB 133 МГц и на использование памяти DDR266, то есть частота в 266 МГц является номинальной для памяти. Тогда если настройками BIOS установить коэффициент связи между частотой FSB и частотой памяти равным 1,5, то при частоте FSB в 133 МГц частота памяти составит 200 МГц, то есть меньше номинальной. При разгоне частоты FSB до 177 МГц процессор будет разогнан, а память станет работать на своей номинальной частоте 266 МГц. Такой способ искусственного «загрубления» памяти используется довольно часто, но и он имеет свои недостатки. Дело в том, что при «загрублении» памяти может возникнуть ситуация, когда при разгоне процессора максимальная достигнутая частота FSB остановится на такой отметке, при которой память еще не достигнет своего номинального значения.

Предположим, что в вашем распоряжении имеется процессор Intel Pentium 4 2,4 B ГГц (коэффициент умножения 18х), имеющий номинальную частоту FSB в 133 МГц и память DDR266. Установив отношение между частотой памяти и частотой FSB равным 1,5, можно, к примеру, разогнать частоту FSB до 160 МГц. В этом случае тактовая частота процессора составит 160 МГц×18 = 2,88 ГГц (что, в общем, не так уж плохо), но вот память при этом будет работать на частоте 160 МГц×1,5 = 240 МГц, то есть меньше того значения, на которое рассчитана. Остается выяснить, что же лучше: поднять тактовую частоту процессора и уменьшить частоту памяти или, в ущерб высоким тактовым частотам, попытаться разогнать одновременно процессор и память.

Описанный выше пример мы привели не случайно. Дело в том, что производительность всей системы определяется не только частотой процессора, но и частотой памяти. Реальный разгон — это поиск золотой середины, когда путем экспериментов приходится определять условия, при которых достигается максимальный рост производительности всей системы в целом.

Другой популярный способ заключается в том, чтобы использовать более быстродействующую память, чем указано в спецификации на материнскую плату. Например, для плат, поддерживающих память DDR266/200, можно использовать память DDR333 или даже DDR400. Сочетая этот способ с первым, можно достичь высоких значений по разгону FSB, не упираясь при этом в возможности памяти.

Говоря о памяти, мы до сих пор рассматривали только ее частоту. Однако DDR-память имеет и другие важные характеристики, влияющие на ее производительность. Это так называемые тайминги памяти, изменением которых во многих случаях можно добиться выигрыша в производительности; подробнее об этом можно прочитать в статье «Память на любой вкус», опубликованной в этом номере журнала.

Тайминги — качество

Работа памяти, вопреки стереотипу, измеряется не только герцами. Быстроту памяти принято измерять в наносекундах. Все элементы памяти работают в наносекундах. Чем чаще они разряжаются и заряжаются, тем быстрее пользователь получает информацию. Время, за которое банки должны отрабатывать задачи назвали одним словом — тайминг (timing — расчет времени, сроки). Чем меньше тактов (секунд) в тайминге, тем быстрее работают банки.

Такты. Если нам необходимо забраться на вершину по лестнице со 100 ступеньками, мы совершим 100 шагов. Если нам нужно забраться на вершину быстрее, можно идти через ступеньку. Это уже в два раза быстрее. А можно через две ступеньки. Это будет в три раза быстрее. Для каждого человека есть свой предел скорости. Как и для чипов — какие-то позволяют снизить тайминги, какие-то нет.

Частота — количество

Теперь, что касается частоты памяти. В работе ОЗУ частота влияет не на время, а на количество информации, которую контроллер может утащить за один подход. Например, в кафе снова приходит клиент и требует томатный сок, а еще виски со льдом и молочный коктейль. Бармен может принести сначала один напиток, потом второй, третий. Клиент ждать не хочет. Тогда бармену придется нести все сразу за один подход. Если у него нет проблем с координацией, он поставит все три напитка на поднос и выполнит требование капризного клиента.

Аналогично работает частота памяти: увеличивает ширину канала для данных и позволяет принимать или отдавать больший объем информации за один подход.

Тайминги плюс частота — скорость

Соответственно, частота и тайминги связаны между собой и задают общую скорость работы оперативной памяти. Чтобы не путаться в сложных формулах, представим работу тандема частота/тайминги в виде графического примера:

Разберем схему. На торговом центре есть два отдела с техникой. Один продает видеокарты, другой — игровые приставки. Дефицит игровой техники довел клиентов до сумасшествия, и они готовы купить видеокарту или приставку, только чтобы поиграть в новый Assassin’s Creed. Условия торговли такие: зона ожидания в отделе первого продавца позволяет обслуживать только одного клиента за раз, а второй может разместить сразу двух. Но у первого склад с видеокартами находится в два раза ближе, чем у второго с приставками. Поэтому он приносит товар быстрее, чем второй. Однако, второй продавец будет обслуживать сразу двух клиентов, хотя ему и придется ходить за товаром в два раза дальше. В таком случае, скорость работы обоих будет одинакова. А теперь представим, что склад с приставками находится на том же расстоянии, что и у первого с видеокартами. Теперь продавец консолей начнет работать в два раза быстрее первого и заберет себе большую часть прибыли. И, чем ближе склад и больше клиентов в отделе, тем быстрее он зарабатывает деньги.

Так, мы понимаем, как взаимодействует частота с таймингами в скорости работы памяти.

  • Очередь — это пользователь, который запрашивает информацию из оперативной памяти.
  • Продавец — это контроллер памяти (который доставляет информацию).
  • Техника со склада — это информация для пользователя. Прилавок — это пропускная способность памяти в герцах (частота).
  • Расстояние до склада — тайминги (время, за которое контроллер найдет информацию по запросу).

Соответственно, чем меньше метров проходит контроллер до банок с электрическим зарядом, тем быстрее пользователь получает информацию. Если частота памяти позволяет доставить больше информации при том же расстоянии, то скорость памяти возрастает. Если частота памяти тянет за собой увеличение расстояния до банок (высокие тайминги), то общая скорость работы памяти упадет.

Сравнить скорость разных модулей ОЗУ в наносекундах можно с помощью формулы: тайминг*2000/частоту памяти. Так, ОЗУ с частотой 3600 и таймингами CL14 будет работать со скоростью 14*2000/3600 = 7,8 нс. А 4000 на CL16 покажет ровно 8 нс. Выходит, что оба варианта примерно одинаковы по скорости, но второй предпочтительнее из-за большей пропускной способности. В то же время, если взять память с частотой 4000 при CL14, то это будет уже 7 нс. При этом пропускная способность станет еще выше, а время доставки информации снизится на 1 нс.

Строение чипа памяти и тайминги

В теории, оперативная память имеет скорость в наносекундах и мегабайтах в секунду. Однако, на практике существует не один десяток таймингов, и каждый задает время на определенную работу в микросхеме.

Они делятся на первичные, вторичные и третичные. В основном, для маркетинговых целей используется группа первичных таймингов. Их можно встретить в характеристиках модулей. Например:

Вот, как выглядят тайминги на самом деле:

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

Смотрите также

  • Множитель процессора

Схематика чипов

Микросхемы памяти можно представить в виде поля для игры в морской бой или так:

В самом упрощенном виде иерархия чипа это: Rank — Bank — Row — Column. В ранках (рангах) хранятся банки. Банки состоят из строк (row) и столбцов (column). Чтобы найти информацию, контроллеру необходимо иметь координаты точки на пересечении строк и столбцов. По запросу, он активирует нужные строки и находит информацию. Скорость такой работы зависит от таймингов.

Первичные

CAS Latency (tCL) — главный тайминг в работе памяти. Указывает время между командой на чтение/запись информации и началом ее выполнения.

RAS to CAS Delay (tRCD) — время активации строки.

Row Precharge Time (tRP) — прежде чем перейти к следующей строке в этом же банке, предыдущую необходимо зарядить и закрыть. Тайминг обозначает время, за которое контроллер должен это сделать.

Row Active Time (tRAS) — минимальное время, которое дается контроллеру для работы со строкой (время, в течение которого она может быть открыта для чтения или записи), после чего она закроется.

Command Rate (CR) — время до активации новой строки.

Рекомендации

1. Что такое делитель памяти
2. Важные концепции разгона

Третичные

Эти тайминги отвечают за пропускную способность памяти в МБ/с, как это делает частота в герцах.

Эти отвечают за скорость чтения:

  • tRDRD_sg
  • tRDRD_dg
  • tRDRD_dr — используется на модулях с двусторонней компоновкой чипов
  • tRDRD_dd — для систем, где все 4 разъема заняты модулями ОЗУ

Эти отвечают за скорость копирования в памяти (tWTR):

  • tRDWR_sg
  • tRDWR_dg
  • tRDWR_dr — используется на модулях с двусторонней компоновкой чипов
  • tRDWR_dd — для систем, где все 4 разъема заняты модулями ОЗУ

Скорость чтения после записи (tRTP):

  • tWRRD_sg
  • tWRRD_dg
  • tWRRD_dr — используется на модулях с двусторонней компоновкой чипов
  • tWRRD_dd — для систем, где все 4 разъема заняты модулями ОЗУ

А эти влияют на скорость записи:

  • tWRWR_sg
  • tWRWR_dg
  • tWRWR_dr — используется на модулях с двусторонней компоновкой чипов
  • tWRWR_dd — для систем, где все 4 разъема заняты модулями ОЗУ

Скорость памяти во времени

Итак, мы разобрались, что задача хорошей подсистемы памяти не только в хранении и копировании данных, но и в быстрой доставке этих данных процессору (пользователю). Будь у компьютера хоть тысяча гигабайт оперативной памяти, но с очень высокими таймингами и низкой частотой работы, по скорости получится уровень неплохого SSD-накопителя. Но это в теории. На самом деле, любая доступная память на рынке как минимум соответствует требованиям JEDEC. А это организация, которая знает, как должна работать память, и делает это стандартом для всех. Аналогично ГОСТу для колбасы или сгущенки.

Стандарты JEDEC демократичны и современные игровые системы редко работают на таких низких настройках. Производители оставляют запас прочности для чипов памяти, чтобы компании, которые выпускают готовые планки оперативной памяти могли немного «раздушить» железо с помощью разгона. Так, появились заводские профили разгона XMP для Intel и DOHCP для AMD. Это «официальный» разгон, который даже покрывается гарантией производителя.

Профили разгона включают в себя информацию о максимальной частоте и минимальных для нее таймингах. Так, в характеристиках часто пишут именно возможности работы памяти в XMP режимах. Например, частоте 3600 МГц и CL16. Чаще всего указывают самый первый тайминг как главный. 

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

Так работает оперативная память с момента ее создания и до нашего времени.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: