Различия

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

Ссылка на это сравнение

articles:overddr [2017/09/05 02:55] (текущий)
Строка 1: Строка 1:
 +====== overDDR ======
 +<​sub>​{{overDDR.odt|Original file}}</​sub>​
 +
 +====== экстремальный разгон DDR-памяти ======
 +
 +крис касперски ака мыщъх, noemail
 +
 +**подсистема памяти – все еще остается одним из самых узких мест ПК и ее разгон может существенно увеличить производительность. но ведь может и не увеличить! память достаточно сложная штука и дремучий лес настроек наугад не пересечешь. производители пошли на встречу пользователям,​ вложив в их руки рычаги управления всеми подсистемами компьютера,​ но как пользоваться ими – не объяснили.**
 +
 +**подавляющее большинство настроек либо вообще не описано в прилагаемой документации,​ либо описано слишком кратно,​ а информация,​ подчерпнутая из Интернета недостоверна и взаимно противоречива.**
 +
 +**статья ориентирована главным образом одно/​двух канальные контролеры ****DDR****-памяти,​ однако,​ во много будет интереса и пользователям умирающей ****SDR****-памяти. ****DDR II**** память в силу своей новизны и незначительных конструктивных отличий от ****DDR**** здесь не рассматривается.**
 +
 +===== введение или гнать или не гнать? =====
 +
 +Вклад быстродействия памяти в общую производительность системы в первую очередь определяется интенсивностью ее использования. Приложения,​ обрабатывающие свои данные локально (в процессорном кэше) и практически никогда не обращающиеся к основной памяти,​ совершенно безразличны к ее разгону. Вот, например,​ архиваторы. Считается,​ что объем потребляемой ими памяти совпадает с размерами пакуемого файла и для оценки "​влиятельности"​ тех или иных настроек,​ достаточно измерять время упаковки. В процессе экспериментов выясняется,​ что подавляющее большинство настроек довольно прохладно относятся к производительности системы,​ отклоняя ее на считанные доли процента,​ практические не выходящие за пределы инструментальной погрешности. Странно,​ не правда ли? Какого черта было делать неработающие рычаги управления?​! В действительности же они работают,​ просто мы измеряем скорость автомобиля не снявшись с нейтрали.
 +
 +Никакой архиватор не обрабатывает весь файл целиком,​ вместо этого он нарезает его на крохотные порции (порядка 16 – 64 КБ) и каждую из них упаковывает индивидуально,​ сосредоточив максимум запросов в пределах кэш-памяти первого и второго уровней. А если емкости кэша окажется недостаточно?​ Тогда процессор задействует основную память и вот тут-то на ее настройках можно сыграть! Правда,​ более радикальной мерой будет переход на процессор с более емкой кэш-памятью,​ тем более что разница в стоимости не так уж и велика.
 +
 +Реально в разгоне памяти нуждаются лишь приложения,​ обрабатывающие порции данных от 256 Кб и выше (программы видео монтажа,​ графические редакторы,​ динамичные игры и т.д.). Чем выше степень загрузки памяти,​ тем больший выигрыш дает ее разгон. Волна модинга вынесла на рынок множество оригинальных моделей с индикаторами загрузки по бортам (см. рис.1). Аналогичные индикаторы появились и в некоторых материнских платах. Эти перемигивающиеся огоньки не только красивы,​ но еще и полезны,​ поскольку,​ позволяют определить целесообразность разгона в данном конкретном случае (см. рис.2). ​
 +
 +{{overddr_Image_0.jpg}}
 +
 +Рисунок 1 индикатор загрузки памяти
 +
 +{{overddr_Image_1.jpg}}{{overddr_Image_2.jpg}}
 +
 +Рисунок 2 пример низкой (слева) и высокой (справа) загрузки паями. чем выше загрузка,​ тем больший выигрыш дает разгон
 +
 +А если таких индикаторов у вас нет? Тогда интенсивность использования памяти можно определить косвенно – по ее нагреву. Чем выше нагрев,​ тем больше загрузка. Или же воспользуйтесь утилитой **CPUMon** от Марка Руссиновича,​ бесплатную версию которой можно скачать с сервера http://​www.sysinternals.com. Пользоваться ей очень просто. В меню "//​Class//"​ выбираете "//​Bus//"​ (шина), а в окне "//​Counter//"​ – **BUS****_****TRAN****_****MEM** (кол-во транзакций памяти). Теперь запускаете тестовое приложение (например,​ игрушку или процедуру редрединга) и нажимаете "//​Start//",​ а затем, спустя некоторое временя (в течении которого утилита будет накапливать статистические данные),​ говорите "//​Stop//"​ и в появившемся диалогом окне смотрите на строку BUS_TRAN_MEM (см. рис. 3). Чем больше происходит обращений в единицу времени,​ тем целесообразнее разгон.
 +
 +{{overddr_Image_3.png}}
 +
 +Рисунок 3 утилита CPUMon за счетом количества транзакций к памяти
 +
 +===== подготовка к разгону =====
 +
 +Для разгона лучше всего подходят материнские платы с большим количеством тонких настроек на борту (как-то:​ Gigabyte GA-K8VNXP или ASUS K8V Deluxe,). Конкретный перечень определяется возможностями чипсета с одной стороны и гибкостью прошивки BIOS с другой. Существует множество хакерских прошивок и утилит,​ открывающих доступ ко всем настройкам контроллера памяти,​ которые только поддерживает чипсет. Однако,​ прибегать к их помощи крайне нежелательно,​ т. к. зачастую они приводят к серьезным проблемам (и аппаратным поломкам в том числе!). Лучше изначально приобретайте плату с богатыми настройками,​ список которых можно найти в документации или просто войти в BIOS Setup и посмотреть.
 +
 +Разгон памяти неизбежно затрагивает и серверный мост чипсета,​ поэтому позаботьтесь о его охлаждении,​ усилив радиатор или присобачив к нему хотя бы крошечный кулер. Тоже самое относится к модулям памяти. Находясь в непосредственной близости от процессора они очень сильно греются (особенно если попадают под поток горячего воздуха с вентилятора). Некоторые производители упаковывают память в мини-катридж с металлической пластинкой на боку (см. рис. 4),​ однако,​ большинство модулей продается в голом виде и изготовлением радиатора приходится заниматься самостоятельно.
 +
 +Некоторые чипсеты (например,​ Intel 857P) тщательно контролируют температуру памяти,​ автоматически уменьшая интенсивность запросов при ее перегреве. С одной стороны это хорошо,​ т. к. усиливает стабильность системы,​ но с другой затрудняет ее экстремальный разгон. Либо отключите термодатчик,​ либо запретите мониторинг температуры памяти в BIOS, либо скорректируйте пороговые значения,​ либо… придумайте что-нибудь свое.
 +
 +Не все модули памяти разгоняются одинаково. Уважающие себя производители (Kingston Technology, IBM, Samsung) обеспечивают солидный запас прочности и уверенно работают даже на ускоренных таймингах и повышенных тактовых частотах. Дерьмовые производители наоборот,​ еда выдерживают даже заявленные характеристики и их приходится слегка тормозить.
 +
 +Обратите внимание и на количество слотов. Правильные платы содержат всего два слота памяти (на двухканальных чипсетах – четыре),​ что обусловлено жесткими ограничениями на предельно допустимую длину сигнальных трасс. Три и более слотов во-первых,​ отличаются различной длиной проводников,​ а следовательно не одновременностью передачи информации,​ в результате чего контроллер вынужден увеличивать время ожидания,​ попутно с этим уменьшая тактовую частоту,​ поскольку большое количество проводников на высоких тактовых частотах резко усиливает интенсивность помех, теряя полезный сигнал на их фоне.
 +
 +Два модуля памяти за счет чередования банков обеспечивают большую производительность чем один даже при использовании одноканального контроллера памяти. С многоканальными контроллерами лучше всего уживаются четыре модуля,​ обеспечивающих максимум одновременно открываемых банков памяти при минимальных издержках на накладные расходы. Платы с пятью или шестью слотами лучше сразу же отправить на свалку. Для разгона они не пригодны.
 +
 +Для достижения стабильной работы разогнанной памяти рекомендуется чуть-чуть увеличить питающее напряжение (обычно за это отвечает линяя 3.3V) и поменять режим управления (**Drive**** ****Control**) с **Normal** на **Strong**, однако,​ делать это можно только при надлежащем охлаждении,​ в противном случае память перегреется и быстро выйдет из строя.
 +
 +{{overddr_Image_4.jpg}}
 +
 +Рисунок 4 память с радиатором
 +
 +===== тактика и стратегия разгона =====
 +
 +Скоростные показатели подсистемы памяти описываются двумя фундаментальными характеристиками:​ //​пропускной способностью//​ и //​латентностью//​. Пропускная способность определяет предельное количество данных,​ передаваемых за единицу времени,​ а латентность – промежуток между посылкой запроса и получением ответа.
 +
 +Стратегия разгона определяется типом преобладающих запросов к памяти. Можно выделить две основных категории обработки ячеек: последовательную и хаотичную. При последовательной обработке независимых данных,​ ячейки памяти передаются по шине сплошным потоком и реальная производительность определяется одной лишь пропускной способностью. Латентность полностью маскируется и становится несущественной. Напротив,​ при хаотичном чтении/​записи пропускная способность вырождается и быстродействие системы зависит главным образом от того, как быстро микросхема памяти может переключаться между банками (а делает это она очччень медленно,​ но мы ее ускорим).
 +
 +Латентность и пропускная способность предъявляют взаимоисключающее требования к настройкам подсистемы памяти. Добиться идеальной конфигурации невозможно и каждое приложение требует индивидуального подхода. Ведь на то они и настройки,​ чтобы их **настраивать**. Подождите! Уж не хотите ли вы сказать,​ что при переключении с Word'​а на PhotoShop мы должны входить в BIOSSetup и что-то там подкручивать?​! Да, должны! То есть нет… В общем, если производительность компьютера вас устраивает,​ ничего крутить не надо. В противном случае,​ либо приобретайте более мощную машину,​ либо настраивайте систему на наиболее критичное к скорости приложение. Если же таких приложений у вас несколько и все они настраиваются неодинаково… Ищите компромисс или постоянно перенастраивайте свой компьютер. Увы! Чудес не бывает,​ как и легких путей тоже.
 +
 +Выяснить какой тип запросов превалирует в том или ином приложении невозможно (дизассемблирование и анализ исходных текстов не предлагать),​ поэтому,​ настаивать память приходится на ощупь, действуя экспериментально.
 +
 +===== частота решает все =====
 +
 +Главный "​погодообразующий"​ фактор быстродействия системы это, конечно же, **тактовая частота**. При всяком открытии DRAM-страницы,​ микросхема копирует ее в специальный буфер, использующийся в операциях обмена вплоть до закрытия страницы. Чем выше частота,​ тем быстрее обмен, а разгоняемость у буферных элементов просто отличая. Некоторые экземпляры допускают двух и даже трех (!) кратное повышение частоты над номиналом (поскольку в DDR памяти данные передаются по обоим фронтам тактового импульса,​ физически часта изменяется не более чем в полтора раза, так что ничего удивительно в таком разгоне нет).
 +
 +Ядро памяти,​ представляющее собой матрицу конденсаторов,​ намного более инертно и разгоняется из рук вон плохо, катастрофически уменьшая надежность сохранности информации даже при небольшом увеличении частоты. Чувствительнее всего матрица относится к продолжительности перезарядки (см. tRP) и времени открытия DRMA-страницы (см. tRCD), которые задаются в импульсах тактовой частоты. Для достижения максимальной производительности,​ вместе с увеличением тактовой частоты следует увеличивать и "​ядерные"​ тайминги (чем больше значение тайминга,​ тем дольше задержка). Разумеется,​ это увеличение не обязательно должно быть строго пропорциональным. На хороших микросхемах памяти при двукратном увеличении тактовой частоты,​ тайминги увеличиваются всего лишь в полтора раза. При последовательном чтении ячеек, когда латентность полностью маскируется,​ вы получите двойной прирост производительности памяти при не сильно худшей надежности.
 +
 +Наибольшая производительность достигается когда частота памяти равна частоте системной шины или на худой конец кратна ей. В противном случае,​ чипсет вынужден заниматься буферизаций,​ что существенно увеличивает латентность подсистемы памяти и опускает пропускную способность ниже плинтуса. Вообще говоря,​ контроллеры памяти бывают двух типов: синхронные и асинхронные. Синхронные существенно быстрее асинхронных,​ но ограничивают свою поддержку лишь теми типами памяти,​ частота которых совпадает с частотой системной шины, что нервирует покупателя,​ ущемляя право свободы выбора.
 +
 +Независимо от выбранной частоты,​ в системах с DDR-памятью,​ команды на запись/​чтение передаются только по переднему фронту тактового импульса,​ а сами обрабатываемые данные – по обоим. Расстояние между двумя соседними фронтами равно ½ тика, поэтому в настройках таймингов так много дробных величин.
 +
 +===== базовые настройки =====
 +
 +Для перехода на ручное управление в меню BIOS необходимо найти пункт наподобие "​AutoConfiguration"​ или "​SPD"​ и переключить его на "​Manual"​. **SPD** расшифровывается как "//​**S**////​erial////​**P**////​resence////​**D**////​etect//"​ и конструктивно представляет собой крошечную микросхему постоянной памяти,​ хранящую основные характеристики и тайминги DIMM-модуля,​ гарантируемые производителем (см. рис. 5).
 +
 +В автоматическом режиме BIOS конфигурирует контроллер памяти,​ опираясь на информацию из SPD, которая находится в очень интересных взаимоотношениях с окружающей действительностью. Одни производители (и их большинство) прописывают в SPD заниженные параметры,​ другие же в порыве безудержного оптимизма приписывают своему товару качества,​ до которых ему как до седьмого пня.
 +
 +Не доверяйте автоматике! Ручная настройка всегда предпочтительнее,​ поскольку оперирует не с произвольно взятой выборкой нескольких модулей памяти,​ а с конкретным экземпляром!
 +
 +{{overddr_Image_5.jpg}}
 +
 +Рисунок 5 маленькая черная хреновина в верхнем правом углу и есть SPD
 +
 +==== CL ====
 +
 +Величина **CL**, более известная под именем **CAS****#​**** Latency**,​ задает количество тактов между отправкой DDR-микросхеме команды чтения (не записи!) и сбросом первой порции данных на шину, при этом DRAM-страница должна быть заблаговременно открыта,​ за что отвечает тайминг tRCD. При последовательном чтении ячеек величина CL не играет никакой роли и может быть сколь угодно большой,​ в противном случае мы теряем CL тактов на каждый цикл пакетного обмена,​ продолжительность которого даже при благоприятном стечении обстоятельств составляет по меньшей мере 10 –20 тактов,​ поэтому сокращения CAS#​ Latency на один такт в лучшем случае увеличивает производительность на ~10%. Кстати говоря,​ CAS#​ Latency хорошо разгоняется,​ поскольку управляет не тормозным массивом конденсаторов,​ а быстрым буфером статической памяти и обвязывающей его логикой. При хаотичном доступе к памяти,​ когда открытие/​закрытие DRAM-страниц происходит на каждом шагу, вклад, вносимый задержкой CL в общую продолжительность цикла обмена становится настолько мал, что им можно полностью пренебречь.
 +
 +В большинстве случаев CAS#​ Latency составляет 2.0 или 2.5 тактов. Уменьшать ее до 1.5 не рекомендуется,​ хотя… если качество используемого оборудования это позволяет,​ то почему бы и нет?
 +
 +==== tRCD ====
 +
 +Величина **tRCD**, так же называемая **RAS****#​ ****to**** ****CAS****#​ ****Delay**или **Active to CMD,​** определяет время открытия DRAM-страницы,​ в процессе которого со строки конденсаторов считывается заряд и заносится в буфер статической памяти,​ локально обрабатывающий все последующие обращения. Средняя длина страницы составляет 2 Кб, ширина пакетного цикла обмена – 32 или 64 байт,​ и при последовательном чтении ячеек открытия новых страниц происходят на каждом 32, 64 цикле, а при перекрестном чередовании банков (о котором речь еще впереди) и того реже. Некоторые контроллеры памяти автоматически открывают следующую страницу,​ когда текущая подходит к концу, благодаря чему задержка полностью маскируется. При хаотичном доступе к памяти картина иная. Открытие новых страниц происходит значительно чаще, и латентность подсистемы памяти существенно возрастает. Тем не менее уменьшать величину tRCD категорически не рекомендуется. Во-первых,​ реального выигрыша производительности это все равно не даст (полный пакетный цикл занимает порядка 30 тактов и сокращение RAS#​ to CAS#​ Latency на один такт, увеличивает быстродействие всего лишь на ~3%). Во-вторых,​ с разгоном tRCD надежность микросхемы катастрофически падает и существенно увеличивается ее нагрев. Скажите честно,​ вам это надо?
 +
 +Правильные люди не умешают RAS#​ to CAS#​ Latency,​ а напротив,​ увеличивают ее параллельно с этим наращивая тактовую частоту и в результате получая наибольший прирост производительности,​ который только может быть достигнут.
 +
 +==== tRP ====
 +
 +Величина **tRP** (она же **RAS****#​**** Precharge Delay****,​ **она же**Precharge**** ****to**** ****active**) определяет время закрытия DRAM-страницы,​ в процессе которого происходит возврат данных в банк памяти и его перезарядка. Во время перезаряда банк недоступен,​ но доступны все остальные банки (большинство DDR-модулей содержит четыре таких банка). Банк закрывается на перезарядку всякий раз, когда происходит обращение к другой странице из этого же самого банка. При последовательном чтении/​записи ячеек значение tRP никак не влияет на производительность. При чтении в разбор RAS#​ Precharge снижает быстродействие системы только тогда, когда все запросы оказываются сосредоточены в пределах одного банка, что при правильно выбранном чередовании практически никогда не случается.
 +
 +Если микросхемы памяти поддерживают режим **Auto**** ****Precharge**,​ и контроллер об этом "​знает",​ то перезаряд начинается сразу же после того, как будет прочитана последняя ячейка DRAM-страницы,​ в результате чего производительность системы несколько возрастает.
 +
 +Недостаточно продолжительное время перезаряда приводит к потере оперативных данных и как следствие – нестабильной работе компьютера. Рекомендуется выбрать максимальное значение тайминга из всех предлагаемых BIOS'​ом,​ особенно если тактовая частота памяти разогнана сверх номинального.
 +
 +==== tRAS ====
 +
 +Величина**tRAS** (онаже**DRAM Precharge Delay**,​ онаже**Active to Precharge Delay,​ **онаже**Precharge Wait State, **онаже**Row Active Delay, **онаже**Row Precharge Delay**) устанавливаетминимальныйпромежутоквременимеждуоткрытием/​закрытиемодной DRAM-страницы. Отсюда,​ реальное время хаотичного доступа к одному банку памяти без учета латентности процессора и чипсета равно tRC == tRAS + tRP. Если микросхема памяти поддерживает **tRAS Lockout feature**** – **режим обхода tRAS (а большинство микросхем его поддерживают),​ то при переключении между DRAM-страницами величина tRAS игнорируется и вместо нее берется tRCD. Если же режим обхода tRAS не поддерживается,​ уменьшение Precharge Delay слегка ускоряет хаотичный доступ,​ но злоупотреблять этим не следует и лучше изменить чередование банков – и производительность возрастет и стабильность не пострадает.
 +
 +===== тонкие настройки для гурманов =====
 +
 +Не все BIOS'​ы обеспечивают возможность тонкой настройки памяти. Те же, что обеспечивают,​ не всегда открывают доступ по умолчанию (например,​ в Gigabyte GA-K8VNXP для этого необходимо нажать Ctrl-F1). Опции тонкой настройки не обеспечивают радикального прироста производительности,​ однако,​ в ряде случаев оказывают очень полезными.
 +
 +{{overddr_Image_6.png}}{{overddr_Image_7.jpg}}
 +
 +Рисунок 6 тонкая настройка памяти на различных материнских платах
 +
 +==== Burst Length ====
 +
 +Длинна пакетного цикла чтения. Для достижения наивысшей производительности должна быть равна размеру процессорной кэш-линейки (32 байта или 4 пульса для P-III и 64 байта или 8 пульсов для P-4 или AMD Athlon). Никак не влияет на надежность,​ но более длинные пакетные циклы несколько уменьшают энергопотребление.
 +
 +==== Bank Interleaving ====
 +
 +Режим чередования банков. Если чередование выключено,​ мы обеспечиваем максимум одновременно открытых страниц для работы. Например,​ для копирования данных из пункта А в пункт B требуется два открытых банка. Однако,​ если эти оба "​пункта"​ попадут в один банк, время копирования существенно возрастет и чтобы этого избежать необходимо изменить алгоритм трансляции адресов так, чтобы рассредоточить совместно обрабатываемые порции данных по различным банкам. Как правило,​ нужный режим чередования подбирается экспериментально и для каждого приложения этот режим свой.
 +
 +==== Command Rate CMD ====
 +
 +Определяет минимальный промежуток времени между двумя соседними командами. Чаще всего равен двум-трем тактам,​ реже – одному (это зависит не столько от используемого модуля памяти,​ сколько от проворности контроллера). Полная конвейеризация выдачи результата достигается лишь при Command Rate равном одному и увеличивает производительность подсистемы памяти практически на 25%.
 +
 +Некоторые BIOS'​ы именуют эту опцию как "​**2****T Command**"​ предлагая на выбор "​Disabled"​ (отказаться) и "​Enabled"​ (принять). Эх! Знать бы от чего мы отказываемся! Если по умолчанию частота следования команд была равна 1T, то 2T выбирать не надо. А если она равнялась 3T? Если документация молчит как партизан нужный режим работы приходится выбирать экспериментально.
 +
 +==== tWCL, tDQSS ====
 +
 +Тоже самое, что и CL, но только для записи. При последовательной записи ячеек с Command Rate равном одному полностью маскируется и никак не влияет на производительность,​ в противном случае сокращения tWCL на один такт слегка увеличивает быстродействие системы (но не более, чем на 10%). Слишком малая величина tWCL может стать причиной искажения записываемых данных.
 +
 +==== tWR ====
 +
 +Минимальный промежуток времени между завершением операции записи и закрытием DRAM-страницы. При последовательной записи никак не влияет на производительность,​ при записи вразброс увеличивает быстродействие на 1%-3%, однако,​ при этом возможна потеря оперативных данных.
 +
 +==== tRWT ====
 +
 +Минимальный промежуток времени между завершением операции записи и началом операции чтения одной и той же DRAM-страницы. При интенсивном чередовании команд записи и чтения существенно увеличивает производительность,​ однако,​ схема взаимодействия с оперативной памятью,​ реализованная в процессорах Intel Pentium и AMD Athlon,​ делает это событие крайне маловероятным и даже если оно произойдет. К тому же, большинство чипсетов имеют раздельные очереди на запись/​чтение и автоматически оптимизируют порядок следования запросов,​ поэтому значение tRWT становится некритичным,​ поэтому лучше установить его на максимум для улучшения стабильности работы системы.
 +
 +==== tREF ====
 +
 +Промежуток между двумя циклами регенерации памяти. Обычно варьируется от одного до нескольких тысяч тиков. Частые регенерации существенно замедляют работу системы,​ но и увеличивают надежность хранения оперативных данных. При разгоне таймингов tRP и tRAS регенерации рекомендуется учащать,​ однако,​ если вы переусердствуете с этим, то съедите весь выигрыш от разгона и даже опустите его ниже номинала.
 +
 +==== tRFC ====
 +
 +Продолжительность регенерации в тактах. Обычно составляет порядка 10 – 20 тиков. Практически никак не влияет на производительность (особенно при штатной периодичности регенерацией),​ поэтому лучше выставить эту величину на максимум,​ что увеличит стабильность работы системы особенно разогнанной.
 +
 +==== tRC ====
 +
 +Величина рабочего цикла RAS. Должна быть равна сумме tRAS и tRP, в противном случае нормальная работоспособность системы не гарантирована. Следует заменить,​ что некоторые BIOS'​ы не позволяют явно выбирать tRP, но предоставляют доступ к tRAS и tRС, тогда tRP == tRC – tRAS.
 +
 +===== другие настройки =====
 +
 +Как быть, если в BIOS'​е встретилась настройка,​ которая не описана ни в документации на материнскую плату, ни в настоящей статье?​ Обратитесь к спецификации на оперативную память,​ электронную версию которого можно бесплатно скачать с сервера огранизации JEDEC (http://​www.jedec.org/​DOWNLOAD/​search/​JESD79D.pdf). Если же ее не окажется и там,​ – загляните в техническое описание своего чипсета,​ которое можно найти на сайте производителя. Ведь не BIOS'​же управляет памятью! Она всего лишь конфигурирует контролер и ее разработчики зачастую и сами не знают какой пункт за что отвечает!
 +
 +===== виртуальность тестов против суровой реальности =====
 +
 +Скажите:​ а что быстрее – КАМАЗ или Формула-1?​ А это смотря для чего! За какое время Формула перевез пару сотен тонн кирпича и за какое время ее перевезет КАМАЗ? Вот так и с тестовыми программами. Спору нет. Представленная ими информация объективна,​ одна она ничего не говорит о реальном быстродействии конкретного приложения на отдельно взятой задаче. Забудьте о тестовых программах. Лучше запустите свой любимую аплеуху и измерьте время выполнения типичной задачи,​ на которую вы расходуете львиную долю машинного времени. Теперь,​ манипулируя настройками BIOS'​а добейтесь чтобы время выполнения этой задачи было минимальным,​ помня о том, что скорость выполнения всех остальных задач может как упасть,​ так и возрасти,​ заставляя вас искать золотую середину.
 +
 +===== заключение =====
 +
 +Народная мудрость говорит:​ нельзя все разгонять,​ на чем-то надо и "​сидеть"​. За несколько дополнительных процентов производительности приходится расплачиваться нестабильной работой системы,​ частые зависания и перезагрузки которой съедают весь выигрыш от разгона. И хорошо если только перезагрузки,​ а не потеря всех хранящихся на жестком диске данных – ведь кэш файловой системы хранится в оперативной памяти и если он окажется искажен… Впрочем,​ такой исход событий крайне маловероятен и разгонять оперативную память не только можно, но и нужно.
 +
 +