OMP_PROC_BIND の振る舞いがインテル製品以外のプロセッサーとの互換性をサポートしました

同カテゴリーの次の記事

インテル® Composer XE 2013 入門: コンパイラーのプラグマ/宣言子

この記事は、インテル® ソフトウェア・サイトに掲載されている「OMP_PROC_BIND is now supported on compatible non-Intel processors」の日本語参考訳です。


最新のインテル® C++ コンパイラーおよびインテル® Fortran コンパイラーでは、OpenMP* の環境変数 OMP_PROC_BIND の振る舞いが Linux と Windows においてインテル製品以外のプロセッサーとの互換性がサポートされました。この修正はインテル® Composer XE 2011 Update13 とインテル® Composer XE 2013 Update 1 以降に反映されています。以前のバージョンのコンパイラーでは、互換プロセッサー上でOpenMP* 3.1 API 仕様で定義される OMP_PROC_BIND の振る舞いがサポートされていませんでした。インテル互換プロセッサー上でOMP_PROC_BIND={true, false} に設定し、インテル® OpenMP* ランタイムとリンクしたプログラムを実行すると、アフィニティーがサポートされないという趣旨の警告が生成されます。

この問題が修正され、OMP_PROC_BIND=true に設定すると OpenMP* スレッドはプロセッサーにバインドされます。OMP_PROC_BIND=false に設定すると、OpenMP* スレッドはプロセッサー間で移行します。

Linux* システムにおいてのみ、GOMP_CPU_AFFINITY 環境変数を利用してOSの特定のプロセッサーIDをOpenMP* スレッドにバインドできます。GOMP_CPU_AFFINITY は、OMP_PROC_BIND=trueよりも優先されることに注意してください。インテル® コンパイラーでビルドされたプログラムの実行時に両方の環境変数が設定されていると、次のような警告が表示されるでしょう:

OMP: Warning #181: OMP_PROC_BIND: ignored because GOMP_CPU_AFFINITY has been defined

関連記事

  • OpenMP* のサポート・ライブラリーOpenMP* のサポート・ライブラリー この記事は、インテル® ソフトウェア・ネットワークに掲載されている「OpenMP* Support Libraries」の日本語参考訳です。 編集部注: 本記事には旧製品(インテル® コンパイラー・バージョン 11.1 以前)向けの情報が含まれます。バージョン 12.0 […]
  • インテル® C++/Fortran コンパイラーによる OpenMP* 3.1 仕様のサポートインテル® C++/Fortran コンパイラーによる OpenMP* 3.1 仕様のサポート この記事は、インテル® ソフトウェア・ネットワークに掲載されている「Intel® C++ and Fortran Compilers now support the OpenMP* 3.1 Specification」の日本語参考訳です。 2011 年 7 月に OpenMP* 3.1 仕様 (英語) […]
  • ガイド付き自動並列化ガイド付き自動並列化 この記事は、インテル® デベロッパー・ゾーンに掲載されている「Guided Autoparallelism」の日本語参考訳です。 インテル® Composer XE Linux* 版には、ガイド付き自動並列化 (GAP) 機能が含まれており、Fortran と C/C++ […]
  • インテル® Parallel Debugger Extensionインテル® Parallel Debugger Extension この記事は、インテル® ソフトウェア・ネットワークに掲載されている「Intel® Parallel Debugger Extension」の日本語参考訳です。 はじめに この記事では、インテル® Parallel Studio 2011、インテル® Parallel Studio XE 2011、インテル® […]
  • インテル® MIC アーキテクチャー向けの高度な最適化 - ヘテロジニアス・プログラミング・モデルインテル® MIC アーキテクチャー向けの高度な最適化 - ヘテロジニアス・プログラミング・モデル この記事は、インテル® ソフトウェア・サイトに掲載されている「The Heterogeneous Programming Model」の日本語参考訳です。 はじめに ここでは、インテル® メニー・インテグレーテッド・コア (インテル® MIC) アーキテクチャー向けのインテル® Composer XE 2013 […]