この記事は、インテル® デベロッパー・ゾーンに公開されている『Intel® VTune™ Profiler Performance Analysis Cookbook』の「Profiling Applications in Amazon Web Services* (AWS) EC2 Instances」日本語参考訳です。原文は更新される可能性があります。原文と翻訳文の内容が異なる場合は原文を優先してください。
このレシピは、インテル® VTune™ プロファイラーを使用してパフォーマンスをプロファイルするため、AWS* で VM インスタンスを設定します。
コンテンツ・エキスパート: Denis Pravdin (英語)、Jennifer Dimatteo
使用するもの
以下は、パフォーマンス解析シナリオで使用するハードウェアとソフトウェアのリストです。
- アプリケーション: matrix。このアプリケーションはデモ用であり、ダウンロードすることはできません。
- ツール: インテル® VTune™ プロファイラーまたはインテル® VTune™ Amplifier 2019 – hotspot 解析
注
- インテル® VTune™ プロファイラー評価版のダウンロードと製品サポートについては、https://www.isus.jp/intel-vtune-amplifier-xe/ を参照してください。
- このクックブックのレシピはすべてスケーラブルであり、インテル® VTune™ Amplifier 2018 以降に適用できます。バージョンにより設定がわずかに異なることがあります。
- ベータ版インテル® oneAPI ベース・ツールキット向けのバージョンから、インテル® VTune™ Amplifier の名称がインテル® VTune™ プロファイラーに変わりました。引き続き、インテル® Parallel Studio XE またはインテル® System Studio のコンポーネントとして、あるいはスタンドアロン版のインテル® VTune™ プロファイラーをご利用いただけます。
仮想マシン・インスタンスを作成して設定する
- AWS* サイトで [アカウント (Account)] > [AWS マネジメントコンソール (AWS Management Console)] からアカウントにログインします。
アカウントをお持ちでない場合は、作成してください。
- Amazon EC2* ダッシュボードで [Compute (コンピューティング)] > [EC2] を選択します。
- [Launch Instance (インスタンスの作成)] をクリックして、ウィザードに従って仮想マシンを作成し設定します。
設定ウィザードでは、使用するケースに応じて OS とインスタンスの仕様 (CPU の数、メモリー、ストレージ、ネットワーク容量) を指定できます。
- [Step 1: Choose an Amazon Machine Image (AMI) (ステップ 1: Amazon マシンイメージ (AMI))] では、Ubuntu* Server 18.04 LTS を選択します。
- [Step 2: Choose an Instance Type (ステップ 2: インスタンスタイプの選択)] では、インスタンスを選択して [Next: Configure Instance Details (次の手順: インスタンスの詳細の設定)] をクリックします。
注
インテル® VTune™ プロファイラーの推奨システム要件は 4GB RAM、空きディスク容量 10GB 以上です。 - [Step 3: Configure Instance Details (ステップ 3: インスタンスの詳細の設定)] では、[Auto-assign Public IP (自動割り当てパブリック IP)] を有効にして [Next: Add Storage (次の手順: ストレージの追加)] をクリックします。
- [Step 4: Add Storage (ステップ 4: ストレージの追加)] では、ストレージデバイスの容量を増やしてから [Next: Add Tags (次の手順: タグの追加)] をクリックします。
- (オプション) [Step 5: Add Tags (ステップ 5: インスタンスのタグ付け)] では、タグ (例えば VTune Demo) を追加して [Review and Launch (確認と作成)] をクリックします。
- [Step 7: Review Instance Launch (ステップ 7: インスタンス作成の確認)] では、[Launch (作成)] をクリックします。
- キーペアを作成します。
- [Create a new key pair (新しいキーペアの作成)] を選択して、名前 (例えば MyEC2Instance) を割り当てます。
- [Download Key Pair (キーペアのダウンロード)] をクリックして、キーをダウンロードします。
- [Launch Instances (インスタンスの作成)] をクリックして、セットアップを完了します。
インスタンスが作成されます。
- [View Instances (インスタンスの表示)] をクリックします。
[Instance State (インスタンスの状態)] が [running] に更新されたら次のステップに進みます。
EC2* インスタンスに接続する
作成した EC2* インスタンスを選択し、[Connect (接続)] をクリックしてインスタンスへ SSH 接続します。
PuTTY* は、Amazon EC2* によって生成されるプライベート・キー形式 (.pem) をネイティブにサポートしません。PuTTY* を使用してインスタンスに接続する前に、PuTTYgen を使用してプライベート・キー (.pem) を必要な PuTTY* 形式 (.ppk) に変換する必要があります。
- プライベート・キーを変換します。
- PuTTYgen を起動します。
- [Type of key to generate] で [SSH-1 (RSA)] を選択します。
- [Load] をクリックして .pem ファイルを選択します。
- [Save private key] をクリックして PuTTY* が使用可能な形式でキーを保存します。
- PuTTY* を起動して、[Connection] > [SSH] > [Auth] でインスタンスのパブリック DNS とプライベート・キー (.ppk) ファイルを指定します。
- 設定を保存して、[Open] をクリックします。
インスタンスにログインします。
注
実行中のインスタンスに Xubuntu* デスクトップをインストールする必要があります。VNC* 経由でシステムにアクセスする場合は、VNC* サーバーのセットアップも必要です。
プロファイル向けにインスタンスを設定する
/proc/sys/kernel/yama/ptrace_scope を 0 に設定して、プロファイル向けにターゲット・インスタンスを準備します。
echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
hotspot 解析を実行する
次の任意の方法で hotspot 解析を実行します。
SSH 経由でローカルにインストールされたインテル® VTune™ プロファイラーからリモート収集を実行:
注
リモート・ハードウェア・イベントベース・サンプリング解析は、ベアメタル・インフラストラクチャーとインテル® VTune™ プロファイラーのすべてのプロファイル機能に直接アクセス可能な EC2* ベアメタル・インスタンス (i3.metal インスタンス・ファミリー) を除き、AWS* EC2* 仮想環境では利用できません。
- インテル® VTune™ プロファイラーでプロジェクトを作成します。
[Configure Analysis (解析の設定)] ウィンドウが表示されます。
- [WHERE (どこを)] ペインでは、[Remote Linux (SSH) (リモート Linux* (SSH))] を選択して、[SSH destination (SSH の対象)] に ubuntu@<PuTTY* 設定の名前> と入力します。
この時点でインテル® VTune™ プロファイラーはリモートシステムに接続して、収集に必要なバイナリーを指定されたフォルダーにインストールしようとします。
- [WHAT (何を)] ペインでは、アプリケーションの場所と作業ディレクトリーを指定します。
- [HOW (どのように)] ペインでは、デフォルトで表示される hotspot 解析の [User-Mode Sampling (ユーザーモード・サンプリング)] を選択します。
- をクリックして、解析を開始します。
結果は、解析のため自動的にローカルシステムにコピーされます。
AWS* インスタンスから直接インテル® VTune™ プロファイラーを実行:
- 「インストール・ガイド」 (英語) に従って、インテル® VTune™ プロファイラーをインストールします。
- インテル® VTune™ プロファイラーを実行します。次に例を示します。
sudo <vtune_install_dir>/vtune_profiler/bin64/vtune-gui
- プロジェクトを作成します。
[Configure Analysis (解析の設定)] ウィンドウが表示されます。
- [WHERE (どこを)] ペインでは、[Local Host (ローカルホスト)] ターゲット・システム・タイプを選択します。
- [WHAT (何を)] ペインでは、アプリケーションの場所と作業ディレクトリーを指定します。
- [HOW (どのように)] ペインでは、[Hardware Event-Based Sampling (ハードウェア・イベントベース・サンプリング)] など、hotspot 解析の収集モードを選択します。
- をクリックして、解析を開始します。
解析結果は、デフォルトの [Hotspots by CPU Utilization (CPU 使用率によるホットスポット)] ビューポイントに表示されます。
関連情報
- 仮想環境のターゲット (英語)
- パフォーマンス解析 (英語)
- リモート収集向けに SSH アクセスを設定 (英語)