Можно ли загрузить потребительскую систему i7 с процессором Xeon и памятью ECC?
Я прочитал пару постов в Интернете, которые, по-видимому, предполагают, что можно загрузить хотя бы несколько материнских плат i7 с небуферизованной памятью ECC и установленным процессором Xeon 43xx.
Я могу загрузить свою материнскую плату MSI P55-GD80 с процессором X4370 и стандартной не-ECC памятью, но она зависает с почтовым кодом FF, когда я устанавливаю два небуферизованных модуля DIMM памяти ECC. Интересно, что если я неправильно установил память, она отображает короткую последовательность почтовых индексов, после чего звучит звуковой код без памяти.
У меня длинный проект, запланированный для взлома эталонного кода памяти, чтобы разрешить загрузку с EIM DIMM (без ECC), с последующим включением однобитового исправления ошибок в качестве второго проекта.
Кто-нибудь пытался это сделать? Успешно?
3 ответа
Раньше я писал BIOS для жизни, и я все еще вовлечен в этот бизнес, но больше не занимаюсь большим количеством интересного кодирования.
Отвечая на вопрос: зачем мне покупать дорогую материнскую плату с ограниченными возможностями расширения PCI-e для рабочей станции? Когда лучшее оборудование доступно гораздо дешевле? Я думаю, что ответ очевиден. Это для меня. Я хочу лучшее оборудование для разработки программного обеспечения. А преимущества серверной платы (iBMC и поддержка удаленного управления) в моих обстоятельствах кажутся мне не очень важными.
Тем не менее, я знаю, что 16 ГБ памяти не-ECC (моя целевая конфигурация) будет генерировать панику и поврежденные сектора на моих жестких дисках довольно регулярно. Числа, такие как один сбой памяти каждые несколько дней, кажутся довольно распространенными в статьях в сети, обсуждающих системы с таким объемом оперативной памяти.
С 16 ГБ памяти, не относящейся к ECC, на этой материнской плате я вижу 2-3 сбоя в неделю при выполнении диагностики стандартной памяти (конечно, я не смог протестировать конфигурацию ECC, но я ожидал, что вероятность сбоя снизится практически до 0, если бы мне потребовалось 2 из этих 3 сбоев в одном и том же 64-битном слове).
Кажется, это вполне то, чего я должен ожидать, и для меня достаточно проблемы, так как я готов приложить некоторые усилия для ее устранения.
Я также не хочу просто улетать и делать взлом самостоятельно, если кто-то уже провел какое-то расследование ситуации. К сожалению, я не знаю достаточно людей, которые взломали BIOS, чтобы иметь личные связи. Таким образом, вопрос.
Но если я единственный, кто смотрит на проблему, я немного удивлен, но я не возражаю углубляться в взлом BIOS. Это может или не может стоить хлопот.
Вот почему я поставил вопрос в области вопросов программирования, а не в области администратора. Это требует изменения кода BIOS (я был бы очень удивлен, если честно).
Я вполне уверен, что системное оборудование (за исключением, возможно, отсутствия 8 или 16 проводов для 8 битов четности) способно работать в режиме полного ECC - процессор включает контроллер памяти с поддержкой ECC, модули DIMM представляют собой небуферизованные модули DIMM ECC с те же электрические требования, что и у небуферизованных модулей DIMM без ECC, поэтому единственная задействованная функция материнской платы - это набор проводов и пассивных компонентов, которые соединяют их.
И в ответ на комментарий, что 85% потребительских плат не смогут загрузиться с ECC: мой опыт находится в том же парке событий. Без изменения содержимого SPD EEPROM на модулях DIMM КАЖДАЯ загруженная мной плата не загружается с установленными модулями ECC DIMM (все они были платами DDR и DDR2, но не DDR3). Однако при использовании взломанных модулей ECC DIMM все они успешно загрузились, а те, на которых я запускал diags memory all, работали в течение нескольких дней без ошибок. Таким образом, ошибка загрузки - это решение, принятое микропрограммой /BIOS материнской платы или чем-то еще, считывающим содержимое EEPROM SPD.
ЗАПИШИТЕ примечание о последовательности ошибок, имеющей смысл: меня беспокоит то, что я не вижу никаких признаков того, что BIOS следует этой последовательности. Похоже, что он сначала проверяет правильность установленных модулей DIMM ECC (поскольку я не вижу кодов PORT80, отображаемых в случае правильно установленных модулей DIMM ECC), затем выполняет некоторые другие действия (несколько кодов PORT80) и, наконец, сообщает, что неправильно установленные модули DIMM ECC не установлены в правильные слоты.
На самом деле я нахожу это многообещающим, так как это заставляет меня думать, что может быть явный тест для модулей DIMM ECC, выполняемых на ранних этапах POST (возможно, для предотвращения запуска системы с процессором Xeon и модулями DIMM ECC).
Я совершенно сбит с толку относительно того, почему вы должны это делать, но краткий ответ таков: нет, вы не собираетесь загружать (большинство) потребительских плат чипсетов Intel для загрузки с ECC RAM. Если вам нужна ECC RAM, приобретите плату с чипсетом для сервера.
Вы можете взломать это? Может быть. Есть ли какая-то непонятная плата с разложенными ссылочными кодами, которая загрузит ее? Наверное. Это норма? Нет.
Более подробно о том, что сказал Фопедуш: я видел, что большинство (как на 85%+) потребительских плат не загружаются с ECC RAM. Это просто не то, что большинство потребительских плат заботятся о том, чтобы делать или спроектировать. Как правило, если кто-то потратил все деньги, чтобы получить процессор Xeon и ECC RAM, он просто получит серверную плату для его установки.
e: Еще одна вещь, на которую стоит обратить внимание: вы сказали, что при неправильном размещении ОЗУ вы получите почтовые индексы, и это имеет смысл. Процесс загрузки сначала проверяет, установлена ли любая ОЗУ, затем проверяет, правильно ли она установлена, и, наконец, проверяет, совместима ли она. Он будет проходить проверку "установлен неправильно", прежде чем он перейдет к проверке "это ECC RAM, и я не могу загрузить его". ОЗУ ECC - это всего лишь 240-контактная SDRAM по своей сути.
Да. По словам Puget Systems, некоторые потребительские материнские платы неофициально будут работать с процессорами Xeon и ECC RAM. Вот один пример:
Asus X99 Deluxe II - это обновление одной из лучших материнских плат для процессоров Intel Core i7 и Xeon E5. Чипсет X99 на этой плате поддерживает память DDR4 и неофициально также работает с зарегистрированной памятью ECC, доступной в более высоком объеме. Предоставляется также узел подключения: по четыре порта USB 2.0, 3.0 и 3.1, а также два гигабитных порта Ethernet, WiFi и аудиоподключения. Внутренне он имеет несколько соединений SATA, один слот M.2 и два новых порта U.2.
Я попробовал эту материнскую плату, и она действительно работает с процессором Xeon и ECC RAM. Puget продала много систем с такой конфигурацией, поэтому я полагаю, что это надежное решение.
Это старый вопрос, но Google все еще подает его в ответ на поиски по этой теме, поэтому я решил опубликовать некоторую информацию из текущей эпохи.