「管理者の概要」セクションの続きで、レジスタメモリ、ランク、メモリバンクなど、現代の鉄のRAMテクノロジのニュアンスを理解したいと思います。 メモリにデータを保存することの信頼性と、 BSODの悲しみの管理者を1日に数え切れないほど減らす技術について詳しく見てみましょう。
新しいタイプに関する古い歌
現在、市場では主にDDR SDRAMを備えたモジュール(DDR2、DDR3、DDR4)を提供しています。 世代によって特徴は異なります。一般的に、次の世代はそれぞれ「より速く、より高く、より強く」なりますが、好奇心が強い人のために、ここにサインがあります。
正しいメモリを選択するには、モジュール自体がより重要です。
RDIMM-レジスター(バッファー付き)メモリー。 バッファなしモジュールと比較して、大量のRAMをインストールするのに便利です。 マイナス-パフォーマンスの低下。
UDIMM(未登録DRAM)-非レジスタメモリまたはバッファなしメモリ-これは、バッファまたはレジスタを含まないランダムアクセスメモリです。
LRDIMM-これらのモジュールは、追加のメモリバッファチップの使用により、デュアルランクまたは4ランクRDIMMモジュールと比較して、より高速でより大きな容量を提供します。
HDIMM(HyperCloud DIMM、HCDIMM)-より高い密度を持ち、より高速な仮想ランクのモジュール。 たとえば、このようなモジュールの4つの物理ランクは、コントローラーに対して2つの仮想として表すことができます。
- FBDIMMは、高い信頼性、速度、密度を備えた完全にバッファリングされたDIMMです。
これらのタイプを同時に使用しようとすると、マザーボードやメモリ自体の損傷など、さまざまな悲しい結果を招く可能性があります。 ただし、クロック周波数の下位互換性があるため、特性が異なる1つのタイプのモジュールを使用することは可能です。 確かに、メモリサブシステムの最終的な周波数は、最も遅いモジュールまたはメモリコントローラの機能によって制限されます。
すべてのタイプのSDRAMには、ボリュームとパフォーマンスに影響する基本的な特性の共通セットがあります。
動作の頻度とモード。
ランク;
- タイミング。
もちろん、実際にはさらに多くの違いがありますが、適切に機能するシステムを構築するには、これらに限定することができます。
動作の頻度とモード
周波数が高いほど、全体的なメモリパフォーマンスが高いことは明らかです。 ただし、メモリはマザーボードのコントローラーが許可するよりも速く動作しません。 さらに、最新のモジュールはすべてマルチチャネルモードで動作できるため、全体のパフォーマンスが最大4倍に向上します。
動作モードは4つのグループに分類できます。
シングルモード-シングルチャンネルまたは非対称。 システムにメモリモジュールが1つだけ取り付けられているか、すべてのモジュールが互いに異なる場合に点灯します。 実際、マルチチャネルアクセスの欠如を意味します。
デュアルモード-2チャネルまたは対称。 メモリスロットはチャネルにグループ化され、各チャネルに同じ量のメモリが取り付けられます。 これにより、ゲームでは5〜10%、重いグラフィックアプリケーションでは最大70%作業の速度を上げることができます。 メモリモジュールは、異なるチャネルにペアでインストールする必要があります。 マザーボードメーカーは通常、ペアのスロットを1色で強調しています。
トリプルモード-3チャネル操作モード。 モジュールは3つのグループにインストールされます-3つのチャネルのそれぞれに。 次のモードも同様に機能します :4チャンネル(クワッドチャンネル)、8チャンネル(8チャンネルメモリ)など。
- フレックスモード-サイズが異なるが同じ周波数の2つのモジュールをインストールするときに、RAMのパフォーマンスを向上させることができます。
最大のパフォーマンスを得るには、システムで可能な最大周波数で同じモジュールをインストールすることをお勧めします。 この場合、使用可能なマルチチャネル操作モードに応じて、ペアまたはグループでインストールを使用します。
メモリのランク
ランクは、いくつかの64ビットメモリチップのメモリ領域です(ECCがある場合は72ビット。これについては後で説明します)。 設計に応じて、モジュールには1つ、2つ、または4つのランクが含まれる場合があります。
このパラメーターは、メモリモジュールのマーキングから確認できます。 たとえば、キングストンの場合、ランクの数は、マーキングの中央にある3文字(S(シングル-ピアツーピア)、D(デュアル-ピアツーピア)、Q(クアッド-4ピア)のいずれかで簡単に計算されます。
Kingstonモジュールのマーキングの完全なデコードの例:
サーバーのマザーボードは、使用できるメモリランクの総数によって制限されます。 たとえば、4つのデュアルランクモジュールが既にインストールされている状態で8つのランクを可能な限り設定できる場合、空きスロットにメモリを追加することはできません。
モジュールを購入する前に、サーバープロセッサがサポートするメモリの種類を明確にすることは理にかなっています。 たとえば 、Xeon E5 / E5 v2は、シングル、ダブル、およびクワッドレジスタレジスタDIMM(RDIMM)、LRDIMM、およびバッファーなしECC DIMM(ECC UDIMM)DDR3をサポートしています。 また、 Xeon E5 v3プロセッサは、シングルおよびデュアルランクレジスタDIMMとLRDIMM DDR4をサポートしています。
退屈なタイミングの略語について少し
タイミングまたはメモリレイテンシ(CASレイテンシ、CL)-コマンドの受信から実行までのティックの遅延量。 タイミング番号は、次の操作のパラメーターを示します。
CL (CAS Latency)-プロセッサがメモリからデータを要求してから、データがメモリによって発行されるまでに経過する時間。
tRCD (RASからCASへの遅延)-マトリックス行(RAS)へのアクセスから必要なデータを含むマトリックス列(CAS)へのアクセスまでの経過時間。
tRP (RASプリチャージ)-マトリックスのある行へのアクセスが閉じられてから、別の行へのアクセスが開始されるまでの間隔。
tRAS-メモリを次のリクエストの待機状態に戻すための一時停止。
- CMD (コマンドレート)-メモリチップをアクティブにしてから最初のコマンドでアクセスするまでの時間。
もちろん、タイミングが少ないほど、速度は向上します。 しかし、低レイテンシの場合は、クロック速度で支払う必要があります。タイミングが遅くなるほど、メモリに許可されるクロック速度が遅くなります。 したがって、「黄金の平均」が正しい選択です。
「Low Latency」とマークされたより高価な特別なモジュールがあり、これは低いタイミングで高い周波数で動作します。 メモリを拡張するとき、すでにインストールされているものと同様のタイミングでモジュールを選択することが望ましいです。
RAMのRAID
RAMにデータを保存する際のエラーは避けられません。 それらは、ハードウェア障害と不規則なエラー(機能不全)に分類されます。 パリティメモリはエラーを検出できますが、修正することはできません。
不規則なエラーを修正するには、ECCメモリを使用します。これには、個々のビットのエラーを検出および修正するための追加チップが含まれています。
エラー修正方法は次のように機能します。
64ビットのデータがメモリセルに書き込まれると、8ビットのチェックサムが計算されます。
プロセッサがデータを読み取ると、受信したデータのチェックサムが計算され、元の値と比較されます。 金額が一致しない場合、これはエラーです。
- エラーがシングルビットの場合、間違ったビットは自動的に修正されます。 2ビットの場合、オペレーティングシステムに対応するメッセージが送信されます。
アドバンストECCテクノロジーは、単一チップ内のマルチビットエラーを修正することができ、それによりDRAMモジュール全体が故障した場合でもデータ回復が可能です。
BIOSでエラー修正を個別に有効にする必要があります
ほとんどのサーバーメモリモジュールはレジスター(バッファー)です-データ転送制御レジスターが含まれています。
レジスタを使用すると、大量のメモリを設定することもできますが、そのため作業中に追加の遅延が発生します。 実際には、読み取りと書き込みはそれぞれ、メモリバスからDRAMチップに到達する前に1クロックサイクルの間レジスタにバッファされるため、レジスタメモリは非レジスタ1クロックサイクルよりも遅くなります。
ソース-nix.ru
すべてのレジスタモジュールと完全にバッファリングされたメモリもECCをサポートしますが、その逆は必ずしも当てはまりません。 信頼性の理由から、サーバーにはレジスタメモリを使用することをお勧めします。
マルチプロセッサシステムとメモリ
複数のプロセッサを正しく高速に動作させるには、各プロセッサが直接アクセスのために独自のメモリバンクを割り当てる必要があります。 ドキュメントで特定のサーバーのこれらの銀行の組織について読むことをお勧めしますが、一般的なルールはこれです。銀行間でメモリを均等に分配し、それぞれに同じタイプのモジュールを配置します。
マザーボードが必要とするよりも低い頻度でモジュールをサーバーに配置する必要がある場合は、プロセッサがメモリで実行されているときにBIOSに追加の待機サイクルを含める必要があります。
モジュールのインストールに関するすべてのルールと推奨事項を自動的に考慮するために、ベンダーの特別なユーティリティを使用できます。 たとえば、HPにはオンラインDDR4(DDR3)メモリ構成ツールがあります。
合計
空間的な結論の代わりに、メモリを選択するための一般的な推奨事項を示します。
HPマルチプロセッササーバーの場合、エラー修正機能付きレジスタメモリ(ECC RDIMM)のみを使用することをお勧めします。ユニプロセッササーバーの場合、ECC(UDIMM)でバッファリングされません。 HPサーバー用のUDIMMは、自発的な再起動を回避するために、同じメーカーから最適に選択されます。
RDIMMの場合、シングルランクおよびデュアルランクモジュール(1rx4、2rx4)を選択することをお勧めします。 最適なパフォーマンスを得るには、チャネルごとに1つまたは2つのDIMM構成のデュアルランクメモリモジュールを使用します。 3番目のメモリバンクにモジュールをインストールして3つのDIMMの構成を作成すると、パフォーマンスが大幅に低下します。
- 最大速度と同じ理由で、4ランクRDIMMメモリの使用を避けることをお勧めします。チャネルごとに1つのモジュールがある構成では周波数が1066 MHzに、チャネルごとに2つのモジュールがある構成では800 MHzに下がるためです。 Intel Xeon 5600およびXeon E5 / E5 v2ベースのサーバーに有効です。
リストは短いですが、ここに最も必要であり、最も明白ではありません。 もちろん、RTFMの世界原則として古いものをキャンセルした人はいませんでした。