Следует ли покупать память ECC? Опции ECC, Registered, Buffered, Parity. Микросхема SPD Память ecc для работы в adobe

Также схемы ECC-защиты данных могут применяться для встроенной в микропроцессоры памяти: кэш-памяти, регистрового файла. Иногда контроль также добавляют в вычислительные схемы.

Описание проблемы

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

Исследование, проведённое на большом количестве серверов Google , показало, что количество ошибок может быть в пределах от 25 000 до 70 000 ошибок за миллиард рабочих часов (англ. device hours ) на мегабит (то есть 2,5-7,0 × 10 −11 ошибок / бит·час) .

Технология

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

Более надёжным является подход, при котором используется коды с коррекцией ошибок . Самым часто используемым кодом с коррекцией ошибок, является код Хэмминга . Большинство памяти с коррекцией ошибок, используемых в современных компьютерах, могут исправлять ошибку одного бита в одном 64-битном машинном слове и определить, но не исправить, ошибку в двух битах в одном 64-битном слове .

Наиболее эффективный подход к исправлению ошибок зависит от вида ожидаемых ошибок. Часто предполагается, что изменение различных битов происходят независимо. В этом случае вероятность двух ошибок в одном слове пренебрежительно мала. Однако это предположение не выполняется для современных компьютеров. Память, основная на технологии коррекции ошибок Chipkill (IBM), позволяет исправлять несколько ошибок, в том числе и при порче целого чипа памяти. Другие технологии коррекции памяти, которые не предполагают независимость ошибок в разных битах, включают Extended ECC (Sun Microsystems), Chipspare (Hewlett-Packard) и SDDC (Intel).

Многие старые системы не сообщали об исправленных ошибках, сообщая только об обнаруженных ошибках, которые невозможно было исправить. Современные системы записывают как исправленные ошибки (CE, англ. correctable errors ), так и неисправляемые ошибки (UE, англ. uncorrectable errors ). Это позволяет вовремя заменить испорченную память: несмотря на то, что большое количество исправленных ошибок при отсутствии неисправляемых ошибок не влияет на корректность работы памяти, это может свидетельствовать о том, что для данного модуля памяти вероятность появления неисправляемых ошибок в будущем возрастёт .

Преимущество и недостатки

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

Память с коррекцией ошибок работает на 2-3 % медленнее (часто для проверки сумм требуется один дополнительный такт контроллера памяти), чем обычная память, в зависимости от приложений . Дополнительная логика, реализующая подсчет, проверку ECC и исправление ошибок, требует логических ресурсов и времени на свою работу либо в самом контроллере памяти, либо в интерфейсе между CPU и контроллером памяти .

См. также

Примечания

  1. Werner Fischer. RAM Revealed (неопр.) . admin-magazine.com . Дата обращения 20 октября 2014.
  2. Архивированная копия (неопр.) (недоступная ссылка) . Дата обращения 20 ноября 2016. Архивировано 18 апреля 2016 года.
  3. Single Event Upset at Ground Level, Eugene Normand, Member, IEEE, Boeing Defense & Space Group, Seattle, WA 98124-2499
  4. «A Survey of Techniques for Modeling and Improving Reliability of Computing Systems », IEEE TPDS, 2015
  5. Кузнецов В. В. Солнечно-земная физика (курс лекций для студентов физиков). Лекция 7. Солнечная активность. // Солнечные бури. Горно-Алтайский государственный университет. 2012
  6. Gary M. Swift and Steven M. Guertin. "In-Flight Observations of Multiple-Bit Upset in DRAMs". Jet Propulsion Laboratory
  7. Borucki, "Comparison of Accelerated DRAM Soft Error Rates Measured at Component and System Level", 46th Annual International Reliability Physics Symposium, Phoenix, 2008, pp. 482–487
  8. Schroeder, Bianca; Pinheiro, Eduardo; Weber, Wolf-Dietrich. DRAM Errors in the Wild: A Large-Scale Field Study (неопр.) // SIGMETRICS/Performance. - ACM, 2009. - ISBN 978-1-60558-511-6 .
  9. Using StrongArm SA-1110 in the On-Board Computer of Nanosatellite (неопр.) . Tsinghua Space Center, Tsinghua University, Beijing. Дата обращения 16 февраля 2009. Архивировано 2 октября 2011 года.
  10. Doug Thompson, Mauro Carvalho Chehab. «EDAC - Error Detection And Correction» Архивировано 5 сентября 2009 года. . 2005-2009. «The "edac" kernel module goal is to detect and report errors that occur within the computer system running under linux.»
  11. Discussion of ECC on pcguide (неопр.) . Pcguide.com (17 апреля 2001). Дата обращения 23 ноября 2011.

Страница 1 из 10

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

Перед прочтением данного материала рекомендуем ознакомится с материалами по и платформе LGA1151 .

Теория

Перед тестированием расскажем об ошибках памяти.
Ошибки, возникающие в памяти, можно разделить на два типа – аппаратные и случайные. Причиной появления первых являются дефектные микросхемы DRAM. Вторые же возникают по причине воздействия электромагнитных помех, излучения, альфа- и элементарных частиц и т.д. Соответственно, исправить аппаратные ошибки можно только путем замены микросхем DRAM, а случайные – с помощью специальных технологий, например, ECC (Error-Correcting Code). Коррекция ошибок ECC в своем арсенале имеет два метода: SEC (Single Error Correction) и DED (Double Error Detection). Первый исправляет однобитовые ошибки в 64-битном слове, а второй детектирует двухбитовые ошибки.
Аппаратная реализация ECC заключается в размещении дополнительных чипов памяти, которые необходимы для записи 8-битных контрольных сумм. Таким образом, модуль памяти с коррекцией ошибок при одностороннем дизайне будет иметь 9 чипов памяти вместо 8 (как у стандартного модуля), а при двустороннем - 18 вместо 16. Вместе с этим увеличивается и ширина модуля с 64 до 72 бит.
При считывании данных из памяти происходит повторный подсчет контрольной суммы, которая сравнивается с исходной. Если ошибка в одном бите - она исправляется, если в двух - детектируется.

Практика

В теории всё хорошо – память с коррекцией ошибок повышает надежность системы, что очень важно при построении сервера или рабочей станции. А на практике существует еще и финансовая сторона данного вопроса. Если серверу память с коррекцией ошибок обязательна, то рабочая станция вполне может обойтись без ECC (многие готовые рабочие станции разных производителей оснащаются обычной ОЗУ). Насколько же дороже память с коррекцией ошибок?
Типичный модуль DDR4-2133 с объемом 8 ГБ стоит порядка 39 долларов, а модуль с ECC – 48 долларов (на момент написания материала). Разница в стоимости составляет около 23%, что весьма значительно на первый взгляд. Но если посмотреть на общую стоимость рабочей станции, то эта разница не превысит и 5% от нее. Таким образом, приобретение памяти с ECC лишь незначительно увеличивает стоимость рабочей станции. Остается лишь вопрос – а как влияет память с ECC на производительность процессора.
Для того, чтобы ответить на этот вопрос редакция сайт взяла для тестирования модули памяти Samsung DDR4-2133 ECC и Kingston DDR4-2133 с одинаковыми таймингами 15-15-15-36 и объемом 8 ГБ.

На модулях памяти Samsung M391A1G43DB0-CPB с коррекцией ошибок распаяно по 9 чипов с каждой стороны.

В то время как на обычных модулях памяти Kingston KVR21N15D8/8 распаяно по 8 чипов с каждой стороны.

Тестовый стенд: Intel Xeon E3-1275v5, Supermicro X11SAE-F, Samsung DDR4-2133 ECC 8GB, Kingston DDR4-2133 non-ECC 8GB

Детализация

Процессор: (HT on; TB off);
- Материнская плата: ;
- Оперативная память: 2x (M391A1G43DB0-CPB), 2x (KVR21N15D8/8);
- ОС: .

Методика тестирования

3DMark06 1.21;
- 7zip 15.14;
- AIDA64 5.60;
- Cinebench R15;
- Fritz 4.2;
- Geekbench 3.4.1;
- LuxMark v3.1;
- MaxxMEMI 1.99;
- PassMark v8;
- RealBench v2.43;
- SiSoftware Sandra 2016;
- SVPmark v3.0.3b;
- TrueCrypt 7.1a;
- WinRAR 5.30;
- wPrime 2.10;
- x264 v5.0.1;
- x265 v0.1.4;
- Kraken;
- Octane;
- Octane 2.0;
- Peacekeeper;
- SunSpider;
- WebXPRT.

На вопрос Обьясните, что такое "Поддержка ECC" на оперативной памяти заданный автором Алёнка лучший ответ это это функция коррекции ошибок. такая память ставится на сервера, ведь нельзя же чтоб они лагали, отключались или перегружались из-за ошибок. для домашнего компа это не нужная вещь, хотя и полезная. если решили себе такую поставть-убедитесь, что ваша матплата поддерживает такой тип озу с ЕСС.
Источник: ку

Ответ от Rainswept [гуру]
ECC (Error Correct Code) - выявление и исправление ошибок (возможны другие расшифровки той же аббревиатуры) - алгоритм, пришедший на смену "контролю четности". В отличие от последнего каждый бит входит более чем в одну контрольную сумму, что позволяет в случае возникновения ошибки в одном бите восстановить адрес ошибки и исправить ее. Как правило, ошибки в двух битах также детектируются, хотя и не исправляются. Для реализации этих возможностей на модуль устанавливается дополнительная микросхема памяти и он становится 72- разрядным, в отличие от 64 разрядов данных обычного модуля. ECC поддерживают все современные материнские платы, предназначенные для серверных решений, а также некоторые чипсеты "общего назначения". Некоторые типы памяти (Registered, Full Buffered) выпускаются только в ECC варианте. Надо отметить, что ECC не является панацеей от дефективной памяти и применяется для исправления случайных ошибок, снижая риск возникновения неполадок в работе компьютера от случайного изменения содержимого ячеек памяти, вызваемого внешними факторами, такими, как фоновая радиация.
Registered модули памяти рекомендуются к применению в системах, требующих (или поддерживающих) 4 Гб и более оперативной памяти. Они всегда имеют разрядность 72 бита, т. е. являются модулями с ЕСС, и содержат дополнительные микросхемы регистров для частичной буферизации.
PLL- Phase Locked Loop - цепь автоподстройки частоты и фазы сигнала, служит для снижения электрической нагрузки на контроллер памяти и повышения стабильности работы при использовании большого количества микросхем памяти, применяется во всех буферизованных модулях памяти.
Buffered - буферизованный модуль. Из-за высокой совокупной электрической емкости современных модулей памяти, длительное время их "зарядки" приводит к большим затратам времени на операции записи. Чтобы избежать этого, некоторые модули (как правило, 168-контактные DIMM) снабжаются специальной микросхемой (буфером) , которая сохраняет поступившие данные относительно быстро, что освобождает контроллер. Буферизованные DIMM, как правило, несовместимы с небуферизованными. Модули с частичной буферизацией называются также "регистровым"("Registered"), а модули с полной буферизацией (Full Buffered) -"FB-DIMM". При этом под "небуферизоваными" подразумеваются обычные модули памяти без средств буферизации.
Parity - четность, модули с контролем четности, также контроль четности. Довольно старый принцип проверки целостности данных. Суть метода в том, что для байта данных на стадии записи вычисляется контрольная сумма, которая сохраняется как специальный бит четности в отдельной микросхеме. При чтении данных контрольная сумма вычисляется снова и сравнивается с битом четности. Если они совпали, данные считаются аутентичными, в противном случае генерируется сообщение об ошибке четности (как правило, приводящее к остановке системы). К явным недостаткам метода относятся дороговизна памяти, требующейся для хранения лишних бит четности, незащищенность от двойных ошибок (а также ложное срабатывание при ошибке в бите четности) , остановка системы даже при непринципиальной ошибке (скажем, в видеокадре). В настоящее время не применяются.
SPD - микросхема на модуле памяти DIMM, которая содержит все данные о нем (в частности, информацию о быстродействии), необходимые для обеспечения нормальной работы. Эти данные читаются на этапе самотестирования компьютера, еще задолго до загрузки операционной системы и позволяют настроить параметры обращения к памяти даже при одновременном наличии в системе разномастных модулей памяти. Некоторые материнские платы отказываются работать с модулями, на которых не установлена микросхема SPD, однако такие модули сейчас очень редки и являются, в основном, модулями PC-66.


Ответ от Mowgley [гуру]
оперативная роверка памяти на ошибки

Обьясните, что такое “Поддержка ECC” на оперативной памяти

  1. оперативная роверка памяти на ошибки
  2. это функция коррекции ошибок. такая память ставится на сервера, ведь нельзя же чтоб они лагали, отключались или перегружались из-за ошибок. для домашнего компа это не нужная вещь, хотя и полезная. если решили себе такую поставть-убедитесь, что ваша матплата поддерживает такой тип озу с ЕСС.
  3. Так можно ограничится программой memtest? или эта технология постоянно мониторит и исправляет мелкие значения в данных памяти?
  4. ECC (Error Correct Code) – выявление и исправление ошибок (возможны другие расшифровки той же аббревиатуры) – алгоритм, пришедший на смену “контролю четности”. В отличие от последнего каждый бит входит более чем в одну контрольную сумму, что позволяет в случае возникновения ошибки в одном бите восстановить адрес ошибки и исправить ее. Как правило, ошибки в двух битах также детектируются, хотя и не исправляются. Для реализации этих возможностей на модуль устанавливается дополнительная микросхема памяти и он становится 72- разрядным, в отличие от 64 разрядов данных обычного модуля. ECC поддерживают все современные материнские платы, предназначенные для серверных решений, а также некоторые чипсеты “общего назначения”. Некоторые типы памяти (Registered, Full Buffered) выпускаются только в ECC варианте. Надо отметить, что ECC не является панацеей от дефективной памяти и применяется для исправления случайных ошибок, снижая риск возникновения неполадок в работе компьютера от случайного изменения содержимого ячеек памяти, вызваемого внешними факторами, такими, как фоновая радиация.
    Registered модули памяти рекомендуются к применению в системах, требующих (или поддерживающих) 4 Гб и более оперативной памяти. Они всегда имеют разрядность 72 бита, т. е. являются модулями с ЕСС, и содержат дополнительные микросхемы регистров для частичной буферизации.
    PLL- Phase Locked Loop – цепь автоподстройки частоты и фазы сигнала, служит для снижения электрической нагрузки на контроллер памяти и повышения стабильности работы при использовании большого количества микросхем памяти, применяется во всех буферизованных модулях памяти.
    Buffered – буферизованный модуль. Из-за высокой совокупной электрической емкости современных модулей памяти, длительное время их “зарядки” приводит к большим затратам времени на операции записи. Чтобы избежать этого, некоторые модули (как правило, 168-контактные DIMM) снабжаются специальной микросхемой (буфером) , которая сохраняет поступившие данные относительно быстро, что освобождает контроллер. Буферизованные DIMM, как правило, несовместимы с небуферизованными. Модули с частичной буферизацией называются также “регистровым”(“Registered”), а модули с полной буферизацией (Full Buffered) -“FB-DIMM”. При этом под “небуферизоваными” подразумеваются обычные модули памяти без средств буферизации.
    Parity – четность, модули с контролем четности, также контроль четности. Довольно старый принцип проверки целостности данных. Суть метода в том, что для байта данных на стадии записи вычисляется контрольная сумма, которая сохраняется как специальный бит четности в отдельной микросхеме. При чтении данных контрольная сумма вычисляется снова и сравнивается с битом четности. Если они совпали, данные считаются аутентичными, в противном случае генерируется сообщение об ошибке четности (как правило, приводящее к остановке системы) . К явным недостаткам метода относятся дороговизна памяти, требующейся для хранения лишних бит четности, незащищенность от двойных ошибок (а также ложное срабатывание при ошибке в бите четности) , остановка системы даже при непринципиальной ошибке (скажем, в видеокадре) . В настоящее время не применяются.
    SPD – микросхема на модуле памяти DIMM, которая содержит все данные о нем (в частности, информацию о быстродействии), необходимые для обеспечения нормальной работы. Эти данные читаются на этапе самотестирования компьютера, еще задолго до загрузки операционной системы и позволяют настроить параметры обращения к памяти даже при одновременном наличии в системе разномастных модулей памяти. Некоторые материнские платы отказываются работать с модулями, на которых не установлена микросхема SPD, однако такие модули сейчас очень редки и являются, в основном, модулями PC-66.
  5. memtest об проверка может не выявить ошибки а вот проверка в мемтесте –Test 1 Addresstest, ownaddress глубокий тест для выявления ошибок в адресационной прописки памяти — выявляет такие ошибки хорошо, так что если увас появились синие экраны это в основном оперативка или жесткий диск
  6. Говорили тут уже, используй windowsfix.ru

ECC, от английского error-correcting code, переводиться на русский язык, как код коррекции ошибок. Встроенная в контроллёры флешек технология, обнаружения и исправления ошибок при передаче данных. ECC способна справиться только с несущественными проблемами, в тяжелых случаях флешка заблокируется на запись данных.

ЗАЧЕМ ЭТО НАДО

Если в эпоху качественных SLC и MLC микросхем флэш-памяти, не было особого смысла обращать внимание на этот механизм исправления ошибок. То сейчас когда в подавляющем количестве флешек, установлена или банально TLC-память или какая-нибудь MLC DownGrade, не стоит пренебрегать настройками ECC-механизма.

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

Еще одной положительной чертой, является вероятность достижения максимального возможного объёма флэш-диска. Он может быть даже выше, чем изначально имел носитель, особенно у флешек с отбракованными микросхемами.

НЕДОСТАТКИ

Чем выше вы установите значение ECC-параметра, тем большую нагрузку он создаст на контроллёр флешки. А это в свою очередь, может негативно сказаться на её производительность, т.е. скорость работы. Также из заметных недостатков, высокой нагрузки, это больший разогрев флешки.

В большинстве утилитах, используется не применяемые в флэш-листах значения (например: 7b/512B и 72b/1K), а суммы определенных параметров. Как правило, в диапазоне равеном от 0 до 15, в некоторых производственных программах, ввиду поддержки крайне некачественной памяти, от 0 до 20..

ECC Value
MEMORY TYPE: ECC:
SLC 1
MLC 32nm, 35nm, 42nm, 50nm, … 3-4
MLC 24nm, 25nm, 26nm, 32nm 4-8
MLC 21nm, 20nm, 19nm, … 8-12
TLC 27nm, 32nm, 43nm, … 8
TLC 24nm, 21nm, 19nm, … 12-15

В некоторых утилитах, используется другая система координат, к примеру производственный комплекс Dyna для контроллёров SMI. На этот случай, чуть ниже можно обнаружить ссылку на особености настроек у конкретных производителей.

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

РЕАЛИЗАЦИЯ В ПРОИЗВОДСТВЕННЫХ УТИЛИТАХ

Далеко не во всех утилит, имеется возможность ручной корректировки ECC-опции. Можно сказать что ECC, это такая фитча Sorting-составляющей производственных утилит. Попробую кратко выразить это в таблице, для основных производителей USB-контроллёров.

ECC Compatible Software
Company: Tools:
ALCOR AlcorMP_UFD
FC MpTool
AAMP
CHIPSBANK Chipsbank UMPTool
CBM2093 UMPTool
CBM2098 UMPTool
umptool209X
V68 Building Tools
INNOSTOR Innostor MPTool
Innostor 917 LFA MP Tool
PHISON UPTool
UP19_CTool
UP21_CTool
UP23_CTool
SILICON GO KingStore Manufacture Tool
SiliconGo MPTools
SiliconGo MPTool2
SKYMEDI SK6221 MPTool
SMI Dyna Mass Storage Production Tool
СТАТЬИ НА ТЕМУ ECC-КОРРЕКЦИИ
Loading...Loading...