Сколько памяти используют серверы ?

 

Количество памяти, которое поддерживает сервер, играет важную роль для производительности.

 Объем поддерживаем сервером памяти зависит от количества и типа процессоров.

 

Типы оперативной памяти для сервера

 

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

 **Энергонезависимая память (nvm)** является противоположной и все еще может получить доступ к сохраненным данным после выключения и включения. Энергозависимая память имеет большую практичность при использовании в качестве основной памяти для вычислительного устройства, а также состоит из двух типов; динамический и статичный. В то время как **динамическое ОЗУ (dram)** является более популярным из-за цены, статическое **ОЗУ (sram)** работает с более высокой скоростью, поскольку не требует электрического обновления, такого как dram, но требует больших денежных затрат.

 **nvm** обычно используется для приложений вторичного хранения или длительного хранения.

 **ddr4** или удвоенная скорость передачи данных 4-го поколения, это форма dram, которая сегодня широко используется в передовых технологиях **серверной памяти** из-за ее низких требований к энергопотреблению и высокой скорости передачи данных. В отрасли **объем оперативной памяти сервера** обычно измеряется в гигабайтах (ГБ), доступных в терабайтной емкости, а скорость или время доступа измеряется в мегагерцах (МГц).

 Современная **память сервера** обычно классифицируется по скорости передачи данных или пропускной способности, обычно измеряемой миллионами передач в секунду (МТ/с). Распространенной формой оперативной памяти, используемой сегодня, является двойной встроенный модуль памяти (**dimm**), который обычно обеспечивает 1066 МТ/с, 1333 МТ/с, 1600 МТ/с или 1866 МТ/с. **Высокопроизводительные модули dimm** могут достигать скорости 2666 и даже 2933 mt/c

 

Что такое ecc в серверной памяти ?

 

**ecc** - это тип компьютерной памяти, который обнаруживает и исправляет наиболее распространенные виды повреждения данных в памяти.

 Для большинства предприятий крайне важно устранить повреждение данных, что является целью памяти **ecc** (код с исправлением ошибок). 

 В отличие от обычной оперативной памяти, **ecc ram** содержит дополнительный чип памяти ecc, который использует сложные алгоритмы для выявления и устранения ошибок. **ОЗУ ecc** постоянно сканирует данные по мере их обработки системой, используя метод, известный как проверка четности. **ecc ram** добавляет дополнительный бит к каждому байту, называемый битом четности.

 ### Что вызывает ошибки?

 Ошибки памяти возникают в результате электрических или магнитных помех внутри компьютера. Эта помеха может привести к тому, что один бит **dram** (динамическая память с произвольным доступом) самопроизвольно перейдет в противоположное состояние. Электрические и магнитные помехи присутствуют в качестве фонового излучения, и они возрастают с высотой. Космические аппараты, в частности, подвержены высокой частоте появления ошибок. 

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

 ### Как работает память ecc

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

 Когда данные обрабатываются, **память ecc** постоянно сканирует код по специальному алгоритму для обнаружения и исправления ошибок в однобитовой памяти.

 

Регистровая и небуферизованная память для сервера

 

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

 Вы можете увеличить **производительность сервера**, выбрав память, которая чередует данные по трем каналам. Есть также полностью буферизованные модули памяти, которые буферизуют строки данных, в дополнение к линиям управления. Противоположность зарегистрированного небуферизована, что означает отсутствие буфера между системой и **dram**. Буферизованный является более старым термином для зарегистрированных. Можно **купить небуферизованную память ecc**, но ее использование ограничено **серверами начального уровня**.

 **Регистровая память (rdimm)**, в отличие от **небуферизованной памяти (udimm)**, содержит регистр в модуле памяти, который осуществляет буферизацию данных тактового цикла между контроллером памяти системы и модулем dram. Благодаря снижению электрической нагрузки на задействованные элементы и небольшой потере производительности, система способна обрабатывать гораздо большие объемы памяти, чем обычная небуферизованная память. Почти вся регистровая память также является **памятью ecc** и обладает всеми присущими ей преимуществами. Ограничения **памяти ecc**, центрального процессора (ЦП) и материнской платы могут помешать слаженной работе регистровой памяти и вашей ОС. Чаще всего система вообще отказывается запускаться вместе с регистровыми компонентами, если какой-либо из них не соответствует требованиям ОС. При этом регистровую и небуферизованную память нельзя совмещать, даже если вы работаете с ОС, совместимой с обоими типами памяти.

 

Ранги памяти для сервера

 

**Модули памяти для сервера** могут быть одно-, двух-, четырех- или восьмиранговыми. Хотя обычно это не влияет на работу стандартных ОС, но ограничения функционирования рангов могут создавать трудности, особенно при работе с регистровыми компонентами. Чаще всего для четырехранговых или восьмиранговых модулей есть особые требования по их установке в гнезда памяти на вашем **сервере**.

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

 

Серверная память со сниженной нагрузкой (lrdimm)

 

**Память lrdimm** — это эволюционное решение для регистровой **памяти для сервера** с уникальным буфером микросхемы памяти, который обеспечивает еще большее снижение электрической нагрузки. Благодаря этому происходит уменьшение или устранение проблем ранжирования, что позволяет получить довольно высокий общий объем памяти без снижения производительности (или, по крайней мере, уменьшить этот эффект) или необходимости избавиться от заполнения всех гнезд в совместимой системе. Как и в случае с модулями памяти **udimm** и **rdimm**, **lrdimm** нельзя смешивать с другими стандартами памяти во избежание отказа системы от правильного запуска.