NUMAとは
Non-Uniform Memory Accessの略。「共有メモリー型マルチプロセッシング」とも呼ばれる。複数のCPUとメモリーをシステムに搭載したサーバーアーキテクチャーの1つで、コンピューターとサーバーが処理を分担し、サーバーへの負荷を防ぐ分散型システムである。
「SMP(対称型マルチプロセッシング)」は、複数のCPUがメインメモリーを共有し、各CPUが共通のバスを経由してメモリーにアクセスするため、CPU数が増えると、各CPUからのメモリーアクセスの競合が起こり、アクセスの遅延が増大して処理性能が悪化する。
一方、NUMAは各CPUが同時に並行してアクセスできる「ローカルメモリー」を搭載しているため、CPU数にかかわらず、サーバーの処理性能を高めやすい。また、ほかのCPUが抱えるメモリーに必要なデータがあれば、遅延が大きいCPU間のバスからアクセスできる(「リモートメモリー」)。高速なローカルメモリーと低速なリモートメモリーの両方を使用することから、「Non-Uniform(不均一性)」と表現している。