全588文字

 複数のCPUを搭載するマルチプロセッサー構成のサーバーアーキテクチャーの1つ。Non-Uniform Memory Accessの略。CPUが8〜16個以上に多くなっても、メモリーに効率的にアクセス(読み出し/書き込み)できる。CPU数が多い場合は、対称型マルチプロセッサー(SMP)よりもサーバーの処理性能を高めやすい。

 SMPでは複数のCPUがメインメモリーを共有し、各CPUが共通のバスを経由してメモリーにアクセスする。このためCPU数が増えると、バス上で各CPUからのメモリーアクセスの競合が起こりやすくなる。この結果、メモリーアクセスの際の遅延が増大し、CPUを増やした割には処理性能が上がらなくなる。

 NUMAでは、それぞれのCPUがローカルメモリーを抱える。ローカルメモリーへは、各CPUが同時に並行してアクセスできる。このため、CPU数を増やしても、メモリーアクセスの遅延は増大せず、サーバー全体の処理性能を高めやすい。ただし、他のCPUが抱えるメモリー(リモートメモリー)に、必要なデータが存在することもある。この際は、遅延が大きいCPU間のバスを通じてアクセスする。

 各CPUにとってローカルメモリーは高速で、リモートメモリーは低速と、速度が不均一であるのが「Non-Uniform」の意味である。