このマニュアルでは、プログラムのパフォーマンス解析について説明します。高性能アプリケーションの開発には、コンパイル機能、最適化されたルーチンのライブラリ、そしてコードの解析および特定を行うツールが必要です。このマニュアルは、アプリケーション開発におけるこの 3 番目の工程について解説します。具体的には、以下のツールの使い方を解説します。
標本アナライザおよび標本コレクタ
ループツールおよびループレポート
ロック lint
prof、 gprof、および tcov
「関連マニュアル」の項には、Sun(TM) WorkShop(TM) コンパイラおよびパフォーマンスライブラリに関する情報の出典一覧が掲載されています。
このマニュアルは、Solaris システムおよび UNIX コマンドに関するある程度の知識を持つプログラマを対象にしています。また、パフォーマンス解析の知識は、ツールから得られるデータの使い方を理解する上では有効ですが、ツールを利用するためには必要ではありません。また、従来のプロファイリングツール、prof、gprof、および tcovは、Sun WorkShop を操作するための知識を必要としません。
このマニュアルは次の章から構成されています。
第 1 章「パフォーマンスプロファイリングおよび解析ツール」では、パフォーマンス解析ツールを取り上げ、その用途と利用状況について簡単に紹介します。
第 2 章「標本解析ツール」では、標本解析ツールである標本コレクタと標本アナライザについて解説します。これらのツールを使用することで、作成するプログラムにおける資源の利用効率を向上できます。
第 3 章「ループ解析ツール」では、コンパイラによってすでに並列化されているプログラム中のループの解析を補佐するループツールおよびループレポートを紹介します。
第 4 章「従来のプロファイリングツール」では、従来からあるプロファイリングツール prof、gprof、tcov を紹介します。これらのツールは、プログラム中、最も頻繁に使用される箇所を見つけ出し、テストの対象となるプログラムの範囲を判断するのに役立ちます。
第 5 章「ロック解析ツール」では、マルチスレッド化プログラムにおけるロックおよび潜在的な競合の解析をサポートするロック lint について解説します。
付録 A 「ロック lint コマンドリファレンス」では、ロック lint コマンドについてのリファレンス情報を提供します。
Solaris の最新リリースの名前は Solaris 7 ですが、コード名、パス名 (パッケージのパス名など) には Solaris 2.7 または SunOS 5.7 という名前が含まれていることがあります。その場合は、Solaris 2.7 または SunOS 5.7 を含む名前をそのまま使用してください。
Sun WorkShop のマニュアルの内容は、Solaris 2.5.1、Solaris 2.6、Solaris 7 オペレーティングシステムのいずれかを実行する以下のプラットフォームを対象としています。
SPARC(TM) プラットフォーム
x86 プラットフォーム x86 とは、Intel の Intel 80386、Intel 80486、Pentium またはその同等品を意味 します。
x86 とは、Pentium、Pentium Pro、Pentium II プロセッサおよび、これらと互換性のある AMD および Cyrix 製のマイクロプロセッサチップを含む、Intel 8086 マイクロプロセッサチップ群を意味しています。このマニュアルでは、これらすべてのプラットフォームアーキテクチャを総称して x86 と呼んでいます。特定のプラットフォームに固有の事項には、(SPARC) または (x86) と記述しています。
このマニュアルでは、各種言語で記述されたプログラムに使用できるパフォーマンス解析ツールについて説明します。以下のマニュアルでは、コンパイラ、データの使用方法、その他 Sun WorkShop に関する関連情報を説明しています。
『C ユーザーズガイド』 - C コンパイラのオプションとプラグマなどの詳細について説明しています。
『Sun Visual WorkShop C++ の概要』 - C++ パッケージに含まれる製品について簡単に説明しています。
『C++ ユーザーズガイド』 - C++ コンパイラのコマンド行オプションと使用方法について説明しています。
『C++ プログラミングガイド』 - テンプレートや例外処理、および FORTRAN 77 とのインタフェースに関係する内容について説明しています。
『C++ 移行ガイド』 - C++ コンパイラのリリース間での相違点について説明しています。
『C++ ライブラリ・リファレンス』 - iostream ライブラリについて説明しています。
『Tools.h++ 7.0 ユーザーズガイド』 - プログラムの効率を高める C++ クラスについて説明しています。
『Tools.h++ 7.0 クラスライブラリ・リファレンスマニュアル』 - Tools.h++ のクラスライブラリの詳細について説明しています。
『Sun Performance WorkShop Fortran の概要』 - Fortran パッケージに含まれる製品について簡単に説明しています。
『Fortran ユーザーズガイド』 - Fortran コンパイラのコマンド行オプションと使用方法について説明しています。
『Fortran プログラミングガイド』 - 入出力やライブラリ、プログラム分析、デバッグなどに関係する内容について説明しています。
『Fortran ライブラリ・リファレンス』 - 言語とルーチンの詳細について説明しています。
『FORTRAN 77 言語リファレンス』 - 全情報を網羅した言語リファレンスです。
『数値計算ガイド』 - 浮動小数点演算における数値の精度に関する内容について詳しく説明しています。
『標準 C++ ライブラリ・ユーザーズガイド』 - 標準 C++ ライブラリの使用方法について説明しています。
『Standard C++ Class Library Reference』(英語のみ) - 標準 C++ ライブラリの詳細について説明しています。
『Sun WorkShop クイックインストール』 - インストールに関するマニュアルです。
『Sun WorkShop のインストールとライセンス』 - インストールとライセンスの情報について説明しています。
『Sun WorkShop 入門』 - Sun WorkShop を使用してプログラムを開発する方法について説明しています。
『dbx コマンドによるデバッグ』 - dbx コマンドを使ってプログラムをデバッグする方法について説明しています。
『Sun WorkShop TeamWare ユーザーズガイド』 - Sun WorkShop TeamWare のコード管理ツールの使用方法について説明しています。
『Sun WorkShop Performance Library Reference』(英語のみ) - コンピュータによる線形代数とフーリエ変換の計算に使用するサブルーチンと関数からなるライブラリについて説明しています。
『Sun WorkShop Visual ユーザーズガイド』 - Sun WorkShop Visual を使用して C++ および Java グラフィカルユーザーインタフェースを作成する方法について説明しています。
『Sun WorkShop Memory Monitor ユーザーズガイド』 - Sun WorkShop Memory Monitor のガベージコレクションとメモリー管理ツールの使用方法について説明しています。
次の Solaris 関連のマニュアルにも役立つ情報が記載されています。
『リンカーとライブラリ』 - リンクとライブラリについて説明しています。
『プログラミングユーティリティ』 - 開発者向けに、SunOS(TM) システムに内蔵されている特殊なプログラミングツールについて説明しています。
サンのマニュアルは、次の形式でオンラインでご覧いただけます。
Web サイト docs.sun.com
AnswerBook2(TM) コレクション
HTML 形式
オンラインヘルプおよびリリースノート
Web サイト docs.sun.com では、サンの技術文書をオンラインでご覧になれます。 docs.sun.com にあるマニュアルの内容を参照したり、特定のタイトルや用語を含む マニュアルを検索することもできます。URL は http://docs.sun.com/ です。
Sun WorkShop に関するマニュアルは、AnswerBook2 ソフトウェアを使用して参照することもできます。このソフトウェアは、システムの管理者がインストールの時点で AnswerBook2 形式のマニュアルをインストールしていればご利用いただけます (インストールされていない場合は、システム管理者にお問い合わせいただくか、『Sun WorkShop クイックインストール』の第 3 章を参照してインストールしてください)。AnswerBook2 の使用法の詳細については、『Sun WorkShop クイックインストール』の第 6 章または Solaris のインストール関連のマニュアルを参照するか、ご使用の環境のシステム管理者にお問い合わせください。
Solaris 2.5.1 上で AnswerBook2 形式のマニュアルを参照するには、その前にサンの Web ページから AnswerBook2 文書サーバーソフトウェアをダウンロードする必要があります。詳細については『Sun WorkShop クイックインストール』の第 6 章を参照してください。
次の Sun WorkShop のマニュアルは、HTML 形式で用意されています。
『Tools.h++ 7.0 クラスライブラリ・リファレンスマニュアル 』
『Tools.h++ 7.0 ユーザーズガイド』
『数値計算ガイド』
『標準 C++ ライブラリ・ユーザーズガイド』
『Standard C++ Class Library Reference』(英語のみ)
『Sun WorkShop Performance Library Reference Manual』(英語のみ)
『Sun WorkShop Visual ユーザーズガイド』
『Sun WorkShop Memory Monitor ユーザーズガイド』
HTML 形式のマニュアルを表示するには、次の手順に従ってください。
HTML ブラウザで、次のファイルを開きます。
install-directory/SUNWspro/DOC5.0/lib/locale/ja/html/index.html
install-directory には、Sun WorkShop がインストールされているディレクトリを入力してください (デフォルトでは /opt です)。
ブラウザに、インストールされている Sun WorkShop 製品のマニュアル一覧が表示されます。
マニュアル一覧のマニュアル名をクリックします。
HTML 形式のマニュアルが開きます。
このリリースの WorkShop には、オンラインマニュアル以外に新しい形式のマニュアルが用意されています。詳細は、以下のいずれかを参照してください。
オンラインヘルプ - 様々な作業と内容に関する情報を参照できる、新しいヘルプシステムです。ヘルプを参照するには、「ヘルプ」から「ヘルプの目次」を選択します。すべての WorkShop ウィンドウで「ヘルプ」メニューを使用することができます。
リリースノート - WorkShop に関する一般的な情報およびソフトウェアの制限やバグに関する情報が記載されています。リリースノートを参照するには、「ヘルプ」から「リリースノート」を選択します。
このマニュアルで使用している書体と記号について説明します。
表 P-1 このマニュアルで使用している書体と記号
書体または記号 |
意味 |
例 |
---|---|---|
AaBbCc123 |
コマンド名、ファイル名、ディレクトリ名、画面上のコンピュータ出力、コーディング例。 |
.login ファイルを編集します。 ls -a を使用してすべてのファイルを表示します。 machine_name% You have mail. |
AaBbCc123 |
ユーザーが入力する文字を、画面上のコンピュータ出力と区別して表わします。 |
machine_name% su Password: |
AaBbCc123 またはゴシック |
コマンド行の可変部分。実際の名前または実際の値と置き換えてください。 |
rm filename と入力します。 rm ファイル名 と入力します。 |
『 』 |
参照する書名を示します。 |
『SPARCstorage Array ユーザーマニュアル』 |
「 」 |
参照する章、節、または、強調する語を示します。 |
第 6 章「データの管理」を参照してください。 この操作ができるのは、「スーパーユーザー」だけです。 |
¥ |
枠で囲まれたコード例で、テキストがページ行幅を超える場合、バックスラッシュは、継続を示します。 |
machinename% grep '^#define ¥ XV_VERSION_STRING' |
シェルプロンプトの例を以下に示します。
表 P-2 シェルプロンプト
シェル |
プロンプト |
---|---|
UNIX の C シェル |
machine_name% |
UNIX の Bourne シェルと Korn シェル |
machine_name$ |
スーパーユーザー (シェルの種類を問わない) |
# |