Pamięć RAM dla serwerów jest dostarczana z kilkoma typowymi parametrami określającymi jej pojemność i zdolność do pracy w określonej konfiguracji. Aby to pomylić, istnieją różne nazwy tego, co jest zasadniczo tym samym, a nazwa „standardowa” zmienia się w zależności od używanego rodzaju pamięci RAM.
Pojemność (1 GB, 4 GB, 32 GB itp.)
To jest dość łatwe; wszyscy powinni już znać koncepcję, że pamięć RAM ma różne pojemności. Konkretny typ pamięci RAM określa, jaki może być maksymalny rozmiar pojedynczej pamięci, ale nie ma to znaczenia, ponieważ rzeczywiste implementacje ograniczają ilość pamięci RAM obsługiwanej przez system (tj. Sprawdź dokumentację systemu, aby zobaczyć, jaką pojemność obsługuje).
Pojemność pamięci RAM może być zorganizowana w różnych konfiguracjach. Zwykle jest tylko jedna standardowa konfiguracja pamięci RAM o określonym rozmiarze. Jeśli kupujesz ultra tanią pamięć RAM przez Internet, pamiętaj, że może ona być niestandardowa (szczególnie jeśli wspomina o organizacji) i nie jest obsługiwana przez Twój serwer.
Prędkość (1600 MHz itp.)
Na potrzeby tej odpowiedzi chcesz, aby prędkość pamięci RAM była zgodna z maksymalną prędkością systemu. Pamięć RAM, która jest o jedną, a czasem o dwie „prędkości” szybsza, również będzie działać, choć przy mniejszej prędkości. Podobnie działa pamięć RAM o jednej lub dwóch „prędkościach” wolniejsza, także przy mniejszej prędkości.
Ochrona integralności (ECC lub Non-ECC)
ECC jest najczęstszą formą ochrony integralności (tj. Upewnienie się, że promienie kosmiczne nie przerzucą żadnych bitów i że żadna z lokalizacji pamięci nie ulegnie awarii). W większości systemów pamięć RAM musi być w trybie ECC lub innym niż ECC, bez względu na to, czego wymaga system. Czasami nazywa się to pamięcią 72-bitową (mylne resztki z 64 kanałów danych pamięci uzyskują 8 bitów ECC obok magistrali danych).
Gdy pamięć RAM ma ECC, te informacje o ochronie można sprawdzić w różnych momentach. Najbardziej podstawowa ochrona odczytuje i sprawdza dane ECC tylko po odczytaniu pamięci RAM w tym miejscu pamięci. Bardziej zaawansowane opcje pozwalają systemowi regularnie sprawdzać ECC. Najczęściej widziałem to tak zwane „czyszczenie pamięci”; działa podobnie jak szorowanie macierzy dyskowych; i podobnie jak szorowanie macierzy dyskowych powinieneś je włączyć, chyba że istnieje dobry powód, aby je wyłączyć.
ECC jest jednym z kroków zmniejszających wpływ błędu Row Hammer .
Pojemność elektryczna magistrali (niebuforowana lub zarejestrowana)
Nie jesteśmy inżynierami elektrycznymi, więc naprawdę musisz wiedzieć, że buforowana lub zarejestrowana pamięć RAM pozwala na więcej pamięci RAM w systemie niż bez. Podobnie jak ECC jest to coś, co musi być obsługiwane przez system. W przeciwieństwie do ECC wiele nowych serwerów obsługuje zarówno niebuforowaną / niezarejestrowaną, jak i buforowaną / zarejestrowaną pamięć RAM. Starsze serwery zwykle obsługiwały tylko jeden lub drugi. Rejestry są rodzajem bufora, ale terminy są stosowane zamiennie po zastosowaniu do pamięci RAM. Nigdy nie widziałem systemu, który mógłby jednocześnie łączyć Niebuforowany i Zarejestrowany.
Gdy zobaczysz UDIMM, „U” oznacza „Unbuffered”. „R” w RDIMM to „Zarejestrowany”.
Szeregi
Zarejestrowana pamięć RAM ma dobrze zdefiniowane charakterystyki elektryczne „użytkowania” mierzone w „szeregach”. Każdy kanał RAM (lub magistrala) w systemie może obsługiwać tak wiele szeregów przy każdej obsługiwanej prędkości. Zazwyczaj systemy są oceniane przy dwóch prędkościach (tzn. Kanał działa normalnie z prędkością X z rangami A, ale jeśli prędkość Y jest wyższa, i możliwe są tylko rangi B).
Dostępna jest pamięć RAM o tej samej pojemności i prędkości, ale zajmująca różną liczbę rang. Zazwyczaj im większa pojemność, tym więcej rang zajmuje moduł. Moduły niskiego napięcia zajmują mniej szeregów (zgodnie ze specyfikacją modułu).
Notatki stóp
Istnieje wiele opcji konfiguracji niezwiązanych z fizyczną pamięcią RAM, którą należy kupić na serwerze. Należą do nich dublowanie pamięci RAM (podobnie jak RAID1, ale dla pamięci RAM), oszczędzanie (dosłownie wolna pamięć RAM, która, jeśli się zepsuje, zastępuje ją), czas i powiązane optymalizacje.
Nowoczesne serwery zwykle mają zintegrowane kontrolery pamięci w CPU zamiast osobnego układu North Bridge. Oznacza to, że w systemach obsługujących wiele procesorów musi być zapełnione gniazdo procesora odpowiadające gniazdu pamięci, aby można było z niego korzystać. Podobnie niektóre procesory wymagały zapełnienia pamięci w swoich gniazdach, aby system mógł działać. Szczegółowe informacje można znaleźć w dokumentacji systemu.
Nowoczesne serwery zwykle mają więcej niż jeden kanał pamięci. Kanały te działają w większości niezależnie, co pozwoli na większą przepustowość pamięci w scenariuszach wymagających dużej ilości pamięci. Zasadniczo powinieneś planować dystrybucję pamięci we wszystkich kanałach na wszystkich zapełnianych procesorach tak równo, jak to jest realistyczne, aby zapewnić najlepszą wydajność.
Podczas aktualizacji pamięci istniejącego serwera powinieneś prawdopodobnie zacząć od potwierdzenia, które moduły pamięci zostały zainstalowane i jakie dodatkowe / nowe / zamienne moduły są faktycznie obsługiwane przez dostawcę (płytę główną) i system BIOS.
Aby zachować zgodność z gwarancją i umowami serwisowymi dotyczącymi sprzętu, może być konieczne zakupienie oryginalnych części zamiennych od dostawcy zamiast używania modułów pamięci po sprzedaży. Większość dostawców wymienia certyfikowane części zamienne do swojego sprzętu, a większość producentów pamięci ma również selektory produktów, które kierują cię do produktów, które powinny współpracować z twoim serwerem.
Częstą pułapką jest to, że starsze serwery nie obsługują nowych modułów pamięci o większej pojemności, które na podstawie wszystkich innych właściwości pasują i powinny działać.
Najczęstszym podejściem jest wypełnianie obecnie pustych banków pamięci, zamiast uaktualniania do modułów pamięci o większych rozmiarach. Uwaga: Nie można wypełnić banków pamięci przypisanych do pustych gniazd procesora.
Dowiedz się, co masz teraz
Niektóre konsole zdalnego zarządzania, takie jak ILO HP, wyświetlą aktualną konfigurację pamięci.
Polecenie Linux
dmidecode -t memory
wyświetli maksymalną ilość pamięci obsługiwaną przez płytę główną, a także informacje o tym, jaka pamięć jest obecna w zapełnionych bankach pamięci, a które są nadal puste.W przypadku systemów Windows WMI powinien zawierać podobne informacje
wmic MemoryChip
.Mieszanie modułów pamięci o różnych rozmiarach
Chociaż zawsze wydaje się to trochę złe, nie widziałem żadnych istotnych powodów, dla których jest to złe samo w sobie. W Instrukcja Obsługi potwierdza, że jest obsługiwana konfiguracja, pod warunkiem, że wszystkie zasady dotyczące pamięci są przestrzegane.
W konfiguracjach wieloprocesorowych potrzebujesz zrównoważonej konfiguracji pamięci, w której każdy procesor ma taką samą ilość pamięci w tych samych kanałach pamięci: tj. W konfiguracji 2 procesorów możesz mieć 2 GB w gnieździe A1 i 4 GB w gnieździe A2, o ile jest to dublowane w drugim procesorze, 2 GB w gnieździe B1 i 4 Gb w gnieździe B2.
Mieszanie modułów pamięci o różnych prędkościach
Możesz mieszać moduły o różnych prędkościach, o ile płyta główna obsługuje te prędkości. BIOS powinien znaleźć najniższy wspólny mianownik i regulować, że wszystkie moduły działają z tą samą prędkością. Ponieważ zazwyczaj szybsza pamięć jest droższa, wydaje się to niewielką stratą pieniędzy, chociaż pozwala na kanibalizację niektórych starszych systemów w celu uaktualnienia innych.
źródło