更新日付: 2003 年 3 月 28 日

Sun[tm] ONE Studio 8: プログラムパフォーマンス解析ツール Readme

目次

  1. はじめに
  2. IDE からアナライザを開始する
  3. Sun[tm] ONE Studio 8 プログラムパフォーマンス解析ツールについて
  4. 新規および変更された機能
  5. ソフトウェアの修正事項
  6. 問題点と回避策
  7. 制限事項と互換性の問題
  8. 記述の誤りの訂正
  9. 必要なパッチ

 


A. はじめに

この文書には、Sun[tm] Open Net Environment (Sun ONE) Studio 8, Compiler Collection のプログラムパフォーマンス解析ツールに関する情報が含まれています。これらのツールには、プログラムパフォーマンスデータの収集、操作を行うコマンドと、パフォーマンスデータを表示するためのグラフィカルユーザーインタフェース (パフォーマンスアナライザ)、およびコマンド行インタフェース (er_print) が含まれています。本書で使用するコレクタという用語は、パフォーマンスデータを収集するツール群とそれらの基本ライブラリを総称しています。これらのツールとは、collect コマンド、dbx collector サブコマンド、IDE のパフォーマンスデータ収集機能です。

この文章では、このリリースで導入された新機能とソフトウェアの修正事項、既知の問題点、制限事項、互換性の問題について説明しています。また、本書の記載内容はソフトウェアマニュアルの情報を更新または補充します。

製品マニュアル

注意 - ご使用の Compiler Collection がデフォルトの /opt 以外のディレクトリにインストールされている場合は、システム管理者に実際の環境パスを問い合わせてください。

注意 -  この文書では、「Java 仮想マシン」および「JVM」は、Java[tm] プラットフォーム対応の仮想マシンを指しています。

 


B. IDE からアナライザを開始する

IDE からパフォーマンスアナライザを開始するには、次のいずれかの処理を行います。

注: IDE は、Sun[tm]  ONE Studio 4 update 1, Enterprise Edition for Java[tm] の一部として含まれています。

 


C. プログラムパフォーマンス解析ツールについて

Sun[tm] ONE Studio 8 プログラムパフォーマンス解析ツールの本リリースは、Solaris[tm] オペレーティング環境 (SPARC® Platform Edition) バージョン 7、8、9、および Solaris オペレーティング環境 (x86 Platform Edition) バージョン 7、8、9 で使用できます。 IDE は、Sun ONE Studio  4 update 1, Enterprise Edition for Java[tm] の一部として含まれており、Solaris オペレーティング環境 (SPARC Platform Edition) バージョン 8 および 9 で使用できます。GUI を使用するには、 Sun[tm] ONE Studio 4 update 1 のライセンスが必要です。 必要なライセンスをインストールする方法については、『Compiler Collection IDE オプション README』を参照してください。

プログラムパフォーマンス解析ツールは、プログラムのパフォーマンス統計プロファイルを収集し、重要なライブラリルーチンの呼び出しをトレースし、表や図形を使ってそれらのデータを表示します。収集されたデータは、パフォーマンスメトリックに変換されます。メトリックは、ロードオブジェクト、関数、ソース行、命令レベルのいずれかで表形式で表示されます。これらのツールは、プログラム構造をナビゲートできるので、リソースの使用法、非効率性、遅延などに影響のあるコード内の関数やパスの識別に役立ちます。パフォーマンスアナライザ GUI では、タイムラインディスプレイにパフォーマンスデータを表示することもできます。

Sun[tm] ONE Studio Collector の本リリースでは、ベースとなる JVM (Java 仮想マシン) のサポートを使用して、Java[tm] プログラミング言語で記述されているアプリケーションをプロファイルすることができます。JVM[tm] バージョン 1.4.x にはこのサポートが含まれていますが、実験の段階によっては、JVM の将来的なリリースで変更される可能性があります。 Sun ONE Studio Collector の本リリースを、JVM の将来的なリリースで使用すると、Sun ONE Studio Collector で、Java プログラミング言語で記述されたアプリケーションのプロファイリング情報を収集できないことがあります。 Sun では、Sun ONE Studio Collector の将来的なリリースで、JVM プロファイリングテクノロジの変更に伴う Java プロファイリングをサポートできると考えています。

 


D. 新規および変更された機能

ここでは、Sun[tm] ONE Studio 7 (Forte[tm] Developer 7) リリース以降、パフォーマンスツールに追加された新機能および変更された機能について説明します。

データ収集機能

以下の一覧は、新たに追加または変更されたデータ収集機能の説明です。

詳しくは、マニュアルページ collect(1)、collector(1)、および libcollector(3) を参照してください。

データ表現機能

詳しくは、マニュアルページ analyzer(1) と er_print(1)、およびパフォーマンスアナライザオンラインヘルプを参照してください。

 


E. ソフトウェアの修正事項

Forte[tm] Developer 7 の以下の問題点は修正されました。

  1. Java[tm] プログラミング言語で記述されたマルチスレッドのアプリケーションで、プロファイリングが失敗することがある

  2. LD_PRELOAD および LD_AUDIT_32 または _64 ビット派生環境変数が設定されていると、欠陥のある実験が生成される

  3. 収集関数の MPI 時間の値が大きすぎる

  4. 同じ実験の実装を何度も再ロードするとコアダンプが発生する

  5. 32 個を超える CPU に対するスケーラビリティの低下

 

  1. Java[tm] プログラミング言語で記述されたマルチスレッドのアプリケーションでプロファイリングが失敗することがある

    Java プログラミング言語で記述されたマルチスレッドのアプリケーションに記録されている実験を読み込むときに、パフォーマンスアナライザと er_print が失敗することがあります。 実験のデータは正しく記録されません。(4649137)

  2. LD_PRELOAD および LD_AUDIT_32 または _64 ビット派生環境変数が設定されていると、欠陥のある実験が生成される

    collect コマンドは、LD_PRELOAD_32LD_PRELOAD_64LD_AUDIT_32、または LD_AUDIT_64 の環境変数のいずれかが設定されていると、空の実験を生成します。 この問題を回避するには、データ収集にdbx collectorコマンドを使用します。

    この問題は、パッチ 111705-01 を適用することで、すでに修正しています。

  3. 収集関数の MPI 時間の値が大きすぎる

    収集処理の MPI 時間が、収集のメンバー数のファクタによって実際より多くカウントされます。 (4811269)

  4. 同じ実験を何度も再ロードするとコアダンプが発生する

    同じ実験を何度も再ロードすると、アナライザでコアダンプが発生します (4748944)

  5. 32 個を超える CPU に対するスケーラビリティの低下

    32 個以上の CPU またはスレッドを使用するアプリケーションでは、パフォーマンスデータの収集中に処理速度が急激に低下することがあります。 (4273174, 4304367)

 

 


F. 問題点と回避策

ここでは、これまでにわかっているソフトウェアの問題点とその回避策について説明します。一部の問題は、パッチで修正することができます。 更新情報については、 http://sun.co.jp/software/sundev/suncc/hotnews.html のアップデート情報を参照してください。

一部の問題は、Solaris[tm] オペレーティング環境のバグが問題であり、これは該当するパッチをインストールすることで解消できます。詳しくは、Readme の「必要なパッチ」の節を参照してください。また、バグの中には、アナライザの問題のように見えて、実際にはコレクタの問題であるものも存在します。コンパイラや dbx のバグもアナライザに影響します。 バグが原因ではない問題についても、ここで説明します。

 

 

パフォーマンスツールのバグ
  1. Java[tm] 仮想マシンで Java プロファイリングがクラッシュすることがある

  2. Java 同期化およびヒープトレースでパフォーマンス上の問題がある

  3. dbx における Java プロファイルがサポートされていない

  4. Intel プラットフォームで Java プロファイルが失敗することがある

  5. さなざまな処理で Java プロファイルのデータが失われることがある

  6. パフォーマンスアナライザは 2G バイト以上のデータを扱えない

  7. 「概要」または「イベント」タブのデータを出力できない

  8. 並列の指令行ではメトリックが二重にカウントされる

  9. 共有されているいくつかのオブジェクトでデータが破棄される

  10. 複数の実験について、<選択されている実験の合計> の統計が誤っている

 

  1. Java[tm] 仮想マシンで Java プロファイリングがクラッシュすることがある

    リリース 1.4.2 のベータ版より前の JVM[tm] マシンを使用している Java プロファイリングは、Java の バグが原因でクラッシュすることがあります。また、それ以降の JVM[tm] マシンでもクラッシュすることがあります (Java プログラミング言語のバグ 4757672、4762958、4763610、4808151、4812196)

  2. Java 同期化およびヒープトレースでパフォーマンスの問題がある

    Java 同期化およびヒープトレースで、(特にヒープトレースで大容量の実験を処理する場合には) パフォーマンス上の問題があります。

  3. dbx における Java プロファイリングがサポートされていない

    dbx コレクタを使用した Java プロファイリング、または SunONEStudio IDE のコレクタのグラフィカルインタフェースを使用した Java プロファイリングは、まだサポートされていません (4771337)

  4. Intel プラットフォームの Java プロファイリングが失敗することがある

    Intel プラットフォームにおいて Java モードでデータ収集を行うと、データ収集が失敗することがあります。これは、JVM [tm] ソフトウェアの必要な関数に明確な不具合があるためです (Java プログラミング言語のバグ 4505739)

  5. さまざまな処理で Java プロファイリングのデータが失われることがある

    ガベージコレクション、 system.* メソッドのコール時、モニター待ちのとき、およびその他にもさまざまタイミングで、データ収集のデータが失われることがあります。 JVM[tm] は、これらのタイミングでは Java スタックを解放しません (4824989、4762954)

  6. パフォーマンスアナライザで 2G バイト以上のデータを扱えない

    パフォーマンスアナライザは約 2G バイト以上のデータを読み取って処理することができません。er_print を使用すると、全体のデータサイズが 2G バイトを超える 1 つまたは複数の実験を解析できます。その他に、収集パラメータを制御して記録するデータを減らしたり、プログラム全体ではなく一部分に関してのみデータを収集したり、データ制限を設定するなどの回避策があります。詳しくは、collect(1)、collector(1)、libcollector(3) マニュアルページ、および『プログラムパフォーマンスの解析』マニュアルを参照してください。 (4505739)

  7. 「概要」タブまたは「イベント」タブのデータを出力できない

    パフォーマンスアナライザは「概要」タブまたは「イベント」タブのデータを出力できません。関数またはロードオブジェクトの概要データを出力するには、er_print コマンドを使用します。(4286674)

  8. 並列の指令行ではメトリックが二重にカウントされる

    注釈付きソースコードにおける並列化コンパイラ指令行について報告されるメトリックが、二重にカウントされます。コードの並列 do、for、または section ブロックのソース行に関するメトリックは正しくカウントされます。関数レベルでの二重カウントエラーも発生することがあります。(4656193)

  9. 共有されているいくつかのオブジェクトでデータが破棄される

    同じ環境のもとで、アナライザは誤って、共有している 2 つのオブジェクトがオーバーラップしているとみなして、最初に記録されているオブジェクトからデータを破棄することがあります。 アナライザは、共有オブジェクトのテキストおよびデータセグメントが隣接してマップされていると仮定しますが、隣接していない場合もあります (4819207)。

  10. 複数の実験で、<選択されている実験の合計> の統計が誤っている
    複数の実験を読み込んだときに、<選択されている実験の合計> の統計が間違っています (4834122)。ただし、個別の実験の統計データは正しくなります。

 

Solaris[tm] オペレーティング環境のパッチで訂正できる問題

以下の問題は、Solaris[tm] オペレーティング環境に適切なパッチをインストールすることによって解決できます。Readme の「必要なパッチ」の節も参照してください。

  1. ハードウェアカウンタのプロファイリングでアプリケーションがクラッシュする

  2. LWP のクロック関係のプロファイルデータの消失

  3. ハードウェアカウンタのプロファイル割り込みの消失

  4. 負荷がかかっているシステムのクロックベースのプロファイリングが不正確

 

  1. ハードウェアカウンタのプロファイリングでアプリケーションがクラッシュする

    特定の環境では、HW カウンタのプロファイリングの割り込みによって、UltraSPARC-III プロセッサにおける OS のバグが発生します。このバグによって、%y レジスタが壊れることがあります。その時点でレジスタが有効になっていると、アプリケーションがクラッシュすることがあります。 この問題は、Solaris[tm] 8, HW2 update、および Solaris[tm] 9, update 4 で解決されています。 この問題は、プロファイリングの分解能を低くしたり、1 つのカウンタのみを使用したりすることによって、発生の頻度が減少します (4793905)

  2. LWP のクロック関係のプロファイルデータの消失

    1 つまたは複数の LWP に対するプロファイリング割り込み (SIGPROF) が失われる可能性があります。 この問題は、結合スレッドを使用することで回避できます。また、Solaris[tm] 8 オペレーティング環境であれば、/usr/lib/lwp の代替スレッドライブラリを使用して回避できます。代替スレッドライブラリは、非結合スレッド API がサポートされていても結合スレッドを使用します。(4352643)

  3. ハードウェアカウンタのプロファイル割り込みの消失

    非結合スレッドとともにプログラムを実行すると、ハードウェアカウンタのオーバーフロー (SIGEMT) からの割り込みが失われて、回復不可能になることがあります。この問題は、結合スレッドを使用することで回避できます。また、Solaris[tm] 8 オペレーティング環境であれば、/usr/lib/lwp の代替スレッドライブラリを使用して回避できます。代替スレッドライブラリは、非結合スレッド API がサポートされていても結合スレッドを使用します。(4352643)

  4. 負荷がかかっているシステムのクロックベースのプロファイリングが不正確

    システムに負荷がかかっているときにアプリケーションをプロファイリングすると、ユーザーの CPU 使用時間が実際よりかなり (最大で 20 パーセントまで) 少なく計測されます。 測されなかったユーザーの CPU 使用時間は、システムの CPU 使用時間または CPU の待ち時間とみなされます。(4509116)

 

その他の問題
  1. シグナルハンドラをインストールするアプリケーションで動作が変わる

  2. dbxがプロセスに接続されたときにデータ収集に問題が発生する

  3. 統計表示と標本の待ち CPU メトリックの値が正しくない

  4. 短い時間間隔でクロックプロファイリングデータが失われる

  5. データ収集がスタックオーバーフローで異常終了する

  6. プログラムが exec を呼び出すと実験が不完全になる

  7. 末尾呼び出し最適化で再帰情報が誤って報告される

  8. リンクが最適化されている実行可能ファイルに、ソースが表示されない

  9. アウトライン関数の最適化で、再帰情報が誤って報告される

  10. java.util.prefs.FileSystemPreferences の警告メッセージが表示された場合の解決策

 

  1. シグナルハンドラをインストールするアプリケーションで動作が変わる

    シグナルハンドラをインストールするアプリケーションのパフォーマンスデータを収集すると、コレクタまたはそのアプリケーションの動作が変わる可能性があります。 検出された場所で、コレクタライブラリは、実験に警告メッセージを記録します。

    コレクタライブラリが事前にロードされると、コレクタのシグナルハンドラは常に自分のシグナルハンドラを一次ハンドラとして再インストールし、使用しないシグナルを他のシグナルハンドラに転送します。ただし、コレクタがシステムコールに割り込むことはないため、システムコールに割り込むシグナルハンドラをインストールするアプリケーションでは、その動作が変わる可能性があります。 非同期の取り消し操作に SIGPROF を使用する非同期入出力ライブラリ libaio.so の場合、非同期取り消し要求が遅れて届きます。(4397578)

    コレクタライブラリを事前にロードせずに dbx をアプリケーションに接続すると、コレクタは有効になった時点でそのシグナルハンドラを一次ハンドラとしてインストールします。ただし、それ以降にインストールされたシグナルハンドラがあれば、そのハンドラの方がコレクタのシグナルハンドラに優先します。このシグナルハンドラが SIGPROF シグナルと SIGEMT シグナルをコレクタのシグナルハンドラに転送しない場合、プロファイリングデータは失われます。

  2. dbx がプロセスに接続されたときにデータ収集に問題が発生する

    コレクタライブラリ libcollector.so を事前にロードせずに実行中のプロセスに dbx を接続すると、多数のエラーが発生することがあります。

    • トレースデータを収集することはできません。トレースデータとは、同期待ちトレース、ヒープトレース、MPI トレースなどです。トレースデータは、さまざまなライブラリに介入することによって収集されますが、libcollector.so が事前にロードされていない場合、他のライブラリに介入することができません。

    • dbx がプロセスに接続されたあとプログラムがシグナルハンドラをインストールしていて、このシグナルハンドラが SIGPROF シグナルと SIGEMT シグナルを転送しない場合、プロファイリングデータと標本データが失われます。(4397578)

    • プログラムが非同期入出力ライブラリ libaio.so を使用している場合、libaio.soSIGPROF を使用して非同期の取り消し操作を行うため、クロックベースのプロファイリングデータと標本データは失われます。

    • プログラムがハードウェアカウンタライブラリlibcpc.so を使用している場合、コレクタとプログラムが両方ともこのライブラリを使用するため、ハードウェアカウンタオーバーフロープロファイリング実験が破壊されます。 dbx がプロセスに接続されたあとでハードウェアカウンタライブラリがロードされる場合、ハードウェアカウンタ実験は成功しますが、libcpc ライブラリ関数への参照は libcpc.so の検索ではなく一般的検索によって解決されます。

    • プログラムが setitimer(2) を呼び出すと、コレクタとプログラムが両方ともこのタイマーを使用しているため、クロックベースのプロファイリング実験は失われる可能性があります。

  3. 統計表示と標本の待ち CPU メトリックの値が正しくない

    標本パッケージと大域統計には、不正な待ち CPU メトリックが記録されることがあります。これらの値はパフォーマンスアナライザの「統計」タブに表示され、「タイムライン」タブにおける標本の表示に影響します。(4615617)

  4. 短い時間間隔で時間プロファイリングデータが失われる

    時間プロファイリングデータは、システムクロックが外部ソースと同期処理されている最中に数秒の間、消失しているように見えることがあります。この間、システムクロックは同期がとられるまで増分されていきます。 プロファイルシグナルは設定された間隔で送出されますが、プロファイルパケットに記録されているタイムスタンプには、シグナルの送出間の増分時間も含まれます。

  5. データ収集がスタックオーバーフローで異常終了する

    コレクタはスタックオーバーフローエラーのために、収集を実行できないことがあります。 コレクタがアプリケーション側のスタックを使用していて、そのスタックのサイズがコレクタで使用するには小さすぎる場合に、この状況が発生します。 この問題を回避するには、スタックのサイズを 8K バイト以上にします。 詳細は、limit(1) のマニュアルページを参照してください。マルチタスク用ライブラリを使用する並列アプリケーションの場合、各スレッドのスタックサイズも STACKSIZE 環境変数を使用して設定する必要があります。

  6. プログラムが exec を呼び出すと実験が不完全になる

    パフォーマンスデータが正常に収集されているプログラムで exec(2) やその派生関数を呼び出すと、実験が異常終了します。パフォーマンスアナライザや er_print でこの実験を読み取ることはできますが、データが収集されたコンピュータ上でその実験に対してer_archive(1) を実行して、プログラムで使用したロードオブジェクトが正しくアーカイブされたことを確認する必要があります。

  7. 末尾呼び出し最適化で再帰情報が誤って報告される

    共有オブジェクト (PIC コード) から末尾呼び出しの最適化呼び出しを行って、大域変数を参照するために大域オフセットテーブルアドレスを判別する必要がある関数で、最適化コードが再帰的として誤って報告され、実際の呼び出し元が失われます。(4656890)

  8. リンクが最適化された実行可能ファイルでソースが表されない

    リンクが最適化されている実行可能ファイルでは、実行可能ファイルのソースを表示するのに正しい行番号情報が必要ですが、パフォーマンスツールは、オブジェクトファイルの誤った情報を参照しています。 この問題の対策は、オブジェクトファイルを削除または名前変更して、ツールが実行可能ファイルを参照するようにすることです (4804467)

  9. アウトライン関数の最適化で、再帰情報が誤って報告される

    ほとんど実行されないコードに対してアウトライン関数を生成することによって最適化された関数では、ツールがアウトライン関数の復帰アドレスを判断できないため、再帰情報が誤って報告されます (4800953)

  10. java.util.prefs.FileSystemPreferences の警告メッセージが表示された場合の解決策

    java.util.prefs.FileSystemPreferences の警告メッセージが表示された場合は、次の方法を試してください。

    %cd /usr/j2sdk1.4.1_01/jre (またはご使用の JRE ホーム)
    %mkdir .systemPrefs
    %chmod 777 .systemPrefs

 


G. 制限事項と互換性の問題

ここでは、制限事項およびシステムまたはその他のソフトウェアとの互換性の問題について説明します。

  1. パフォーマンスアナライザの要件

  2. Java[tm] プログラミング言語で記述されたアプリケーションのプロファイリング

  3. ハードウェアカウンタのオーバーフロープロファイリング

  4. ライブラリへの介入

  5. ソースファイルとオブジェクトファイルの検出

  6. 実験の互換性の問題

  7. setuid の使用

 

  1. パフォーマンスアナライザの要件

    パフォーマンスアナライザを使用するには、バージョン 1.4 以降の Java[tm] 2 Software Development Kit, Standard Edition が必要です。1.4 以前のバージョンでもパフォーマンスアナライザを使用できますが、実行に失敗したり、正しく機能しなかったり、十分に動作しない可能性があります。

  2. Java[tm] プログラミング言語で記述されているアプリケーションのプロファイリング

    Java[tm] プログラミング言語で記述されているアプリケーションで Java モードのプロファイリングデータを収集するには、バージョン 1.4.1 以降の Java 2 Software Development Kit, Standard Edition を使用する必要があります。Java プログラミング言語で記述されているアプリケーションでマシンモードのプロファイリングデータを収集するには、バージョン 1.4.0 以降のものを使用する必要があります。 JVM[tm] ソフトウェアにはバグがあり、これらのバグによって、1.4.2 ベータより前のバージョンではプログラムの実行が失敗する場合があります。それ以降のバージョンでも、(頻度は少なくなりますが) 失敗する場合があります。

    Java モードのプロファイリングで最適な結果を得るには、Java 2 Software Development Kit, Standard Edition の最新バージョンを使用してください。

  3. ハードウェアカウンタのオーバーフロープロファイリング

    ハードウェアカウンタのオーバーフロープロファイリングは、UltraSPARC® III シリーズより前の UltraSPARC® プロセッサではサポートされていません。

    ハードウェアカウンタのオーバーフロープロファイリングは、Solaris[tm] 8 リリースより前のバージョンのオペレーティング環境ではサポートされていません。

    UltraSPARC® III の初期バージョンのハードウェアの中には、ユーザー DTLB または ITLB のミスに基づくプロファイリングをサポートしていないものがあります。サポートしているのは、カーネルモード時の TLB カウンタだけです。

    cputrack がシステムで実行されていると、cputrack がハードウェアカウンタを制御するため、コレクタはハードウェアカウンタオーバーフローデータを収集することができません。

  4. ライブラリへの介入

    コレクタは、シグナル処理、forkexec 呼び出し、ハードウェアカウンタライブラリ、一部のタイミング関数などさまざまなシステム関数に介入して、有効なデータを収集できるようにしています。これらの関数のいずれかをプログラムが使用すると、その動作が変わることがあります。特に、プロファイリングタイマーとハードウェアカウンタは、プロファイリングが有効な場合はプログラムで使用できず、シグナルを送出するためにシステムコールが割り込まれることはありません。この動作は、システムコールに割り込んでシグナルを送出する非同期入出力ライブラリ libaio.so の使用に影響します。コレクタライブラリ libcollector.so を事前にロードすることなく、dbx を実行中のプロセスに接続してからデータ収集を有効にした場合には、このようなライブラリへの介入は行われません。

  5. ソースファイルとオブジェクトファイルの検出

    デバッガがプロセスに接続されたときに生成される実行可能ファイル名が、絶対パスではなく相対パスの場合があります。 同様の問題が、アーカイブ (.a) から読み込まれたオブジェ クトファイルでも発生することがあります。

    パフォーマンスアナライザは、実行可能ファイルまたはオブジェクトファイルに記録されているパスからベース名 (最後の "/" に続く名前) を抽出し、次のようにしてファイルを検索します。

    1. addpath または setpath コマンドで指定されたディレクトリ、または「データ表示方法の設定」ダイアログの「バスを検索」タブで設定されたとおりの順序のディレクトリで、ベース名を持つファイルを検索します。デフォルトの setpath は次のとおりです。
    2. A. 実験のアーカイブディレクトリ
      B. 現在の作業用ディレクトリ (./<basename>)
    3. 最初に記録されていたパスを使用してファイルを検索します。

    それでもファイルが見つからない場合は、エラーまたは警告を生成して、実験ファイルに当初示されたパスを示します。

    パフォーマンスアナライザでソースファイルを検出できるようにするには、対象ファイルが含まれているディレクトリを検索パスに追加するか、またはカレントディレクトリからそのファイルの実際の場所を指すシンボリックリンクを設定するか、または該当するファイルを実験にコピーします。

  6. 実験の互換性の問題

    パフォーマンスアナライザは、Forte[tm] Developer 7 ソフトウェアリリースより前のコレクタを使って作成された実験データを読み込むことはできません。

  7. setuid の使用

    プロセスが setuid を呼び出したり、setuid ファイルを実行したりすると、コレクタはアクセス権の問題が原因で実験を生成できないことがあります。

データ収集の制限についての詳細は、 collect(1) マニュアルページを参照してください。

 


H. 記述の誤りの訂正

現時点では新しい情報はありません。

 


I. 必要なパッチ

パフォーマンス解析ツールによる問題の中には、Solaris[tm] オペレーティング環境のバグに起因するものがあります。これらのバグを修正するには、関連するパッチをインストールする必要があります。必要なパッチの一覧を入手するには、コマンドプロンプトに対して collect コマンドを引数なしで実行します。上記のパッチは、http://sunsolve.sun.com からダウンロードできます。Solaris 8[tm] オペレーティング環境では、パッチをインストールする前にアップデート 5 以降のアップデート版をインストールする必要があります。

以下の問題は、パッチがインストールされていない場合に、コレクタおよびパフォーマンスアナライザで発生することがあります。

 


Copyright © 2003 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.