Изучение отказоустойчивости на платформе AMD Ryzen и материнской плате ASUS Prime B450M-A версии II
реклама
Около 15 лет тому назад на "Оверклокерах" вышла моя статья:
Комплектование и тестирование отказоустойчивого компьютера на платформе AMD K8
В ней изучались уникальные свойства платформы AMD, благодаря которым почти каждый ее процессор, даже самый бюджетный, содержит в себе контроллер памяти с коррекцией ошибок. Поэтому вопрос применения модулей памяти с ЕСС заключался только в подборе системной платы с походящей разводкой сигнальных линий.
Сейчас мы продолжим тему AMD на современном процессорном гнезде Socket AM4 - и именно, поинтересуемся свойствами ее нового процессора Ryzen 5 2600 c ядром Pinnacle Ridge и бюджетного процессора Athlon 200GE с ядром Raven Ridge. Для испытания этих процессоров была выбрана бюджетная, но способная плата ASUS Prime B450M-A, для которой производителем заявлена поддержка модулей памяти Unbuffered ECC, с оговоркой - в зависимости от процессора. Вот эту важную оговорку мы и будем изучать в железе.
1. Материнская плата ASUS Prime B450M-A версии II
реклама
Плата ASUS Prime B450M-A пришла мне во второй версии ASUS Prime B450M-A-II, которая отличается от исходного варианта рисунком и, что более существенно, наличием радиатора на силовых транзисторах VRM - не на всех, а только на тех, что сильнее всего греются при разгоне. На плате уже прошита поддержка процессоров Ryzen 3 и модулей памяти общим объемом до 128 ГБ, а также имеется функция BIOS FlashBack, позволяющая прошивать с USB поддержку новых процессоров и памяти до их установки на материнскую плату. Соответствующая кнопка FlashBack выведена на заднюю панель в то место, где раньше находились два разъема PS/2. К сожалению, из-за этой кнопки на плате остался только один комбинированный разъем PS/2. А так же заявлена поддержка USB 3.2 вместо USB 3.1, но это по факту ничего не меняет, поскольку обеспечивается только Gen 1 и Gen 2.
В качестве бонуса к плате второй версии прилагается расширенный набор всевозможного софта, c перечнем которого можно познакомиться на сайте ASUS. Коробка тоже улучшена в том плане, что на ней увеличен размер логотипа Aura Sync, и она действительно смотрится еще более красиво!
реклама
Плата ASUS Prime B450M-A-II поддерживает SSD NVMe и нравится мне удачным расположением разъема M2, благодаря которому модуль накопителя обдувается процессорным кулером. Этим, а также наличием шести внутренних разъемов SATA III (четыре из которых работают одновременно с SSD NVMe), четырех слотов для памяти DDR4 и трех способов подключения монитора (VGA, DVI и HDMI) данная плата интереснее еще более бюджетной модели ASUS Prime B450M-К. Как положено, в комплекте платы предусмотрены два кабеля SATA (прямой и угловой) и винты для крепления накопителя M2. А также обращает на себя внимание внутренний разъем для подключения планки с COM портом.
Приятной особенностью платы оказалась способность платы управлять оборотами трех вентиляторов, причем если процессорный кулер управляется только по четырехпиновому PWM, то для корпусных вентиляторов можно выбирать режимы PWM / DC. Это позволяет без дополнительных расходов создавать малошумные системы. В общем, данная плата для Socket AM4 оставляет впечатление всесторонне продуманного продукта, "бюджетность" которого совершенно не ограничивает возможности по созданию современных компьютерных систем - естественно, кроме того особого случая, когда надо поставить "много процессоров и много видеокарт".
Но больше всего нас будет интересовать возможность применения девятичиповых модулей памяти с ECC, поскольку наша бюджетная плата может и это!
реклама
Вот эти девятичиповые модули:
Обратите внимание, что на них нет никаких дополнительных микросхем, как, например, на модулях Registered ECC, которые подходят только к определенным платам серверного класса. Здесь у нас память Unbuffered ECC - 9 чипов памяти, работающих с 72 линиями данных - в отличие от обычных (а по факту урезанных) 8-чиповых модулей без ЕСС с 64 линиями данных.
Модули Unbiffered ECC могут быть двухсторонними - в этом случает они содержат 18 чипов памяти. По вопросу их совместимости с платой надо смотреть QVL. Если какие-то модули памяти протестированы только в модификации без ЕСС, то и модификация с ECC тоже будет работать.
2. Тестовая система
реклама
Вот моя тестовая система:
CASE ASUS Ascot 6AR/2
PSU Aerocool ATX 500W CYLON 500
MB ASUS Prime B450M-A-II, BIOS 0310, 2409
CPU AMD Ryzen 5 2600 (YD2600BBAFBOX)
CPU FAN BOX
CASE FAN DEEPCOOL (XFAN120)
RAM DDR4 2*8G Kingston KSM24ES8/8ME Unbuffered ECC
GPU 1Gb PCI-E DDR3 MSI GT 710
SSD 500 Gb M.2 2280 M Kingston A2000 (SA2000M8/500G)
HDD 1 Tb SATA III 3.5" Seagate (ST1000NM0008) 7200RPM
OS Windows Server 2012 R2 64-bit
3. Тест DDR4 Unbuffred ECC
Интрига статьи заключается в том, что современные процессоры AMD потребительского класса официально не поддерживают модули памяти с ECC, за исключением топовых Threadripper-ов. Но на англоязычных форумах упоминается то, что процессоры Summit Ridge и Pinnacle Ridge поддерживают ECC. Поэтому мы взяли 12 нм процессор Ryzen 5 2600, который относится к проверенному семейству Pinnacle Ridge и обладает наилучшим на данный момент соотношением стоимость/производительность. Что же касается новейших 7 нм процессоров Zen 3 то их свойства по отношению к памяти ECC еще предстоит проверить.
Плата при загрузке не сообщает о распознавании модулей памяти с ЕСС, но проверка на их активизацию делается просто. Применяется известная утилита Memtest86 V8.4 в бесплатном варианте:
Теперь, после того, как видно, что ЕСС включился, надо проверить, как он работает. Для этого память разгоняется до появления корректируемых ошибок:
У меня корректируемые ошибки появились в режиме DDR4-3600, при исходном DDR4-2400. В этом режиме можно работать, но возрастает вероятность появления двойной ошибки, которая не может быть скорректирована. При отключенном ECC память стабильно разгоняется до DDR4-3400.
Опция отключения ECC находится в BIOS, и она работает. Т.е. при желании можно перевести подсистему памяти на работу в восьмичиповом режиме и убедиться в том, что на смену сообщениям о корректируемых ошибках приходят сообщения об ошибках тестирования.
Отметим, что здесь приведен скриншот с заводского BIOS 0301. Сейчас на сайте ASUS выложен новый BIOS 2409, в котором CBS опций стало намного больше и они организованы в виде иерархического дерева:
- В разделе DF Common Options можно управлять скрабом оперативной памяти (DRAM Scrub Rate) - ее сканированием для обнаружения и корректирования ошибок (Enable Scrab Redirect). Скраб имеет смысл только для памяти с ECC и его включение может немного замедлить работу компьютера, в зависимости от того, насколько интенcивно проводится сканирование.
- Включение-выключение ECC спрятано в разделе UMC Common Options, подраздел DDR4 Common Options, подраздел Common RAS. И уже там находится подраздел ECC Configuration с параметром DRAM ECC Enable и новым параметром DRAM ECC Symbol Size с вариантами x4 и x8:
- Установка x4 - активирует т.н. ChipKill mode - режим, при котором по двум каналам памяти передается 144-битный код, корректирующий многократные ошибки и позволяющий работать при одном полностью отказавшем чипе памяти. Этот режим требует наличия двух или четырех модулей оперативной памяти c ECC.
- Установка x8 - это базовый режим ECC, который работает отдельно для каждого канала с использованием 72-битного кода, корректирующего одиночные и обнаруживающего двойные ошибки.
Геймеров заинтересует появление в новом BIOS поддержки Resizable BAR - новой технологии, призванной ускорить обмен данными между процессором и внешней видеокартой.
Теперь о процессорах Raven Ridge со встроенной графикой. Известно, что на этих процессорах контроллер памяти НЕ работает в режиме ECC, точно так же, как на первых процессорах AMD с GPU (Liano). Здесь AMD тоже по-своему поcледовательна: нет, значит нет. Для проверки применяется самый дешевый процессор данного типа - Athlon 200GE. Действительно, с этим процессором модули памяти работают в обычном восьмичиповом режиме, без контроля ошибок:
Это значит, что собрать совсем дешевую систему с контролем и коррекцией ошибок памяти не получится - придется отказаться от выгодных процессоров со встроенным графическим ядром и раскошелиться на видеокарту. Выглядит это несколько громоздко, в отличие от систем на профессиональных платах, где обычно бывает распаян какой-нибудь простенький видеочип с видеобуфером. Но даже с видеокартой компьютер получается во много раз дешевле собранного из комплектующих серверного класса - процессоров AMD EPYC и соответствующих системных плат Socket SP3.
4. Про отказоустойчивость дисковой подсистемы SSD
Традиционно для обеспечения отказоустойчивого хранения данных применяется объединение жестких дисков в массив RAID 1, реже - RAID 0+1, RAID 5 или RAID 6. Первые два вида дискового массива можно реализовать средствами самой платы ASUS Prime B450M-A-II, для остальных надо ставить дополнительный контроллер. Но на дворе третье десятилетие XXI века и тормозные жесткие диски в нем не котируются. Тем более что для серверного RAID надо выбирать не что попало, а достаточно дорогие диски 24x7. Если посмотреть на их стоимость за терабайт, то SSD стоят практически столько же
Однако у SSD RAID есть одна интересная особенность. Надежность SSD измеряется не в часах наработки на отказ (MTBF), а в терабайтах, которые на них можно гарантированно записать (TBW - Total Bytes Written). Этот параметр совсем невелик для современных недорогих дисков TLC, поскольку их ячейки памяти имеют малое число циклов перезаписи. И если объединить два таких диска в RAID 1, то их ресурc кончится одновременно в силу одинаковости операций записи. Т.е. они одновременно или почти одновременно выйдут из строя - можно не успеть с их заменой. А если, вопреки рекомендациям, сделать RAID 0, то ресурс TBW увеличится в два раза, поскольку на каждый SSD диск будет писаться вдвое меньше информации! Вот такой парадокс - RAID 0 из SSD оказывается надежнее, чем RAID 1.Ничего удивительного этом нет, поскольку в SSD накопителях нет механических частей и единственное, что там изнашивается - это сами ячейки памяти. А отказ микросхемы контроллера, которая всю свою трудовую жизнь сидит в одном и том же месте одного и того же компьютера - это явление исключительно редкое (примечание - спецы уже написали мне в комментариях, что это не так, но... теоретически - контроллер надежен; особый случай - флэшки и внешние диски, которые горят из-за частых втыканий).
Или вместо двух SSD дисков в RAID 0 можно поставить диск вдвое большего объема, поскольку при увеличении объема SSD ресурс TBW растет кратно. Именно такое решение подходит для платы ASUS Prime B450M-A-II - один самый быстрый накопитель NVMе возможно большего объема в слоте M.2. Поcоветовавшись, мы выбрали SSD Kingston A2000 с TBW 350. Эти накопители положительно характеризуются небольшим нагревом, наличием буферной микросхемы оперативной памяти и хорошей практикой применения. Почему NVMe, а не обычный SATA SSD? Во-первых, потому NVMe что быстрее, а во вторых, потому что на плате ASUS Prime B450M-A-II для нее имеется готовый обдув от боксового процессорного кулера. И кабели, которых нет, не будут дергаться туда-сюда при чистке системного блока.
Есть только один момент - если процессоры Ryzen работают с SSD NVMe из коробки, то бюджетный процессор Athlon 200GE его "не видит". Но на плате ASUS есть такая волшебная функция "CPU PCIe Lanes Unlocked", которая включает эту скрытую возможность, так что быстрый SSD NVMe может работать на этой плате с любым процессором Zen.
Но как же обезопасить систему от неизбежной потери информации в результате запрограммированного отказа SSD по исчерпанию TBW? А вот как.
5. Как нам запрячь в одну упряжку коня и трепетную лань?
Для Windows создается новая файловая система ReFS (Resilient file system), в которой предусматривается т.н. гибридный RAID 1 на дисках с разной скоростью - например, SSD и HDD. Он позволяет системе работать на быстром SSD, попутно дублируя все данные на медленном HDD. Если SSD внезапно откажет, то система продолжит работать на HDD. Именно такой RAID 1 мы и будем делать - на SSD NVMe Kingston и HDD Seagate.
Жаль, но ReFS все еще не научили работать с загрузочным диском Windows. Поэтому мы сделаем гибридный RAID-1 средством старой системы NTFS, которое присутствуют в ней от начала века - речь идет о т.н. "динамических дисках". После появления чипсетного RAID динамические диски Windows временно отошли на второй план, но сейчас, в связи с возникшей потребностью в создании гибридного RAID они снова востребованы. Конечно, производительноcть RAID на софте 20-летней давности будет уступать новому гибридному RAID в ReFS, но именно это решение позволяет создать гибридный загрузочный RAID прямо сейчас и посмотреть на него в работе.
В теории все выглядит просто... пока не начнутся закулисные аппаратные игры. Во времена Windows 2000, когда появились динамические массивы, организация дисковой подсистемы компьютера была понятной и лаконичной - что вы сами создали при установке операционной системы, то на диске и имеете. Но тех пор все усложнилось и запуталось до неузнаваемости. Для защиты от "крутых юзеров" Windows создает на диске собственный зарезервированный системный раздел на 500 мегабайт, откуда стартует. А если Вам посчастливилось приобрести объемистый HDD >2 ТБ и запустить установку в режиме UEFI, то этих разделов будет даже два, правда, поменьше размером (но для меня это неактуально, поскольку я с GPT без крайней необходимости не связываюсь).
Мне эти дополнительные разделы не нужны, поскольку они снижают надежность системы. Когда я ставил ось на SSD, системный раздел создался на жестком диске. При отключении HDD для проверки отказоустойчивости система, естественно, перестала грузиться. А при попытке перенести загрузчик на SSD с помощью EasyBCD система в принципе перестала грузиться и в ней пришлось ковыряться с помощью разных утилит восстановления. Для сетевика, который начал свою карьеру с установки элегантной Windows NT, все эти усложнения выглядят шокирующе.
В общем, вот понятное руководство с объяснениями о том, как обойтись без создания пресловутого зарезервированного раздела:
Как установить Windows 10 без создания скрытого раздела System Reserved
Я поступил немного проще - поскольку у меня в системе два накопителя, то сначала я в графическом интерфейсе распределил все пространство на SSD и дал Windows создать свой вожделенный раздел на HDD. Затем прервал установку и запустил ее заново при отключенном HDD.
В процессе установки полезно добавить дополнительные драйверы RAID для системной платы на случай, если Вы когда-нибудь захотите включить чипсетный RAID. Драйверов RAID целых три - RCBottom, RCRAID и RCConfig, ставятся именно в таком порядке Они копируются на загрузочную флэшку Windows и оттуда добавляются в процессе подготовки установке по пункту "Загрузить драйвер".
После всего этого на SSD есть установленная в единственный раздел Windows. Теперь надо:
- Подключить HDD и запустить оснастку "Управление дисками".
- Удалить созданный системой раздел на HDD.
- Преобразовать оба диска - SSD и HDD в динамические и добавить на HDD зеркало загрузочного раздела на SSD (и зеркала других разделов, если Вы их создали на SSD).
Все просто, а если показалось, что не очень просто - то прочитайте вот это иллюстрированное руководство:
Как создать RAID 1 массив в случае, если на одном жёстком диске уже имеется информация
Теперь HDD страховка работает! Система может грузиться и с SSD, и с HDD при отсутствии любого диска. Только не забудьте после экспериментов с отключением заново создать зеркальные разделы. Заодно потренируйтесь в оснастке, чтобы при наступлении реально критической ситуации не грохнуть ненароком раздел на единственном оставшемся рабочем диске. Основная причина потери данных в RAID, как ни странно - это не различные аппаратные проблемы, а неумелые действия при восстановлении развалившегося массива.
Насколько быстро работает гибридный RAID? Загрузка операционной системы проходит мгновенно - почти так же быстро, как загрузка с одиночного SSD. Копирование файлов тоже выполняется моментально, хотя после него HDD еще долго работает, складывая на свои пластины все записанное. Но если провести тесты с применением специальных программ, то разница в скорости будет весьма заметна. Поэтому лучше всего посмотреть не на синтетические тесты, а на реально выполняемые сервером задачи.
В целом гибридное решение подходит для серверов с малонагруженной дисковой подсистемой, где надо оптимально распределить нагрузку между SSD и HDD. Сервер очень быстро перезагружается c SSD, и это несомненный плюс данной технологии. На SSD сервере отлично идут расчетные задачи, особенно если задействовать для временных данных RAM диск. При этом сервисы вроде корпоративной электронной почты, видеонаблюдения и файлового архива лучше держать на традиционном HDD RAID, сделанном средствами чипсета или ReFS. Если применяются высоконагруженные БД или ВМ - то здесь уже потребуются более дорогие SSD MLC c автоматическим резервным копированием на архивные носители информации.
В любом случае, архитектура дисковой подсистемы современного сервера проектируется под решаемую им задачу и здесь опиcан только первый шаг в ее создании.
6. Вместо послесловия - о кулерах, надежности и разгоне
Читатель, наверное, с нетерпением ожидает известий о рекордном разгоне процессора на новой версии системной платы ASUS Prime B450M-A II. Но эта статья не про то, как понизить надежность компьютера, а про то, как ее повысить! Поэтому мы разгоняем наши отказоустойчивые компьютеры очень осторожно и безусловно по-любительски. Да и как можно заниматься экстремальным разгоном при боксовом кулере? В отказоустойчивых системах важно, чтобы кулер процессора можно было быстро поменять, а это удобнее всего делается именно на кулерах боксового типа, которые приспособлены для промышленной сборки компьютеров.
Применение модулей ECC чуть-чуть, где-то на 5% поднимает планку стабильного разгона памяти. Но эти модули не выпускаются в оверклокерских вариантах, поэтому их приобретение для целей экстремального разгона себя не оправдывает. Другое дело - любительский разгон. Даже для самых базовых модулей DDR4 2400 можно совершенно спокойно поднять частоту памяти и Infinity Fabric на 40% и закрыться коррекцией ошибок для долгой и надежной работы. А штатный разгон процессора и вовсе делается тычком в слайдер EZ System Tuning прямо на начальном экране UEFI BIOS (правда, отменить разгон так просто не получится). У меня частота процессора поднялась со штатных 3400 MHz до 3850 MHz.
Теперь немного о младшем из протестированных процессоров - Athlon 200GE. Спрашивается зачем нужны столь дешевые и урезанные CPU, если есть приличный и относительно недорогой мейнстрим? А вот для чего - для оперативной замены! Например, "разогнали" компьютер как следует при напряжении 380V, запахло дымком, не стартует. Тогда ставим резервную "затычку для сокета" и смотрим - что там осталось живого?
В конце года вообще много чего происходит и не всегда удается позаниматься именно тем, чем хочется. Так что пока все. Загружу только картинку ПСП (пропускной способности подсистемы памяти), которая получается после разгона процессора Athlon 200GE с 3.2 до 3.4 GHz и памяти DDR4 2400 до DDR4 3400. Разгон процессора делается с помощью встроенной автоматики EZ System Tuning (да, она обучена немного разгонять и этот залоченный процессор).
Верхняя часть графика ПСП - это эффект разгона кэша процессора, нижняя часть - эффект разгона оперативной памяти.
Выражаю благодарность М.Ю.Янченко за помощь в создании компьютера и екатеринбургской компании Крона-КС за подбор и оперативную доставку комплектующих.
реклама
Лента материалов
Соблюдение Правил конференции строго обязательно!
Флуд, флейм и оффтоп преследуются по всей строгости закона!
Комментарии, содержащие оскорбления, нецензурные выражения (в т.ч. замаскированный мат), экстремистские высказывания, рекламу и спам, удаляются независимо от содержимого, а к их авторам могут применяться меры вплоть до запрета написания комментариев и, в случае написания комментария через социальные сети, жалобы в администрацию данной сети.
Комментарии Правила