- Что за ECC RAM и как она работает?
- Память ECC против обычной памяти
- Какое оборудование поддерживает ECC память?
- Недостатки ECC памяти
- Как работает ECC память?
- Регистровая память
- Режим поддержки ECC оперативной памяти – что это такое и как работает?
- Что такое ЕСС память
- Причины появления ошибок в ОЗУ
- Стоит ли использовать ЕСС память
- Что такое ОЗУ с ECC? Можете ли вы с этим поиграть?
- Как работает ECC RAM?
- Нужна ли мне память ECC для игр?
- ECC vs non-ECC: так ли медлительна память с коррекцией ошибок?
- Оглавление
- Вступление
- реклама
- Коррекция ошибок
- Финансовая сторона
- реклама
- Тестовый стенд
- Методика тестирования
- Результаты тестирования
- Тест памяти
- реклама
- 3DMark
- реклама
- реклама
- Cinebench
- реклама
Что за ECC RAM и как она работает?
Память с коррекцией ошибок (Error correction code — ECC) – это тип памяти, использующийся в рабочих станциях и серверах. В первую очередь она предназначена для бизнеса и профессиональных задач где критически важна работа с данными. Такая память позволяет исправлять ошибки в памяти и бороться с повреждением данных. Также предполагается, что она может сократить количество сбоев в работе сервера или рабочей станции. Все это позволяет использовать ECC RAM в профессиональных сферах и бизнесе, включая финансовые институты и облачные вычисления, где ошибки с данными и простои недопустимы.
Память ECC против обычной памяти
Физически ECC память отличается от обычной не ECC памяти (та, что используется в потребительских компьютерах и ноутбуках) наличием 9 чипов памяти с одной стороны вместо 8 (чипы памяти используются для хранения данных, которые при вызове отправляются в ЦПУ). Дополнительный чип памяти как раз используется для обнаружения и исправления ошибок в других 8 чипах.
Какое оборудование поддерживает ECC память?
Память ECC рассчитана на нагрузки корпоративного уровня, поэтому большинство потребительских материнских плат для ПК ее не поддерживают или работают без функции корректировки ошибок. Для того чтобы в полной мере воспользоваться преимуществами такой памяти вам нужна системная плата для рабочих станций либо для серверов. ECC память также стоит несколько дороже, в сравнении с обычными модулями, как раз из-за дополнительного чипа памяти.
И опять же ECC память в первую очередь предназначена для серверов и рабочих станций, поэтому для ее работы вам потребуется производительный процессор. Из модельного ряда Intel только серверная линейка Xeon предназначена для работы с ECC памятью и компания таким образом пытается отделить потребительские продукты от профессиональных. С другой стороны, компания AMD предлагает для энтузиастов многопоточные чипы Threadripper, которые поддерживают работу с таким типом памяти.
Недостатки ECC памяти
Возможно это покажется странным, но ECC память несколько медленней обычной памяти из-за того, что для проверки данных на ошибки требуется время. Вместе с тем, в 2014 году компания Puget провела исследования, согласно которым ECC память оказалась на 0,25 процента медленнее обычной памяти, а регистровая ECC память на 0,44 процента медленней. На наш взгляд данное исследование больше доказывает, что различия в производительности весьма незначительны.
Как работает ECC память?
Коррекция ошибок – это математический процесс, который обеспечивает правильность данных, хранящихся в памяти. В случае ошибки ECC также позволяет системе в реальном времени воссоздать правильные данные.
Одним из способов работы ECC памяти является контроль четности. При этом методе используется дополнительный бит который записывает четность остальных битов. К сожалению, несмотря на то, что дополнительный бит четности позволяет определить ошибку, он никак не способствует ее решению и в этом случае выполнение программы просто прерывается.
Большинство вычислительных систем перемещают данные большими блоками по 64 бита (они называются «машинным словом»). Вместо генерации одного дополнительного бита четности для каждых восьми битов данных, ECC генерирует семь дополнительных битов на 64 бита данных. Система выполняет сложный математический алгоритм на дополнительных семи битах данных, чтобы гарантировать, что остальные 64 бита являются правильными. В случае, если один бит неверен (однобитовая ошибка), алгоритм ECC может восстановить данные. Однако при более крупных ошибках (два или более бит) такой алгоритм может лишь уведомить систему.
Регистровая память
ECC память не всегда является регистровой, но с другой стороны любая регистровая память всегда является ECC памятью.
Регистровая память содержит регистр, который располагается между чипами памяти и системным контроллером памяти. Это позволяет уменьшить электрическую нагрузку на контроллер, а также установить большее количество модулей на один канал.
Не забудьте подписаться и поставить лайк. Впереди будет еще много крутых статей.
Источник
Режим поддержки ECC оперативной памяти – что это такое и как работает?
Всем привет! Тема сегодняшней публикации — поддержка ECC оперативной памяти: что это такое, как работает данная функция, зависит ли от процессора ее использование на ПК.
Что такое ЕСС память
Аббревиатура происходит от английского названия error correcting code memory, то есть память с коррекцией ошибок кода. Такая ОЗУ распознает и устраняет спонтанно возникающие изменения в битах памяти, которых быть не должно.
Как правило, такая память может исправить изменения в одном бите одного машинного слова. При его чтении будет опознано то же значение, что и было записано, несмотря на возникающие «глюки».
Обычная память, то есть non-ECC, этого делать не умеет.
Этот тип памяти используется в компьютерах, для которых важна бесперебойная работа, включая крупные серверные станции. Для использования такого режима необходима поддержка контроллером ОЗУ – как встраиваемого в чипсет, так и реализованном на кристалле вместе с ядрами.
Базовый алгоритм, который используется чаще всего, основан на коде Хемминга – самоконтролирующемся двоичном коде, названном в честь предложившего такую систему американского математика.
Существуют алгоритмы, способные исправлять более одной ошибки, но используются они реже. С технологической точки зрения такая система предполагает использование модулей ОЗУ, в которых на каждые 8 микросхем памяти приходится один компонент, хранящий ЕСС-коды (то есть 8 бит на каждые 64 бита).
Причины появления ошибок в ОЗУ
Главная проблема для любого электронного устройства – невидимые космические лучи, от которых земная атмосфера не защищает должным образом. Элементарные частицы, которые пребывают в этом потоке, способны влиять на работу электроники.Под их воздействием физические свойства оперативки могут меняться, что уже ведет к размагничиванию. При смене данных, из единицы (заряженное состояние) на ноль (разряженное) уже появляется искажение.
А так как любой компьютер на самом «глубинном» уровне проводит все вычисления с помощью двоичных кодов, нарушения свойств электронных компонентов и провоцируют ошибки в работе.
Характерно, что чем выше от уровня моря, тем меньше плотность воздуха и соответственно, интенсивнее космическое излучение. Компьютерные системы, которые работают на большой высоте, требуют более эффективной защиты. Советую также почитать «Что такое ОЗУ в компьютере: из чего состоит и для чего служит?»(уже на сайте).
Стоит ли использовать ЕСС память
Объективных причин для использования такой ОЗУ на домашнем ПК нет.
Несмотря на то, что земной диск медленно дрейфует по Космическому океану, покоясь на спинах трех китов, вероятность искажения данных под воздействием вредоносных лучей, на самом-то деле крайне мала. При этом самое страшное, что может случиться при таких неполадках – вылет операционной системы в синий экран.
Впрочем, это может быть действительно страшно – например, в случае, если вы в течение пары часов монтировали видеоролик, забывая сохраняться в процессе, или же у вас последний и решительный бой, от которого зависит судьба клана, в какой-нибудь ММОРПГ.
Такая память работает медленнее обычной – в среднем, на 2-3%, так как для проверки контрольных сумм необходим один дополнительный такт контроллера. Такой режим работы требует больше логических ресурсов.
Как уже сказано выше, в основном такая память почти всегда регистровая (Registered), то есть имеет дополнительный регистр для считывания и хранения двоичных кодов. Существуют модули ECC памяти без регистров (UDIMM), которые можно использовать в домашних ПК.
Однако учтите, что такое удовольствие обойдется дороже, так как цена на такие модули ОЗУ обычно выше. Кроме того, требуется наличие материнской платы, чипсета и процессора (к слову, такие модели есть и у Intel, и у AMD), поддерживающих ЕСС память. Стоят они внезапно тоже, как правило, дороже.
И если вы решили проапгрейдить комп для использования ЕСС памяти, проверьте спецификации упомянутых выше компонентов. Если в описании написано что нет поддержки такого режима, деталь придется менять на более подходящую, что значит дополнительные расходы.
Не исключено, что придется менять и мать, и «камень», и планки оперативки. При сборке нового компьютера несколько проще: можно сразу купить соответствующие компоненты. Однако, на мой взгляд, это уже лишнее – страховка от мнимых сбоев не стоит потери быстродействия.
Также советую на эту тему ознакомиться с публикациями «Влияние тактовой частоты оперативной памяти в компьютере»(уже на блоге) и «Тайминги и частота оперативной памяти: кто важнее и влиятельней?». Буду признателен всем, кто расшарит эту статью в социальных сетях. До завтра!
Источник
Что такое ОЗУ с ECC? Можете ли вы с этим поиграть?
Каждый опытный или даже начинающий сборщик ПК должен быть знаком с оперативной памятью. Очевидно, что это ключевой компонент для правильной работы любого компьютера. Когда люди думают о приобретении новой памяти для своей установки, их могут беспокоить емкость, скорость и время ожидания. Это примерно столько же информации, о которой должен беспокоиться средний потребитель. Однако очень немногие люди знакомы с памятью ECC или, в частности, с памятью кода с исправлением ошибок.
Как следует из названия, память ECC намного лучше исправляет данные, чем обычная оперативная память потребительского уровня. Итак, в этой статье мы кратко рассмотрим, как работает ОЗУ с ECC, важно ли это для вашей собственной системы и, наконец, насколько она отличается от обычных модулей памяти.
Как работает ECC RAM?
Если вы когда-либо не работали в компании, где важен каждый бит информации, вы, скорее всего, никогда не слышали о ECC RAM. В системах потребительского уровня редко используется «память с исправлением ошибок» или просто ОЗУ с ECC. Скорее всего, единственное место, где вы можете увидеть этот тип оперативной памяти, — это в основном серверные системы. Для определенной организации или компании на их серверах может храниться масса важной информации. Если конфиденциальная информация будет изменена или повреждена, это будет катастрофой для этой компании. Вот где пригодится оперативная память ECC.
Изображение: Puget Systems
Компьютеры хранят информацию в памяти в виде байтов. Все эти байты состоят из группы по 8 бит. В зависимости от емкости и скорости некоторые модули ОЗУ могут сохранять или обрабатывать больше этих данных одновременно. Проблема в том, что иногда один бит во всей этой группе может быть перевернут на 1 или 0 (биты — это в основном эти два числа, в которых компьютер считывает данные). Это простое изменение может фактически изменить букву или все слово, что может привести к повреждению данных. Вот почему так часто наблюдаются сбои сервера в онлайн-видеоиграх. Электрические помехи часто являются причиной этих «переворотов».
Память ECC быстро распознает эти изменения и работает над их исправлением. В этом типе ОЗУ используется специальный алгоритм, который проверяет каждую группу битов. Это ОЗУ анализирует группу битов и запускает «проверку на четность», что просто означает, что она берет сумму всех единиц и нулей в этой группе. При повторном доступе к этим данным он использует проверку четности для обнаружения ошибок или для обнаружения «перевернутого» бита. Вот почему память ECC так важна и полезна на серверах, где одна ошибка может вызвать сбой.
Нужна ли мне память ECC для игр?
Прочитав рабочий процесс, вы, вероятно, теперь можете себе представить, почему ОЗУ ECC так важно для хранения конфиденциальных данных. Теперь вы можете подумать, что память, которая сама себя исправляет, может быть полезна и для вашего ПК. Это серьезное заблуждение. Правда, мысль о том, что все ваши данные верны и никогда не будут сбоями, звучит потрясающе. Однако, если авария все-таки произойдет, это еще не конец света. Вы просто загружаете свой компьютер, и все готово. В наши дни сохранение в облаке делает изумительную работу, гарантируя, что ваши данные останутся в безопасности, если ваша система все-таки выйдет из строя.
Итак, вам не нужна эта специальная память. Но вам все равно может быть любопытно. Что ж, извините за ваш парад, но память ECC, к сожалению, несовместима даже с большинством основных потребительских материнских плат. Даже в этом случае, если у вас есть совместимая материнская плата, память ECC намного дороже, чем стандартная RAM, и может быть в разы медленнее. Память ECC должна быть эффективной при исправлении данных, она не обязательно должна быть самой быстрой памятью.
В конце концов, для потребителей память ECC может быть не такой уж и привлекательной. Однако, если вы ищете отличный комплект RAM для своей игровой машины, мы рассмотрели лучшие RAM для игр.
Источник
ECC vs non-ECC: так ли медлительна память с коррекцией ошибок?
Оглавление
Вступление
На сегодняшний день на просторах Рунета можно встретить открытые темы на форумах с вопросами – стоит ли брать рабочую станцию с ECC-памятью или можно обойтись обычной? В данных ветках можно прочесть множество противоречивых утверждений, и часть из них говорит о том, что коррекция ошибок сильно замедляет память, а следовательно и ЦП. Но мало кто это проверял на деле на современных процессорах.
реклама
Сегодня мы разберемся в этом вопросе и сравним производительность серверного процессора с обоими типами памяти. Но для начала небольшой экскурс.
Коррекция ошибок
Для чего необходима коррекция? И почему в работе памяти возникают ошибки? Перед ответом на эти вопросы следует разделить ошибки на два типа:
- Аппаратные ошибки;
- Случайные ошибки.
Причиной появления аппаратных ошибок является дефектная микросхема DRAM, а случайные ошибки возникают под воздействием излучения, альфа-частиц, элементарных частиц и прочего. Соответственно, первые в принципе неисправимы – если чип дефектный, то поможет только его замена; а вот вторые могут быть исправлены.
Почему же так необходима коррекция ошибок в рабочих станциях и серверах? Однобитовая ошибка в 64-битном слове меняет содержимое ячейки памяти, а в конечном итоге на жесткий диск может быть записано другое число, другие данные, при этом компьютер не зафиксирует эту подмену. А изменение бита в оперативной памяти может вызвать сбой программы, что для рабочей станции и сервера недопустимо.
Для обнаружения изменения битов памяти можно использовать метод подсчета контрольной суммы, но он позволяет лишь обнаруживать ошибки без их исправления.
В свое время было предложено много различных способов решения данной проблемы, но на сегодняшний день наибольшее распространение получил метод коррекции ошибок или ECC (Error-Correcting Code). Данный метод позволяет автоматически исправлять однобитовые ошибки в 64-битном слове – SEC (Single Error Correction) и детектировать двухбитовые – DED (Double Error Detection).
Физическая реализация ECC заключается в размещении дополнительной микросхемы памяти на модуле ОЗУ – соответственно, при одностороннем дизайне модуля памяти вместо восьми чипов располагается девять, а при двустороннем вместо шестнадцати – восемнадцать. Таким образом, ширина модуля становится не 64 бита, а 72 бита.
Метод коррекции ошибок работает следующим образом: при записи 64 бит данных в ячейку памяти происходит подсчет контрольной суммы, составляющей 8 бит. Когда процессор обращается к этим данным и производит считывание, проводится повторный подсчет контрольной суммы и сравнение с исходной. Если суммы не совпадают – произошла ошибка. Если она однобитовая, то неправильный бит исправляется автоматически, если двухбитовая – детектируется и сообщается ОС.
Финансовая сторона
реклама
Прежде чем приступить к тестированию, необходимо затронуть финансовый вопрос.
Стоимость обычного модуля памяти DDR3-1600 с напряжением 1.35 В и объемом 8 Гбайт составляет около 3600 рублей, а с коррекцией ошибок – 4800 рублей. На первый взгляд ECC-память выходит на 30-35% дороже, что, в целом, не позволяет их сравнивать в силу существенно большей стоимости последней. Но почему же тогда такой вопрос возникает при сборке рабочей станции? Все просто – необходимо смотреть на данный вопрос шире, а именно – смотреть на общую стоимость рабочей станции.
Ценник однопроцессорной станции на базе четырехъядерного восьмипоточного Xeon (настольные процессоры серий i5 и i7 не поддерживают ECC-память) с 32 Гбайтами памяти, материнской платы с чипсетом C222/С224/С226 (десктопные наборы логики Z87/Z97 и другие также не поддерживают память с коррекцией ошибок) будет превышать 70 000 рублей (при условии, что устанавливаются серверные SSD с повышенным ресурсом). А если включить в эту стоимость и дискретную видеокарту, и прочие сопутствующие компоненты, например, ИБП, то ценник из пятизначного превратится в шестиизначный, перевалив планку в 100 000 рублей.
Покупка 32 Гбайт памяти с коррекцией ошибок потребует дополнительных 4-6 тысяч рублей, что по отношению к общей стоимости рабочей станции не превышает 5%, то есть не является критичным. Также переход от десктопного к серверному железу предоставит и другие преимущества, например: интегрированные графические карты P4600 в процессорах Intel Xeon E3-1200 третьего поколения получили оптимизированные драйверы, которые должны повышать производительность в профессиональных приложениях, например, в CAD; поддержка технологии Intel VT-d, которая позволяет пробрасывать устройства в виртуальную среду, например, видеокарты; прочие серверные технологии – Intel AMT или IPMI, WatchDog и другие, которые также могут оказаться полезными.
Таким образом, хоть и сама ECC-память стоит заметно дороже обычной, в общей стоимости рабочей станции данная статья затрат является несущественной, и переплата не превышает 5%.
Тестовый стенд
Для данного обзора использовалась следующая конфигурация:
- Материнская плата: Supermicro X10SAE (Intel C226, LGA 1150);
- Процессор: Xeon E3-1245V3 (Turbo Boost – off, EIST – off, HT – on);
- Оперативная память:
- 2x Kingston DDR3-1600 ECC 8 Гбайт (KVR16LE11/8 CL11, 1.35 В);
- 2x Kingston DDR3-1600 8 Гбайт (KVR16LN11/8 CL11, 1.35 В);
- ОС: Windows 8.1 Pro 64-bit.
Методика тестирования
В рамках тестирования были произведены замеры производительности как при одноканальном режиме работы ИКП, так и при двухканальном. Суммарный объем ОЗУ составил 8 (один модуль) и 16 Гбайт (два модуля) соответственно.
- 3DMark 2006 1.2;
- 7Zip 9.20;
- AIDA64 Extreme 5.20.3400;
- Cinebench R15;
- CrystalMark 2004R3;
- Fritz 4.20;
- LinX 0.6.5;
- wPrime 2.10.
Результаты тестирования
Тест памяти
Перед тем, как приступить к тестированию, проведем замер пропускной способности памяти и латентности.
реклама
При изучении результатов можно заключить, что производительность ECC- и non-ECC- памяти находится на одном и том же уровне в рамках погрешности.
Если в предыдущем тесте от замера к замеру выигрывал то один, то другой тип памяти, то при замере латентности ECC-память постоянно показывает большие задержки. Но разница несущественна – всего лишь 1 нс.
Таким образом, замер ПС и латентности памяти не показал особых различий между ECC- и non-ECC-памятью. Посмотрим, повторится ли это в последующих тестах.
3DMark
реклама
Тестовый пакет 3DMark содержит подтесты как для процессора, так и для графической карты. Здесь и кроется самое интересное – давно известно, что встроенному видеоядру не хватает существующей ПСП в 25.6 Гбайт/с, поэтому именно в графических подтестах можно выявить негативное влияние коррекции ошибок, если оно вообще есть,…
. но разницы нет – что ECC, что non-ECC. Ни процессор, ни интегрированное ядро никак не реагируют на замену обычной памяти на DDR с коррекцией ошибок – результаты одинаковы в рамках погрешности. Среднеарифметическая разница составила 0.02% в пользу ECC-памяти для одноканального режима и 1.6% для двухканального режима.
При этом нельзя сказать, что встроенная видеокарта P4600 не зависит от скорости ОЗУ – при одноканальном доступе общий результат почти на 30% ниже, чем при двухканальном. Другими словами, скорость ОЗУ критична для графического ядра, но сами по себе «ECC-версии» не влияют ни на скорость ОЗУ, ни на видеокарту.
реклама
Архиваторы, как известно, чувствительны к памяти, поэтому, возможно, здесь получится зафиксировать влияние типа памяти на производительность.
Ситуация с архивацией неоднозначная: с одной стороны – в одноканальном режиме (как при распаковке, так и при сжатии) ECC-память уверенно оказывается медленнее на 2%; с другой – в двухканальном режиме при сжатии ECC-память уверенно быстрее, а при распаковке – медленнее, а среднее арифметическое – быстрее на 0.65%.
Скорее всего, причина в следующем – пропускной способности памяти при одноканальном доступе процессору явно недостаточно, и поэтому чуть большая латентность ECC-памяти сказывается на производительности; а при двухканальном доступе ПСП полностью покрывает нужды CPU и поэтому чуть большая латентность памяти с коррекцией ошибок не сказывается на производительности. В любом случае зафиксировать существенного влияния на скорость архивации не получилось.
Cinebench
реклама
Тестовый пакет Cinebench содержит подтест как процессора, так и видеокарты.
Но ни первый, ни вторая никак не отреагировали на ECC-память.
Зато налицо явная зависимость видеокарты от ПСП – при одноканальном доступе результат в OpenGL оказался на 25% ниже, чем при двухканальном. Вспоминая результаты 3DMark и смотря на нынешние, можно заключить, что производительность интегрированной видеокарты хоть и зависит от ПСП, но ECC-память не оказывает на нее негативного влияния.
Источник