RedHawk Linux User's Guide version 6.3 æ¥æ¬èªç
RedHawk Linux User's Guide version 6.3 æ¥æ¬èªç
RedHawk Linux User's Guide version 6.3 æ¥æ¬èªç
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Non-Uniform Memory Access (NUMA)MPOL_PREFERREDこのポリシーは 割 り 当 てのために 優 先 される( 単 一 の)ノードを 設 定 します。カーネルは 最 初 にこのノードからページを 割 り 当 てようとし、優 先 されるノードがメモリ 不 足 の 時 は 他 のノードを 使 用 します。MPOL_INTERLEAVE このポリシーはノードマスクに 指 定 されたノードへの 割 り 当 てを(ラウンド・ロビン 方 式 で) 交 互 に 行 います。これは 遅逼 延 の 代 わりに 処 理能 力 を 最 適遚 化 します。 効 果 的 にするためには、メモリ 領 域 を 相 当 大 きくする 必 要 があります。ユーザー 空 間 ページ 割 り 当 てに 加 えて、カーネル・メモリ 割 り 当 て 要 求 の 多 くもまた 現 在 実 行 中タスクのタスク 全 体 メモリ・ポリシーにより 決 定 されます。しかし、 全 てのカーネル・ページ 割り 当 てが 現 在 のタスクのメモリ・ポリシーに 制 御 されているわけではありません。 例 えば、DMA目 的 のためにメモリを 割 り 当 てる 殆 どのデバイス・ドライバは、デバイスのI/Oに 存 在 するノード、もしくはそのI/Oバスに 最 も 近 いノードからメモリを 代 わりに 割 り 当 てます。既 に 行 われたページ 割 り 当 てはタスクのメモリ・ポリシーの 変 更 に 影 響 されません。 例 えば、2つのCPUを 搭 載 したシステムにおいてCPUとノードが1 対 1に 対 応 しているものと 仮 定 します:タスクがCPUアフィニティが0x1かつメモリ・ポリシーがMPOL_DEFAULTでCPU0 上 でしばらくの 間 実 行 している 状 況 で、その 後 、そのCPUアフィニティが0x2、メモリ・ポリシーがノードマスク 値 が0x2のMPOL_BINDへ 変 更 すると、 大 抵 は 一 旦 そのタスクがCPU1 上 で 実 行 を開 始 したらタスクに 対 して 非 ローカルにあるそのアドレス 空 間 内 のページとなります。以 下 のセクションでNUMA 管 理 のための 利 用 可 能 なシステム・サービス、ライブラリ 機 能 、ユーティリティについて 説 明 します。NUMAユーザー・インターフェースユーザー・インターフェース10shield(1)コマンドはNUMAノード・メモリ・シールディングの 制 御 および 問 合 せに 使 用 することが 可 能 です。run(1)コマンドは 実 行 時 にタスクのメモリ・ポリシーを 固 定 するもしくは 変 更 するため、 指 定 したプロセスもしくはスレッドの 各 NUMAノード 内 ページのユーザー・ページ 数 を 表示 するために 使 用 することが 可 能 です。shmconfig(1)は 共 有 メモリ 領 域 のために 使 用 することが可 能 です。ライブラリ 機 能 、システム・サービス、 他 のユーティリティやファイルもまたNUMA 制 御 に 利 用可 能 です。このサポートの 詳 細 は 以 降 のセクションで 提 供 します。メモリ・シールドされたノード 10shield(1)コマンドはメモリ・シールドされたNUMAノードを 作 成 するために 使 用 することが 可 能です。NUMAノードのメモリがシールドされた 時 、シールドされたノード 上 で 実 行 するために 割 り 付 けられていないアプリケーションに 属 するユーザー・ページはシールドされたノードのメモリの 外へ 移 動 されるためにリモート・メモリ・アクセス 量 は 減 ります。 同 様 にシールドされたノードに割 り 付 けられたアプリケーションに 属 するユーザー・ページはシールドされたノードのメモリ 内へ 移 動 されます。NUMAノードが 最 初 にメモリ・シールドされた 時 、タスクのCPUアフィニティが 修 正 される 度 に、 現 在 1つ 以 上 のメモリ・シールドされたNUMAノードが 構 成 されたシステムでこの「ページ 移 動 」は 自 動 的 に 実 行 されます。メモリ・シールディングに 関 する 詳 細 な 情 報 は、memory_shielding(7)のmanページを 参 照 してください。10-3