ECC зареєстровано проти ECC небуферованим


15

Я хотів би створити сервер зберігання даних (на основі GNU / Linux або FreeBSD), який буде постійно працювати. Щоб запобігти пошкодженню даних (що навряд чи трапиться, оскільки я ніколи не мав такої проблеми, але краще бути безпечним, ніж шкодувати), я хотів би використовувати оперативну пам’ять ECC.

Хоча це не так добре, як EDD (?) (Що набагато дорожче) і забезпечує додатковий захист. Здається, ECC виправляє лише поодинокі біти помилок.

Оперативна пам'ять, зареєстрована ECC, може використовуватися лише на робочих станціях / серверних платах, таких як Intel Xeon або AMD interlagos / magny-cours / valencia g34 або c32.

ECC unbufer можна використовувати на Intel Xeon lga1155 або AMD AM3 + на платформах Asus.

Другий варіант буде набагато дешевшим на процесорній та материнській платах, і я сумніваюся, мені знадобиться більше 16 Гб оперативної пам’яті (4х4 ГБ ECC unbuferi - найбільші доступні палиці).

Сумніви, які у мене виникають (в основному стосуються плати asus am3 +): чи є оперативна оперативна пам'ять, що не розширюється ECC, настільки ж добре, як ОЗУ, зареєстрована ECC (з точки зору безпеки та надійності)? Або це гірший вибір. Мені мало хвилюється швидкість.

Детальніше: сервер використовуватиме корпус сервера з накопичувачами до 24 х 3,5 '' і повинен споживати якомога менше. LGA1155 здається, що в цьому сенсі краща ставка (TDP ~ 20-95 Вт) порівняно з іншими (> 80 Вт) удвічі вище ціни. Будь-яка пропозиція вітається. Скажімо, менше 120 Вт на холостому ходу (~ з 10 жорсткими дисками з 24).


1
Запитавши про SuperUser, ви отримаєте відповідь SuperUser. Запитати на ServerFault, ви отримаєте відповідь ServerFault. Отримати мій дрейф?
Чад Гаррісон

У поширених запитаннях зазначено, що питання щодо апаратних засобів можна задати на
суперпользователя

@hydroparadise Перевірте поширені запитання - ми допускаємо всі апаратні запитання.
Саймон Шихан

Шри, я думав, що це передбачалося. Згадував лише те, що з боку ОС можуть бути різні міркування щодо того, як вирішується ECC, оскільки це остаточно стане серверною програмою.
Чад Гаррісон

1
Ледве. Більшу частину часу чіпсет буде обробляти корекцію ECC (якщо така є). Вам зовсім не потрібно вступати в ті з ОС. (Однак ви можете, використовуючи DMI, щоб отримати інформацію про помилки ECC або QPI.)
Hennes,

Відповіді:


-2

Що ж, якщо ви використовуєте лише 16 Гб оперативної пам’яті - що не є діапазоном оперативної пам’яті сервера - вам буде добре з досить стандартною будь-якою оперативною пам’яттю / системою.

Якщо це лише сервер зберігання даних, вам навіть не знадобиться стільки продуктивності процесора.

Як ви сказали, піти з мосту Сенді, це дасть вам прохолодну, ефективну та надійну систему.

Якщо говорити про 16 Гб оперативної пам’яті, вам не доведеться турбуватися про матеріали ECC.


Дякуємо за швидку відповідь. Я, хоча вище 4 Гб оперативної пам'яті, вам знадобиться ECC. Це впевнено, що 256 Гб оперативної пам’яті або половина ТБ оперативної пам’яті ECC - ОБОВ'ЯЗКОВО. Але я хоч 16 Гб був свого роду обмеженням ... У будь-якому випадку це дивно ... Xeon 4C / 8T Sandybridge коштує на 100 доларів менше (на моєму місці), ніж еквівалентний настільний процесор. Загальна вартість ~ однакова. Тут немає недоліків ECC. Ви впевнені, що ECC не потрібен ???
користувач51166

@ user51166 На 100% впевнений. 16 Гб - це як стандарт, який сьогодні використовується на середніх / високих верстатах.
inf

2
Те, що стандарт дефакто не обов'язково означає, що він досить надійний. Вже читайте про випадки в Інтернеті, коли всі дані на диску пошкоджувалися на жорсткому диску не через контролер SATA, а через погану (не-ecc) ОЗУ.
користувач51166

1
@ user51166 Скажіть хлопцеві, який сказав це, що не-ECC, безумовно, не було його проблемою.
інф

1
"Зареєстрований ECC> Unbuffered ECC" Ні / іноді. Незаговорений / незареєстрований ECC буде фактично швидше. Буферизований / зареєстрований ECC буде принаймні на одну дію реєстрації повільніше, але ви можете додати більше DIMM в канал пам'яті. (І більше пам'яті МОЖЕТ зробити вашу систему швидшою, навіть якщо затримка збільшується). Тож радше тоді жорсткий "Так / ні", правильна відповідь - це "залежить".
Геннес

45

Здається, ECC виправляє лише поодинокі біти помилок.

Правильно. Для виправлення більшої кількості помилок знадобиться більше біт. У цьому випадку ви вже використовуєте 10 біт для зберігання 8 біт інформації, "витрачаючи" 20% мікросхем пам'яті, щоб дозволити виправлення одного біта і до двох біт виявлення помилок.

Він працює наступним чином. Уявіть собі 0або 1. Якщо я читаю чи то, то просто сподіваюся, що я прочитав правильно. Якщо 0 перекинувся на 1 за допомогою якогось космічного випромінювання чи поганої мікросхеми, я ніколи не дізнаюся.

У минулому ми намагалися вирішити це з чесності. Паритет додав дев'ятий біт на 8 біт, що зберігаються. Ми перевірили, скільки нулів і скільки 1 було в байті. Дев'ятий був встановлений, щоб зробити це парним числом. (для рівного паритету) Якщо ви коли-небудь читали байт і число було неправильним, знаєте, що щось не так. Ти ж не знаєш, який біт помилився.

ECC на цьому розширився. Він використовує 10 біт і складний алгоритм для виявлення, коли один біт перевернувся. Він також знає, якою була первісна цінність. Дуже простий спосіб пояснити, як це було так:

Замініть всі 0s на 000. Замініть всі 1s на 111.

Тепер ви можете прочитати шість комбінацій:
000
001
010
100
101
111

Ми ніколи не на 100% впевнені, що спочатку зберігалося. Якби ми читали 000тоді, це може бути саме те, 000чого ми очікували, або всі три біти могли перевернутись. Останнє дуже малоймовірне. Біти випадково не гортають, хоча це і відбувається. Скажімо, що це відбувається раз у десять разів для легких розрахунків (реальність набагато менше). Це підходить до наступних шансів прочитати правильне значення:

000-> Або 000(99,9% впевненості), або потрійний фліп (1/1000 шанс)

001-> Ми знаємо, що щось пішло не так. Але це або було, 000і один біт перевернувся (шанс 1:10), або був, 111і два біти перевернулися (шанс 1: 100). Тож давайте розглянемо це так, ніби ми читаємо, 000але помилку записуємо.

010 -> Те саме, що вище.

100 -> Те саме, що вище.

011 -> Те саме, що вище, але якщо припустити, що це було a 111

101 -> Те саме, що вище, але якщо припустити, що це було a 111

110 -> Те саме, що вище, але якщо припустити, що це було a 111

111-> Або 111(99,9% впевненості), або потрійний фліп (1/1000 шанс)

111-> Або 000(99,9% впевненості), або потрійний фліп (1/1000 шанс)

ECC робить подібні хитрощі, але робить це більш ефективно. Для 8 біт (один байт) вони використовують лише 10 біт для виявлення та виправлення.


Оперативна пам’ять, зареєстрована ECC, може бути використана лише для плат робочих станцій / серверів. ECC unbufer можна використовувати на Intel Xeon lga1155 або AMD AM3 + на платформах Asus.

Я вже згадував, що було за частиною ECC, тепер зареєстрована проти нерозподілена частина.

У сучасних центральних процесорах контролер пам'яті знаходиться на процесорному відмиранні, починаючи давно для мікросхем AMD Opteron та з Core i для Intel. Більшість процесорів настільних ПК потім спілкуються безпосередньо з DIMM-роз'ємами, що містять оперативну пам'ять. Це працює, і зайва логіка не потрібна. Це побудова дешево, а швидкість висока, тому що від контролера пам'яті до оперативної пам'яті немає затримок.

Але контролер пам'яті може керувати обмеженим струмом лише з високими швидкостями. Це означає, що існує обмеження на кількість розеток пам'яті, які можна додати до материнської плати. (І щоб зробити це складнішим, наскільки можуть використовувати DIMM, що призводить до ранжу пам'яті. Я пропускаю це, оскільки це вже давно).

На серверних дошках часто потрібно використовувати більше пам'яті, ніж настільних. Тому буфер "зареєструвати" додається в пам'ять. Читання з фішок на DIMM спочатку копіюються в цей буфер. Через тактовий цикл пізніше цей буфер з'єднується з контролером пам'яті для передачі даних.

Цей буфер / регістр затримує речі, роблячи пам'ять повільнішою. Це небажано, і тому він використовується / потрібен лише на дошках, у яких багато банків пам'яті. Більшість плат споживачів цього не потребують, а більшість споживчих процесорів цього не підтримують.

Прямо підключена, небуферизована оперативна пам’ять проти буферизованої / зареєстрованої оперативної пам’яті не є випадком, коли одна краща або гірша за іншу. Вони просто мають різні компроміси щодо кількості слотів для пам'яті. Зареєстрована оперативна пам'ять дозволяє отримати більше оперативної пам’яті ціною деякої швидкості (і, можливо, витрат). У більшості випадків, коли вам потрібно якомога більше пам’яті, ця додаткова пам’ять більше, ніж компенсує оперативну пам’ять, що працює з трохи меншою швидкістю.

Сумніви, які у мене виникають (в основному стосуються плати asus am3 +): чи є оперативна оперативна пам'ять, що не розширюється ECC, настільки ж добре, як ОЗУ, зареєстрована ECC (з точки зору безпеки та надійності)? Або це гірший вибір. Мені мало хвилюється швидкість. **

З точки зору безпеки та стабільності, нерозподілені ECC та зареєстровані ECC є однаковими.


Детальніше: сервер використовуватиме корпус сервера з накопичувачами до 24 х 3 ½ '' і повинен споживати якомога менше.

24 приводи збирають багато енергії. Скільки залежить від накопичувачів. Мій накопичувач SAS, що має 140 Гб, 15 Кб, що працює в обороті, складає 10 ватт на холостому ходу, як і диск SATA 7k2 1 TB. При використанні обидва малюють більше.

Помножте це на 24. 24х10 Вт на холостому ході означає 240 Вт, просто утримуючи диски, що обертаються, долаючи опір повітря. Подвійний результат, який використовується.


LGA1155 здається, що в цьому сенсі краща ставка (TDP ~ 20-95 Вт) порівняно з іншими (> 80 Вт) удвічі вище ціни.

Intel кращий за низьких потужностей процесорів під час написання та для згаданих вами процесорів.

Будь-яка пропозиція вітається. Скажімо, менше 120 Вт на холостому ходу (~ з 10 жорсткими дисками з 24).

Якщо ви їдете на FreeBSD, уважно подивіться на ZFS. Це може бути чудово. Багато його більш вдосконалених функцій (наприклад, дедуплікація та / або стиснення) використовують серйозну потужність процесора та потребують багато пам'яті. ZFS для базового використання з ZRAID буде чудовим для обох згаданих вами наборів процесорів та 16 Гб, але якщо ви ввімкнете такі функції, як дедуплікація, вам слід уважно вивчити рекомендовану пам'ять, необхідну для вашого диска; Деякі путівники рекомендують до 5 Гб на ТБ пам’яті .

Ще дві речі:

  1. Я нічого не бачив щодо підключення накопичувачів. Деякі плати можуть мати до 10 портів SATA. Але для нічого над цим вам знадобляться додаткові картки. Якщо ви розглядаєте апаратний RAID, то, можливо, найкраще планувати це з самого початку.
  2. Вихід з ладу: Якщо ви використовуєте множники порту SATA, тоді уважно подивіться, як вони діють, якщо привід SATA вийшов з ладу. Часто це не дуже. Не є великою проблемою для облаштування будинків, але дуже не для підприємств. Можливо, вам доведеться врахувати, як окремі диски теж обробляють помилки. Причина, яку деякі диски позначають як "NAS" або "RAID", полягає в тому, що вони обробляють помилки інакше, ніж звичайні диски. Без RAID, ви хочете, щоб накопичувач повторився якомога більше разів. За допомогою RAID ви хочете, щоб накопичувач швидко вийшов з ладу , тому ви можете прочитати з іншої копії.

5
Оголошення, оскільки це насправді відповідає на питання, а інше - більш практичні / анекдотичні поради. Ми будемо ігнорувати, що він трохи загрожує перед тим, як потрапити до реєстру проти нерозподіленої частини;)
ernie

1
Так, це меандр. Я намагався бути ретельним, але мені справді не варто ставати письменником. (або з художньої літератури, або з посібників).
Hennes

Хе, ми також ігноруємо, що я спочатку перестав читати, коли ви почали звертатися до влади та інших проблем. . . ;)
ernie

1
Це відмінна відповідь, вона не може бути коротшою і все-таки так добре вирішує всі питання. Щойно я зробив помірне редагування, яке очистило ваш текст, що допоможе після його застосування. Навіть вилучили своє вибачення, щоб обрізати два рядки - прийнята відповідь тут була не дуже корисною. Я коротко розширив питання щодо дедуплікації ZFS та керування помилками приводу, поки я був там. Вирішили не потрапляти у вібрацію, навіть якщо це буде проблемою і з 24 накопичувачами.
Грег Сміт

Дякуємо за уточнення зареєстрованого та небуферованого, а також причини, що стосуються RDIMM.
Махмуд Аль-Кудсі

1

Два окремих питання.

ECC Vs non-ECC

  • використовуйте ECC там, де важливо продовження часу
  • коштує більше - потрібно (кратні) 9 фішок замість 8
  • материнська плата повинна підтримувати її, щоб використовувати її

Зареєстровані протирозрядники проти:

  • Може мати (набагато) більше загальної оперативної пам’яті, встановленої з зареєстрованими DIMM
    • Менше електричного напруження на інтерфейсі контролера пам'яті
  • Але всі встановлені DIMM повинні бути зареєстровані чи ні
    • повинні видалити неблоковані DIMMS, якщо оновлено до Зареєстрованого
  • Також дорожче і цикл повільніше для доступу
    • У випадку розблокування дещо нижча затримка, якщо це має значення
    • будь-який випадковий доступ у будь-якому випадку займає багато циклів
    • Зауважте, абсолютна затримка доступу (час у наносекундах) значно покращилась за всю історію використання DRAM в ПК
      • вартість, потужність і пропускна здатність натомість значно покращилися
      • Кеш пам'яті приховує затримку для більшості доступу до пам'яті
    • Більш тривала затримка найбільше шкодить однотонній роботі в режимі реального часу
      • зазвичай не сильно впливає на випадки використання "сервера"
    • Відсутність / мінімальна різниця у пропускній здатності та загальній продуктивності
      • послідовність смуги доступу не змінюється
      • Кеші L2 / L3 означають, що фактичні шаблони доступу здебільшого замінюють рядки в кеш-пам'яті, тому, як правило, в будь-якому випадку "лопнув" доступ
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.