これは提案された Canonical Question サーバーメモリについてです。
Dell R420サーバーを購入する必要があり、スペアリングの有無にかかわらず、さまざまな組み合わせ(1600 MHzと1333 MHz RDIMMSとUDIMMS)とパフォーマンス最適化vsアドバンストECCがあります。 UDIMMを備えた4GB DIMMしかないことに気付いたので、最終的には16GB RDIMMを使用する必要があります。
これらのオプションとは何ですか。また、それらについて何を知る必要がありますか?
サーバーのRAMには、特定の構成で機能する容量と機能を指定するためのいくつかの一般的なメトリックが付属しています。これを混同するのを助けるために、本質的に同じものには異なる名前があり、「標準」の名前は、使用しているRAMのタイプによって異なります。
これは簡単です。 RAMはさまざまな容量で提供されるという概念をすでに誰もが知っているはずです。RAMの特定のタイプは、1本のスティックの最大サイズを決定します。しかし、実際の実装ではシステムがサポートできるRAMの量が制限されているため、これは無関係です(つまり、システムのドキュメントでシステムのサポート容量を確認してください)。
RAMの容量は、さまざまな構成で編成できます。通常、特定のサイズのRAMの標準構成は1つしかありません。ウルトラチープRAM=を購入する場合は、 -標準(特に組織について言及している場合)であり、サーバーでサポートされていません。
この回答では、RAMの速度をシステムの最大速度に一致させる必要があります。RAMこれは1つまたは2つの "速度"より高速でも低速で動作します。同様にRAMつまり、1つまたは2つの"速度 "低速で動作しますが、低速でも動作します。
ECCは、完全性保護の最も一般的な形式です(つまり、宇宙線がビットを反転させず、メモリの場所がどれも不良にならないようにします)。ほとんどのシステムでは、RAMは、システムが必要とするものは何でも、ECCまたは非ECCである必要があります。72ビットメモリと呼ばれることもあります(64ビットのメモリデータチャネルの残りが8ビットのECCデータバスに沿って)。
RAMにECCがある場合、その保護情報はさまざまなタイミングでチェックできます。最も基本的な保護は、RAM atそのメモリの場所が読み取られます。より高度なオプションを使用すると、システムが定期的にECCをチェックできます。これは「メモリスクラブ」と呼ばれることがよくあります。ディスクアレイのスクラブと同様に機能します。ディスクアレイのスクラブと同様に、それがない限り有効にする必要があります。これを無効にするのに十分な理由があります。
ECCは Row Hammerバグ の影響を軽減する手順の1つです。
私たちは電気技術者ではないので、本当に知っておく必要があるのは、バッファリングまたはレジスタードRAMにより、システム内でより多くのRAMが可能になることです。ECCのようにはシステムでサポートする必要があるものです。ECCとは異なり、多くの新しいサーバーはUnbuffered/UnregisteredとBuffered/Registered RAMの両方をサポートします。古いサーバーはどちらか一方のみをサポートする傾向がありました。レジスターは一種のバッファーですが、用語は同じ意味で使用されていますRAMに適用すると、UnbufferedとRegisteredを同時に混在させるシステムを見たことがありません。
UDIMMが表示されている場合、「U」は「バッファなし」を表します。 RDIMMの「R」は「登録済み」です。
ランク
登録済みRAMは、「ランク」で測定される明確に定義された電気的「使用法」特性を持っています。システムの各RAMチャネル(またはバス)は、通常、システムは2つの速度で評価されます(つまり、チャネルは通常、最大AランクのX速度で実行されますが、それ以上の場合はY速度で、最大Bランクのみが可能です)。
RAMは同じ容量と速度で利用できますが、ランクの数が異なります。通常、容量が大きいほど、モジュールが使用するランクが多くなります。低電圧モジュールが使用するランクは少なくなります(モジュールの仕様)。
サーバー用に購入する必要がある物理的なRAMに関係のないさまざまな構成オプションがあります。これらには、RAMのミラーリングが含まれます(RAID1と同様ですが、 RAM)、スペアリング(文字通りスペアRAM故障した場合、スペアがそれを置き換える)、タイミング、および関連する最適化。
最近のサーバーでは、通常、個別のノースブリッジチップではなく、メモリコントローラーがCPUに統合されています。つまり、複数のCPUをサポートするシステムでは、そのスロットを使用するために、メモリスロットに対応するCPUソケットを実装する必要があります。同様に、一部のCPUでは、システムを機能させるために、スロットにメモリを装着する必要がありました。詳細については、システムのドキュメントを参照してください。
最近のサーバーには通常、複数のメモリチャネルがあります。これらのチャネルはほとんど独立して動作するため、メモリを集中的に使用するシナリオでより大きなメモリ帯域幅が可能になります。一般に、メモリをすべての実装されたすべてのCPUのすべてのチャネルに均等に配分して、最高のパフォーマンスを確保することを現実的にする必要があります。
既存のサーバーのメモリをアップグレードするときは、まず、現在インストールしているメモリモジュール、および(メインボード)ベンダーとBIOSで実際にサポートされている追加/新規/交換モジュールを確認することから始めます。
保証およびハードウェアサポート契約に準拠するには、市販のメモリモジュールを使用するのではなく、ベンダーから純正のスペアパーツを購入する必要がある場合があります。ほとんどのベンダーは、ハードウェアの認定済みスペアパーツをリストしています。また、ほとんどのメモリメーカーには、サーバーで動作する製品にアクセスするための製品セレクターもあります。
一般的な落とし穴は、古いサーバーは新しい大容量メモリモジュールをサポートしていないということです。これは、他のすべてのプロパティに基づいており、適切に動作することが期待されます。
最も一般的なアプローチは、より大きなサイズのメモリモジュールにアップグレードするのではなく、現在空のメモリバンクを実装することです。 [〜#〜] nb [〜#〜]空のCPUソケットに割り当てられたメモリバンクにデータを追加することはできません。
あなたが今持っているものを見つける
HPのILOなどの一部のリモート管理コンソールは、現在のメモリ構成を表示します。
Linux dmidecode -t memory
コマンドは、メインボードがサポートするメモリの最大量と、装着されたメモリバンクに存在するメモリおよび空のメモリに関する情報を表示します。
Windowsシステムの場合、WMIはwmic MemoryChip
。
さまざまなサイズのメモリモジュールの混合
それはいつもいくらか間違っていると感じますが、それ自体が悪いという説得力のある理由は見たことがありません。 オーナーズマニュアル は、メモリに関するすべてのルールに準拠している場合に、サポートされている構成であることを確認します。
マルチCPU構成では、各メモリが同じメモリチャネルで同じ量のメモリを備えたバランスのとれたメモリ構成が必要です。つまり、2 CPU構成では、スロットA1に2 GB、スロットA2に4 GBを使用できます。 2番目のCPUにミラーリング、スロットB1に2 GB、スロットB2に4 Gb。
速度の異なるメモリモジュールの混合
メインボードがそれらの速度をサポートしている限り、異なる速度のモジュールを混在させることができます。 BIOSは、最も一般的な特徴を見つけて、すべてのモジュールが同じ速度で実行されるように調整することになっています。通常、より高速なメモリはより高価になるため、一部の古いシステムを共食いにして他のシステムをアップグレードすることはできますが、これはわずかなお金の無駄のようです。