Non-Uniform Memory Access(NUMA)とは何ですか?

Last Updated: 2020-12-09
4.6
(5)
Summary: Non-Unified Memory Accessの略であるNUMAは、マルチプロセッシング用のコンピュータメモリ設計です。 NUMAの完全な紹介については、こちらをご覧ください。

Definition

NUMAはマルチプロセッシングアーキテクチャであり、メモリは密なストレージと離れたストレージに分割され、メモリアクセス時間はプロセッサに対するメモリの場所によって異なります。

NUMAでは、プロセッサは非ローカルメモリよりも高速にローカルメモリにアクセスします。 NUMAの利点は、特定のワークロードに限定されます。特に、データが通常特定のタスクまたはユーザーに強く関連付けられているサーバーではそうです。

不均一なメモリアクセスシステムは、複数のシステムバスを備えた高度なサーバープラットフォームです。これらのプラットフォームは、1つのボードで複数のプロセッサを使用でき、すべてのプロセッサがマザーボード上のすべてのメモリにアクセスできます。

NUMAアーキテクチャは、SMP(対称型マルチプロセッシング)アーキテクチャからのスケーリングに論理的に従います。 SMPと比較して、NUMAアーキテクチャはより多くのCPUに拡張できます。

基本コンセプト

最新のCPUは、使用するメインメモリよりもはるかに高速に実行されます。コンピューティングとデータ処理の初期段階では、CPUは通常そのメモリよりも低速で実行されます。メモリアクセスの数を制限することは、最新のコンピュータから高性能を引き出すための鍵です。

ただし、オペレーティングシステムのサイズとオペレーティングシステムで実行されているアプリケーションの急激な増加は、これらのキャッシュ処理の改善を圧倒することがよくあります。 NUMAのないマルチプロセッサシステムは、問題をさらに悪化させます。

NUMAは、プロセッサごとに個別のメモリを提供することでこの問題に対処しようとし、複数のプロセッサが同じメモリを解決する場合のパフォーマンスへの影響を回避します。

さらに、NUMAシステムには、メモリバンク間でデータを移動するための他のハードウェアまたはソフトウェアが含まれています。これにより、これらのバンクに接続されているプロセッサの速度が低下します。したがって、NUMAによる全体的な速度の向上は、実行中のタスクの性質に大きく依存します。

キャッシュコヒーレントNUMA(ccNUMA)

ほとんどすべてのCPUアーキテクチャは、キャッシュと呼ばれる少量の高速非共有メモリを使用して、メモリアクセスの参照場所を利用します。

ccNUMAは、複数のキャッシュが同じメモリ位置を格納する場合に一貫したメモリイメージを維持するために、キャッシュコントローラ間のプロセッサ間通信を採用しています。その結果、複数のプロセッサが同じメモリ領域に迅速かつ継続的にアクセスしようとすると、ccNUMAのパフォーマンスが低下します。

オペレーティングシステムでNUMAをサポートすると、プロセッサとメモリをNUMAに適した方法で割り当て、NUMAに適さないアクセスを行うために必要なスケジューリングとロックのアルゴリズムを防ぐことで、このようなアクセスの頻度を減らすことができます。

ソフトウェアサポート

NUMAはメモリアクセスのパフォーマンスに大きく影響するため、スケジューリングスレッドとプロセスがメモリデータにアクセスできるようにするには、ソフトウェアの最適化が必要です。

  • Silicon Graphics IRIXは、1240CPUおよびOriginServerシリーズを超えるccNUMAアーキテクチャをサポートします。
  • Microsoft Windows7およびWindowsServer 2008 R2では、NUMAアーキテクチャの64を超える論理コアのサポートが強化されています。
  • Java 7は、NUMA対応のメモリアロケータとガベージコレクタのサポートを追加します。
  • Linuxカーネルのバージョン3.13では、プロセスをメモリの近くに配置し、大きな透過ページの使用やプロセス間でのメモリページの共有などの状況を処理するためのいくつかのポリシーが導入されました。新しいsysctl設定により、NUMAバランシングを有効または無効にしたり、さまざまなNUMAメモリバランシングパラメータを構成したりできます。
  • OpenSolarisは、lgroupを使用してNUMAアーキテクチャをモデル化します。
  • FreeBSDは、初期NUMA関連性とポリシー構成をバージョン11.0に追加します

結論!

つまり、このページを読むと、非ユニファイドメモリアクセスの定義、基本概念、および作業方法について理解を深めることができます。また、NUMAがメモリアクセスのパフォーマンスに影響を与えるため、一部のソフトウェアはNUMAをサポートするように最適化されていることもわかります。

 

How useful was this post?

Click on a star to rate it!

Average rating 4.6 / 5. Vote count: 5

No votes so far! Be the first to rate this post.

Previous Article

Mac用の最新のGoogleChromeアイコンを元のアイコンに戻す方法は? 概要:NUMAは、Non-Unified Memory Accessの略で、マルチプロセッシング用のコンピューターメモリ設計です。完全な紹介については、こちらをご覧ください...

Next Article

Macから削除されたビデオを回復する方法は? 概要:NUMAは、Non-Unified Memory Accessの略で、マルチプロセッシング用のコンピューターメモリ設計です。完全な紹介については、こちらをご覧ください...

About Bitwar Data Recovery

3 Steps to get back 500+ kinds of deleted, formatted or lost documents, photos, videos, audios, archive files from various data loss scenarios.

Learn More

Hot Articles

    Related Articles