エクセルソフト Web セミナー 「インテル® コンパイラー入門」 [対象製品] インテル® C++ コンパイラー 9.1 Windows* 版 インテル® Visual Fortran コンパイラー 9.1 Windows* 版 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 1 intel software インテル® コンパイラー入門 本セミナーの内容 1.インテル® コンパイラーとは 2.インテル® コンパイラーの特徴 3.ビルド開発環境 4.インストール手順 5.コンパイル 6.最適化オプション Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 2 intel software インテル® コンパイラー入門 本セミナーの内容 1.インテル® コンパイラーとは 2.インテル® コンパイラーの特徴 3.ビルド開発環境 4.インストール手順 5.コンパイル 6.最適化オプション Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 3 intel software インテル® コンパイラーとは 『Visual Studio 環境に統合』 『インテル® プロセッサーに最適化された 高速実行型コード』 ・EXE・ ・・・・ ・・・・・ ・・・ ソース ファイル 『Visual Studio プロジェクトをサポート』 『最適化、マルチスレッド化された 並列実行型コード』 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 4 intel software インテル® コンパイラー入門 本セミナーの内容 1.インテル® コンパイラーとは 2.インテル® コンパイラーの特徴 3.ビルド開発環境 4.インストール手順 5.コンパイル 6.最適化オプション Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 5 intel インテル® コンパイラーの特徴 software その1 優れた最適化オプション z インテル® コンパイラーは、最新のインテル® アーキテ クャーを駆使し、アプリケーションのパフォーマンスを最大 限まで引き出します。 – – – – – /O2 よりもさらに強力な /O3 オプション SSE 命令セットを活用するベクトル化オプション 自動インライン展開やファイル間の最適化を行う IPO オプション より実践的なプロファイルに沿った PGO オプション マルチコア環境に最適な自動並列化オプション その2 既存の開発環境との互換性 z インテル® コンパイラーは、Microsoft Visual Studio に統合 し、開発作業の効率化を図ります。また Visual Studio との 高い互換性により、今までの資産を有効活用します。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 6 intel インテル® コンパイラーの特徴(続き) software その3 マルチコアのサポート z インテル® コンパイラーは以下の並列化機能をサポートし、 アプリケーションのマルチスレッド化に貢献します。 – Win32 API – OpenMP* – 自動並列化 その4 充実したツール群 z インテル® コンパイラーには、以下のツールが含まれます。 – IA-32 アプリケーション作成用コンパイラー – インテル® 64 (旧称: インテル® EM64T)アプリケーション作成用 コンパイラー – IA-64 アプリケーション作成用コンパイラー – インテル・デバッガー – Microsoft Visual Studio 統合コンポーネント Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 7 intel software インテル® コンパイラー入門 本セミナーの内容 1.インテル® コンパイラーとは 2.インテル® コンパイラーの特徴 3.ビルド開発環境 4.インストール手順 5.コンパイル 6.最適化オプション Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 8 intel software Visual Studio の必要性 重要:Visual Studio 製品のインストールが必須! 理由:インテル® コンパイラーは Visual Studio のリンカー(link) を使用してリンク作業を行います。 Q) どのバージョンの Visual Studio 製品が必要か? ・ 使用する ①開発プラットフォーム により異なる ・ 作成する ②アプリケーション・タイプ ②アプリケーション タイプは? ①開発プラット フォームは? ・IA-32用 ・インテル® 64 用 ・IA-64用 ・IA-32 システム ・インテル® 64 システム ・IA-64 システム ・EXE・ ・・・・ ・・・・・ ・・・ Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 9 intel software • 開発環境概要 以下の図は、インテル® コンパイラーを使用した アプリケーション開発環境のイメージ図です。 Application: IA-32 アプリケーション / インテル® 64 アプリケーション / IA-64 アプリケーション 「開発」 インテル: インテル® C++ コンパイラー インテル® Fortran コンパイラー Microsoft: Visual C++ 6.0、Visual Studio .NET 2002/2003 Visual Studio 2005、Platform SDK IA-32 システム インテル® 64 システム Microsoft: Platform SDK IA-64 システム Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 10 intel software インテル® コンパイラー入門 本セミナーの内容 1.インテル® コンパイラーとは 2.インテル® コンパイラーの特徴 3.ビルド開発環境 4.インストール手順 5.コンパイル 6.最適化オプション Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 11 intel software インストール手順 ① Visual Studio 製品のインストール ② ライセンスファイルの取得 ③ インテル® コンパイラーのインストール Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 12 intel software インテル® コンパイラー入門 本セミナーの内容 1.インテル® コンパイラーとは 2.インテル® コンパイラーの特徴 3.ビルド開発環境 4.インストール手順 5.コンパイル 6.最適化オプション Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 13 intel software コンパイル ■ コマンドラインからのコンパイル ■ Visual Studio からのコンパイル インテル® コンパイラー付属のサンプルコード “C:¥Program Files¥Intel¥Compiler¥C++¥9.1¥samples¥int_sin.c” “C:¥Program Files¥Intel¥Compiler¥Fortran¥9.1¥samples¥int_sin.f90” 重要: インストールの完了後 ビルド環境を確認するため 上記のサンプルコードでテストしてください。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 14 intel Fortran コンパイル(コマンドライン編) software [ステップ1] インテル® コンパイラー専用コマンドプロンプト起動 z C:¥Program Files¥Intel¥Compiler¥Fortran¥9.1¥IA32¥Bin¥ifortvars.bat が実行される [ステップ2] 環境チェック z z > ifort -V (コンパイラーの確認) > link (リンカーの確認) [ステップ3] コンパイル z z > cd “C:¥Program Files¥Intel¥Compiler¥Fortran¥9.1¥samples” > ifort int_sin.f90 ← ( int_sin.exe が作成される) [ステップ4] 実行 z > int_sin.exe Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 15 intel C++ コンパイル(コマンドライン編) software [ステップ1] インテル® コンパイラー専用コマンドプロンプト起動 z C:¥Program Files¥Intel¥Compiler¥C++¥9.1¥IA32¥Bin¥iclvars.bat が 実行される [ステップ2] 環境チェック z z > icl -V (コンパイラーの確認) > link (リンカーの確認) [ステップ3] コンパイル z z > cd “C:¥Program Files¥Intel¥Compiler¥C++¥9.1¥samples” > icl int_sin.c ← ( int_sin.exe が作成される) [ステップ4] 実行 z > int_sin.exe Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 16 intel software コマンドプロンプト インストール時にシステム環境変数を設定した 場合は通常のコマンドプロンプトが使用できる。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 17 intel software コンパイル実演(コマンドライン編) では、 実際にコンパイルしてみましょう! ※ デモに関して 本章で行うデモは、以下のツールを使用します。 ・ インテル® Visual Fortran コンパイラー 9.1 Windows 日本語版スペシャル・エディション ・ Microsoft Visual Studio 2005 Standard Edition なお、対象アプリケーションは、IA-32アプリケーションです。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 18 intel software コンパイル基本形 > icl [オプション] 入力ファイル [/link リンクオプション] > ifort [オプション] 入力ファイル [/link リンクオプション] 例: > icl /O3 /FeOutFile.exe file.c /link /FIXED:NO /STACK:0x100000 > ifort /O3 /FeOutFile.exe file.c /link /FIXED:NO /STACK:0x100000 入力ファイル /link の後ろにあるオプション はすべてリンカーへ渡される icl /O3 /FeOutFile.exe file.c /link /FIXED:NO /STACK:0x100000 コンパイラーへ渡されるオプション リンカーへ渡されるオプション Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 19 intel その他のコンパイル software 複数ソースファイルのコンパイル (OutFile.exe が作成される) z z > icl /FeOutFile.exe file1.cpp file2.cpp file3.cpp > ifort /FeOutFile.exe file1.f90 file2.f90 file3.f90 オブジェクト・ファイルを含むコンパイル z z > icl file1.obj file2.obj > ifort file1.obj file2.obj 特定のライブラリーを含むコンパイル z z > icl file1.c file2.c file3.lib file4.lib > ifort file1.f90 file2.f90 file3.lib file4.lib Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 20 intel software コンパイル(Visual Studio 編) [ステップ1] Visual Studio を起動する [ステップ2] プロジェクトを作成する [ステップ3] ソースファイルをプロジェクトに追加する [ステップ4] プロジェクトをインテル用に変換する(C++) [ステップ5] プロジェクトをビルドする [ステップ6] プロジェクトを実行する Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 21 intel software コンパイル実演(Visual Studio 編) では、 実際にビルドしてみましょう! ※ デモに関して 本章で行うデモは、以下のツールを使用します。 ・ インテル® C++ コンパイラー 9.1 Windows 日本語版スペシャル・エディション ・ インテル® Visual Fortran コンパイラー 9.1 Windows 日本語版スペシャル・エディション ・ Microsoft Visual Studio 2005 Standard Edition なお、対象アプリケーションは、IA-32アプリケーションです。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 22 intel software インテル® コンパイラー入門 本セミナーの内容 1.インテル® コンパイラーとは 2.インテル® コンパイラーの特徴 3.ビルド開発環境 4.インストール手順 5.コンパイル 6.最適化オプション Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 23 intel software 最適化オプション インテル® コンパイラーには数多くの最適化オプションがあります。 以下に代表的な最適化オプションの一部をご紹介します。 オプション 説明 /O3 O2 の最適化に加えて更に強力な最適化オプション /Qx{W|N|B|P|T} /Qax{W|N|B|P|T} SIMD 命令による自動ベクトル化オプション Qx - プロセッサー固有の最適化オプション Qax -プロセッサー固有 + 汎用 IA-32 の最適化オプション W:インテル® Pentium® 4 および互換プロセッサー N:インテル® Pentium® 4 SSE2 および互換プロセッサー B:インテル® Pentium® M および互換プロセッサー P:インテル® Pentium® 4 SSE3、インテル® Core™ Duo および互換プロセッサー T:インテル® Core™2 Duo、インテル® Xeon® 5100 シリーズおよび互換プロセッサー /Qip /Qipo 関数のインライン展開などを行う、プロシージャー間の最適化オプション。 Qip - 単一ファイル内でのプロシージャー間の最適化 Qipo - 複数のファイルにわたるプロシージャー間の最適化 /fast 以下のオプションを 1 つにまとめた速度重視の最適化オプション /O3 /Qipo /Qprec-div- /QxP /Qparallel マルチスレッド・コードを自動生成する並列化オプション Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 24 intel software 最適化オプションのデモ では、 最適化オプションに 挑戦してみましょう! ※ デモに関して 本章で行うデモは、以下の製品を使用します。 ・ インテル® C++ コンパイラー 9.1 Windows 日本語版スペシャル・エディション ・ Microsoft Visual Studio 2005 Standard Edition サンプルコードは、行列積の計算を行う(MatMul)を使用します。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 25 intel software 最適化ソリューション インテル® コンパイラーを使用してもパフォーマンスが向上しない? z その他いろいろなインテル® コンパイラー最適化オプションを試す。 (最適化ガイド:http://jp.xlsoft.com/documents/intel/compiler/qr_guide_jp.pdf) z z z z z コンパイラー・レポート・オプションを使用して最適化状況を確認する。 インテル® VTune™ アナライザーを使用して、hotsopt を見極め効率的 な最適化作業を行う。 インテル® IPP、MKL などの最適化済みライブラリーを使用する。 インテル® スレッディング・ツールで、マルチスレッド処理の動作を確認 する。 インテル® ソフトウェア開発製品セミナー(旧称: インテル® ソフトウェア・ カレッジ)に参加して、インテル® プロセッサーのアーキテクチャーおよび 最適化プログラミング知識を習得する。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 26 intel software 補足資料 補足資料 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 27 intel software 「開発環境について」 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 28 intel software 開発プラットフォームの調べ方 ご使用のシステムは、IA-32、インテル® 64、それとも IA-64 ですか? [システム情報] ダイアログで確認できます! 図: [システム情報] ダイアログ 表示方法: [スタート] メニュー から、 [プログラム]-[アクセサリ] [システム ツール]-[システム情報] を選択します。 「システムの種類」を確認 ・ X86 ベース PC → IA-32 システム ・ x64 ベース PC →インテル® 64 システム ・ Itanium ベースシステム → IA-64 システム Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 29 intel software Visual Studio 製品の選択 (C++) 下表において、対応する Visual Studio 製品のインストールが必要 ※詳細: http://www.xlsoft.com/jp/products/intel/compilers/compiler91_matrix.html Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 30 intel software Visual Studio 製品の選択 (Fortran) 下表において、対応する Visual Studio 製品のインストールが必要 ※詳細: http://www.xlsoft.com/jp/products/intel/compilers/compiler91_matrix.html Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 31 intel software 「ライセンス取得およびインストールについて」 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 32 intel software ① Visual Studio 製品インストール 注意事項: Visual Studio 2005 を使用してインテル® 64/IA-64 アプリケーションを作成する場 合は、「カスタム・インストール」 を選択して、それぞれのインストール・コンポーネント を追加する必要があります。 図:Visual Studio 2005 Team Edition インテル® Fortran コンパイラーの インストール時も基本的に C++ のコンポーネントが必要です! IA-64 アプリケーションを 作成する場合はチェック インテル® 64 アプリケーション を作成する場合はチェック Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 33 intel software ② ライセンスファイルの取得 ~ ライセンスファイル取得までの流れ ~ (1) シリアル番号の登録 ↓ (2) 新規アカウントの作成 ↓ (3) ライセンスファイルの受信 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 34 intel software (1) シリアル番号の登録 以下の「インテル® レジストレーション・センター」にアクセスしてシリアル番号を登録。 https://registrationcenter.intel.com/regcenter/register.aspx メールアドレスを入力 登録するシリアル番号 を入力 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 35 intel software (2) 新規アカウントの作成 シリアル番号を登録するアカウントが存在しない場合は、「新規アカウント作成」画面 が表示されます。 アカウント情報を入力し て最後に [送信] ボタンを クリックしてください。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 36 intel software (3) ライセンスファイルの受信 シリアル番号の登録が完了すると、インテル社より 「ライセンスファイルが添付されたメール」が送信され ます! 注意事項: 1. このライセンスファイルは、インテル® コンパイラーのインス トール時に使用しますので、日本語を含まないフォルダーに保 存してください。 2. ライセンスファイルの拡張子(.lic)は変更しないで下さい。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 37 intel ③ インテル® コンパイラーのインストール software CD-ROM からインストールする場合 z インテル® コンパイラーの CD-ROM をドライブに挿入すると、自動で インストーラーが起動します。 ダウンロード・パッケージからインストールする場合 z パッケージ(例:w_cc_p_9.1.022_jp.exe)をダブルクリックして ファイルの解凍先を選択するとインストールが開始されます。 (図:インストール開始画面) 注意事項: インストール作業は、管理者権限の あるユーザーで実行してください。 また、日本語を含まないユーザー名 を使用することを推奨します。 例: × “山田” ○ “Yamada” Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 38 intel software ライセンスファイルの指定 「ライセンスファイル を指定する」を選択 します。 このボタンをクリックして、インテル社から受信したライセンスファイルを 指定してください。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 39 intel software インストール・ツールの選択 ① IA-32 および IA-64 アプリケーションを作成するためのコンパイラー (※IA-64 アプリケーションを作成しない場合でも必ずチェックが必要) ② インテル® 64 アプリケーションを作成するためのコンパイラー (※インテル® 64 対応アプリケー ションを作成しない場合は不要) ① ③ インテル・デバッガー (※使用しない場合は不要) ② ③ ④ ④ Visual Studio への 統合コンポーネント Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 40 intel software 使用ユーザーの設定 注意事項: [すべてのユーザー] を選択してください。 使用ユーザーを特定すると、Visual Studio への統合に失敗する 場合があります。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 41 intel software セットアップ・タイプの選択 [すべて] を選択すると文字通り すべての機能をインストールします。 [カスタム] を選択すると インストールする機能を 選択できます。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 42 intel software カスタム・セットアップ IA-64 アプリケーションを作成しない場合、IA-64 アプリケーション 作成用コンパイラーのインストールを無効にできます。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 43 intel software 必要条件の不足 この画面は IA-64 アプリケーション作成コンパイラーのインストールを選択した際、 必要なツールが認識されなかった場合に表示されます。 以下の開発環境が正しくインストールされていることを確認してください。 「Visual Studio 2005 Team Edition」または「Platform SDK (ia64)」 IA-64 アプリケーション 作成用コンパイラーを インストールしない IA-64 アプリケーション 作成用コンパイラーを 強制インストールする Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 44 intel software コマンドライン互換 複数の Visual Studio 製品がインストールされている場合、以下の画面が表 示されます。コマンドライン上でビルド作業を行う場合、ここで選択した Visual Studio バージョンの環境(ライブラリーやリンカーなど)が使用されます。 詳細: ここで選択した環境設定 が bin¥iclvars.bat ファイ ルに反映される Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 45 intel software 環境変数 [図: システム環境変数] インテル® コンパイラーの環境変数を Windows システム環境変数へ設定 するかどうかの選択を行います。 システム環境変数へ設定 する場合はチェックする [対象環境変数] ・ PATH ・ LIB ・ INCLUDE 環境変数を設定する利点: ①通常のコマンドラインから インテル® コンパイラーを実行で きる(iclvars.bat の起動不要) ②インテル® コンパイラーの提供 する DLL を使用するアプリケー ションを実行できる Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 46 intel software インストール・ファイル ドキュメント一式 コマンドライン・ ビルド環境 インストール・フォルダー ドキュメント・フォルダー インテル® 64 アプリ作成コンパイラー IA-32 アプリ作成コンパイラー インクルード ファイル IA-64 アプリ作成コンパイラー コンパイラー・ツール および DLL ファイル サンプル・プログラム・フォルダー ライブラリー ファイル Fortran も同様のフォルダー構成 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 47 intel software 「Visual Studio への統合画面」 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 48 intel software プロジェクトの変換 Visual C++ プロジェクト 変換 Intel C++ プロジェクト Intel C++ プロジェクト 変換 Visual C++ プロジェクト 注意:インテル® コンパイラーでは、 ”.NET プロジェクト” のような マネージドコードを生成するプロジェクトを変換できません。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 49 intel software プロジェクトのプロパティ ページ インテル用プロジェクトの [プロジェクト ページ] には、インテル® コンパイラー用の機能設定が多数存在する。 C++ プロジェクトの [プロパティ ページ] Fortran プロジェクトの [プロパティ ページ] ※項目をクリックして [F1] キーを押すとその項目の ヘルプが参照できます。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 50 intel software オプション 環境変数など、開発環境の基本設定を行う。 インテル® C++ コンパイラー [オプション] ダイアログ インテル® Fortran コンパイラー [オプション] ダイアログ Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 51 intel software 構成マネージャ ビルド構成(Debug/Release)を変更する。 また、インテル® 64/IA-64 アプリケーションを作成する際もこの [構成マネージャ] でビルド構成を変更します。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 52 intel software ヘルプ [ヘルプ] メニューからインテル® コンパイラーのマニュアルが 参照できます。 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 53 intel software 「最適化オプション設定方法」 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 54 intel オプションの使用(コマンドライン編) software 高レベルな最適化(インテル® Pentium® 4 SSE3 または 汎用 IA-32 向け) z z > icl /O3 /QaxP main.c > ifort /O3 /QaxP main.f90 自動ベクトル化(インテル® Pentium® 4 SSE2 または SSE3 向け) z z > icl /O3 /QxNP /Qip main.c > ifort /O3 /QxNP /Qip main.f90 プロシージャー間の最適化 z z > icl /Qipo prog1.cpp prog2.cpp > ifort /Qipo prog1.f90 prog2.f90 自動並列化 z z > icl /Qparallel prog1.cpp prog2.cpp > ifort /Qparallel prog1.f90 prog2.f90 速度重視の最適化(インテル® Pentium® 4 SSE3 向け) z z > icl /fast /Qparallel prog1.c prog2.c > ifort /fast /Qparallel prog1.c prog2.c Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 55 intel software オプションの使用(Visual Studio 編) 自動ベクトル化 オプションの指定 高レベル最適化 オプションの指定 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 56 intel software オプションの使用(Visual Studio 編) 並列化オプション の指定 設定したすべてのオプションをここで確認 指定項目のないオプ ションは、[追加のオプ ション] に直接指定 Copyright © 1998-2007 XLsoft Corporation. All Rights Reserved. 57
© Copyright 2024 ExpyDoc