12.07.2015 Views

RedHawk Linux User's Guide version 6.3 日本語版

RedHawk Linux User's Guide version 6.3 日本語版

RedHawk Linux User's Guide version 6.3 日本語版

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

リアルタイム 性 能図 2-10 ハイパースレッドのシールディング浮 動 小 数 点 演 算 / 整 数 演 算 の 共 有 2共 有 データ・キャッシュ2このサンプルでは、CPU3はシールドされ、 高 優 先 度 の 割 り 込 みとその 割 り 込 みに 応 答 するプログラムだけの 実 行 を 許 可 しています。CPU2はシールドされていないために 通 常 の 利 用 が 可 能 、つまり 特 定 のタスク 一 式 を 実 行 するために 構 成 されています。プリエンプションや 割 り 込 みブロックが 無 効 の 時 、CPU3 上 で 実 行 中 の 高 優 先 度 割 り 込 みやタスクには 影 響 がないため、CPU2 上 で 動 作するタスクは 直 接 割 り 込 み 応 答 時 間 へ 影 響 を 与 えることはありません。しかし、チップのリソースレベルではCPU3 上 での 実 行 のデターミニズムには 影 響 を 与 える 競 合 が 存 在 します。その 影 響 の度 合 いはアプリケーションにとても 依 存 します。この 構 成 はアプリケーションが 主 に 浮 動 小 数 点 演 算 を 実 行 するいくつかのプログラムおよび 整 数算 術 演 算 を 実 行 するいくつかのプログラムを 持 っているときに 利 用 することが 可 能 です。ハイパースレッドCPUの 両 方 のシブリングは 特 定 のタスクを 実 行 するために 使 用 されます。 浮 動 小 数 点を 集 約 したプログラムを1つのシブリングCPUに 割 り 付 け、 主 に 整 数 計 算 を 実 行 するプログラムをもう 一 方 のシブリングCPUに 割 り 付 けます。この 構 成 の 優 位 点 は 浮 動 少 数 点 演 算 と 整 数 演 算 は 異なるチップのリソースを 利 用 することです。これはチップレベルでの 利 用 が 可 能 な 並 列 処 理 であるため、ハイパースレッド 型 並 列 処 理 を 十 分 に 活 用 することが 可 能 となります。コンテキスト・スイッチ 間 で 浮 動 小 数 点 レジスタの Save/Restore がないため、 整 数 演 算 だけを 実 行 するCPU 上 のアプリケーションはコンテキスト・スイッチ 時 間 が 高 速 に 見 えることに 注 意 すべきです。この 構 成 はアプリケーションが 生 産 者 / 消 費 者 型 プリケーションの 時 に 利 用 することが 可 能 です。言 い 換 えると、1つのプロセス( 消 費 者 )はもう 一 方 のプロセス( 生 産 者 )から 渡 されたデータで 動 作しています。このケースでは、 生 産 者 と 消 費 者 の 各 スレッドはハイパースレッドCPUのしうリングに 割 り 付 ける 必 要 があります。2つのシブリングCPUがデータ・キャッシュを 共 有 するため、 生産 者 プロセスによって 生 産 されるデータは 消 費 者 プロセスが 生 産 者 タスクから 渡 されたデータをアクセスしたときにデータ・キャッシュ 内 に 留 まっている 可 能 性 があります。このように2つのシブリングCPUを 利 用 することは 生 産 者 と 消 費 者 の 各 タスクが 並 列 に 実 行 することを 可 能 にし、またそれらの 間 で 渡 されるデータは 基 本 的 に 高 速 キャッシュ・メモリを 介 して 渡 されます。これはハイパースレッド 型 並 列 処 理 を 利 用 するために 重 要 な 機 会 を 提 供 します。もう1つのこのモデルの 潜 在 的 な 利 用 法 は、ハイパースレッドCPU 上 の1つのシブリングCPU 上 のプロセスのためにもう 一 つのシブリングCPUで 実 行 中 のプロセスで 使 われるデータ・キャッシュの 中 にデータをプリフェッチすることです。2-33

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!