NEC ELECTRONICS NEC ELECTRONICS
NEC electronics NEC electronics NEC
ホーム
アプリケーション
製品情報
先端技術
サポート
WEBショップ
ニュース&イベント
会社案内
header
GO
詳細検索機能/特性検索
サイトマップ お問い合わせ

その他全般


目次

    
FAQ-ID = v850-nnn
898: TWで認識されない関数を認識させるためにはどうすればよいですか?
899: 特定のソース・ファイルや関数を性能解析/チューニング対象から外すにはどうすればよいですか?
900: チューニング後実行モジュールのコンパイル時間が、オリジナル実行モジュールのコンパイル時間より長くなる場合がありますが、なぜですか?
905: チューニング後実行モジュールのチューニング時間が、オリジナル実行モジュールのチューニング時間より長くなる場合がありますが、なぜですか?
896: チューニング後のプログラム・サイズがチューニング前より増加していることがありますが、なぜですか?
907: チューニング後実行モジュールのデバッガへのダウンロードの際、デバッガがタイム・アウトして、チューニング後実行モジュールの実行に失敗します。
901: エラーが発生した場合、どのように対処すればよいですか?
903: エラー・メッセージ "E0401:プロファイル用実行モジュールのビルドに失敗しました。" が表示されます。
906: エラー・メッセージ "E0402:チューニング後実行モジュールのビルドに失敗しました。" が表示されます。
904: エラー・メッセージ "E0407:チューニング後実行モジュールの実行に失敗しました。" が表示されます。

v850
-898
TWで認識されない関数を認識させるためにはどうすればよいですか?
Q
TWで認識されない関数を認識させるためにはどうすればよいですか?
A
TWでは、.textセクションに割り付けられている関数のみ、性能解析/チューニング対象としています。
性能解析/チューニング対象としたい関数は、.textセクションに割り付けてください。


なお、C言語ソース・ファイルの場合、明示的にセクションに割り付けられていない関数は、 .textセクションに割り付けられるので、性能解析/チューニング対象となります。
しかし、アセンブリ言語ソース・ファイルの場合、 記述によってはTWが認識できない場合があります。
詳細については、ユーザーズ・マニュアルの 「アセンブリ言語ソース・ファイルにおける注意事項」を参照してください。

この情報はお役にたちましたか?
back to top  

v850
-899
特定のソース・ファイルや関数を性能解析/チューニング対象から外すにはどうすればよいですか?
Q
特定のソース・ファイルや関数を性能解析/チューニング対象から外すにはどうすればよいですか?
A
特定のソース・ファイルを性能解析/チューニング対象から外すためには、 そのソース・ファイルをオブジェクト・ファイル(*.o)に変換して、 プロジェクトに登録されているソース・ファイルを変換したオブジェクト・ファイルに変更してください。


特定の関数を性能解析/チューニング対象から外すためには、 その関数を .text セクション以外のセクションに割り付けてください。
ただし、その割り付け先のセクションのマッピングをリンク・ディレクティブ・ファイルに追加する必要があります。

この情報はお役にたちましたか?
back to top  

v850
-900
チューニング後実行モジュールのコンパイル時間が、オリジナル実行モジュールのコンパイル時間より長くなる場合がありますが、なぜですか?
Q
チューニング後実行モジュールのコンパイル時間が、 オリジナル実行モジュールのコンパイル時間より長くなる場合がありますが、 なぜですか?
A
実行モジュールのコンパイル時間は、コンパイラによっては、 セクションの数が多くなると、その数に比例して長くなります。
チューニング後実行モジュールには、 TWが認識する関数の数だけセクションが追加されます。
そのため、チューニング後実行モジュールにおいてTWが認識する関数の数が多い場合、 多くのセクションが追加されることによって、 コンパイル時間がかなり長くなる場合があります。
この情報はお役にたちましたか?
back to top  

v850
-905
チューニング後実行モジュールのチューニング時間が、オリジナル実行モジュールのチューニング時間より長くなる場合がありますが、なぜですか?
Q
チューニング後実行モジュールのチューニング時間が、 オリジナル実行モジュールのチューニング時間より長くなる場合がありますが、なぜですか?
A
以下の項目を確認してください。


(1)高速アクセス・メモリ領域、または、命令キャッシュが存在することを確認してください。

TWは、プログラムを高速化するためのチューニング方法として、 「高速アクセス・メモリ領域のチューニング」と「命令キャッシュのチューニング」 を提供しています。
そのため、高速アクセス・メモリ領域と命令キャッシュのどちらも存在しないターゲット(CPU) 用のプログラムをチューニングした場合、高速化することはできません。
(2)オリジナル実行モジュールで、 すべてのプログラムが高速アクセス・メモリ領域に配置されているか、または、 プログラムのサイズが命令キャッシュ・メモリのサイズより小さいかを確認してください。
オリジナル実行モジュールで、 すべてのプログラムが高速アクセス・メモリ領域に配置されている場合や、 プログラムのサイズが命令キャッシュ・メモリのサイズより小さい場合は、 高速化することはできません。
(3)ユーザ指定パターンの場合、チューニングの設定が適切でない可能性があります。
標準パターンでチューニングを行うか、ユーザ指定パターンで設定を変更して試してみてください。
(4)すでに最適な関数配置がされている場合があります。
そのような場合は、これ以上高速化することはできません。
この情報はお役にたちましたか?
back to top  

v850
-896
チューニング後のプログラム・サイズがチューニング前より増加していることがありますが、なぜですか?
Q
チューニング後のプログラム・サイズがチューニング前より増加していることがありますが、 なぜですか?
A
TWのチューニングでは、関数を最適な位置に配置したり、 関数と関数の間にホールを挿入する場合があります。
そのため、プログラム・サイズが増加することがあります。
この情報はお役にたちましたか?
back to top  

v850
-907
チューニング後実行モジュールのデバッガへのダウンロードの際、デバッガがタイム・アウトして、チューニング後実行モジュールの実行に失敗します。
Q
チューニング後実行モジュールのデバッガへのダウンロードの際、 デバッガがタイムアウトして、 チューニング後実行モジュールの実行に失敗しています。
A
チューニング後実行モジュールには、TWが認識する関数の数分のセクションが追加されるため、 デバッガによっては、そのダウンロードに時間がかかる場合があります。


ダウンロード時間が長いことによって、デバッガがタイムアウトしてしまう場合は、 TWの起動オプションに

-Dtw.DebuggerTimeout=DbgTmout
を追加してください。
DbgTmoutには、 TWがデバッガの起動処理を開始してから操作可能状態になるまでの応答待ち時間(単位:秒) を指定してください。
なお、DbgTmoutに指定可能な値は、1〜3600に限られます。
この情報はお役にたちましたか?
back to top  

v850
-901
エラーが発生した場合、どのように対処すればよいですか?
Q
エラーが発生した場合、どのように対処すればよいですか?
A
エラーが発生した場合は、エラー・ダイアログが表示されます。
エラー・ダイアログの<ヘルプ>ボタンを押下すると、 そのエラーに対応するHTMLヘルプが起動するので、対処方法を参照してください。


また、エラーによっては、エラー・ダイアログに<詳細>>>ボタンが表示されます。
<詳細>>>ボタンを押下すると、詳細なメッセージが表示されます。
表示されたメッセージをダブル・クリックすると、 そのメッセージに対応するHTMLヘルプが起動するので、対処方法を参照してください。
なお、詳細なメッセージが表示された場合、 最後に表示されているエラーが原因となっている場合が多くあります。

この情報はお役にたちましたか?
back to top  

v850
-903
エラー・メッセージ "E0401:プロファイル用実行モジュールのビルドに失敗しました。" が表示されます。
Q
エラー・メッセージ


E0401:プロファイル用実行モジュールのビルドに失敗しました。


が表示されます。

A
以下の項目を確認してください。


(1) アセンブリ言語ソース・ファイルをプロジェクトに登録している場合、 そのファイルがTWで認識されるかどうかを確認してください。

アセンブリ言語ソース・ファイルの場合、 記述によってはTWが認識できない場合があります。
詳細については、ユーザーズ・マニュアルの 「アセンブリ言語ソース・ファイルにおける注意事項」を参照してください。
該当箇所がある場合は、そのファイルを修正するか、 ファイルがTWの性能解析対象とならないように、 オブジェクト・ファイルとしてプロジェクトに登録するようにしてください。
(2) ウィザードの設定に誤りがある可能性があります。


以下の項目を確認してください。
  • プロファイル・ルーチンとプロファイル・テーブルの挿入先の指定は正しいかですか?
  • プロファイル・ルーチンとプロファイル・テーブルの挿入先に十分な空き領域はありますか?
(3) プローブ・コードとプロファイル・ルーチンの配置距離が遠く、 プログラム中の分岐命令ではプロファイル・ルーチンに届かない可能性があります。


配置先選択パネルにおいて、 プローブ・コードとプロファイル・ルーチンの配置距離が近くなるように配置するか、 プローブ解析オプション選択パネルにおいて、[プロファイル・ルーチン呼び出しに far jumpを使用する]チェック・ボックスを選択してください。
ただし、プロファイル・ルーチン呼び出し方法としてfar jump命令を用いると、 プローブ・コードのサイズが増加します。
(4) プローブ・コードの挿入によってプログラムのサイズが増加したため、 関数呼び出しが届かない配置距離になっている可能性があります。
配置距離が長くなってしまった関数を持つソース・ファイル同士の場合、 プロジェクトへの登録順序を近くしてください。
同一ソース・ファイルの場合、 関数を近くに宣言することで回避できる場合があります。
また、その関数呼び出しを分岐距離の遠い命令で呼び出すようにコンパイラに指定したり、 命令を変更することでも回避することはできますが、 この方法ではコードが変わっています。
回避できない場合は、可能であれば、トレース・データ解析方式を用いてください。
この情報はお役にたちましたか?
back to top  

v850
-906
エラー・メッセージ "E0402:チューニング後実行モジュールのビルドに失敗しました。" が表示されます。
Q
エラー・メッセージ


E0402:チューニング後実行モジュールのビルドに失敗しました。


が表示されます。

A
以下の項目を確認してください。


(1) アセンブリ言語ソース・ファイルをプロジェクトに登録している場合、 そのファイルがTWで認識されるかどうかを確認してください。

アセンブリ言語ソース・ファイルの場合、 記述によってはTWが認識できない場合があります。
詳細については、ユーザーズ・マニュアルの 「アセンブリ言語ソース・ファイルにおける注意事項」を参照してください。
該当箇所がある場合は、そのファイルを修正するか、 ファイルがTWの性能解析対象とならないように、 オブジェクト・ファイルとしてプロジェクトに登録するようにしてください。
(2) ウィザードの設定に誤りがある可能性があります。
以下の項目を確認してください。
  • 高速アクセス・メモリ領域の開始アドレスやサイズの設定は正しいですか?
  • 再配置対象関数の挿入先の指定は正しいですか?
  • 再配置対象関数の挿入先に十分な空き領域はありますか?
(3) チューニングによる関数の再配置により、関数間の配置距離が長くなり、 プログラム中にある分岐命令では関数呼び出しが届かない配置距離になっている可能性があります。
高速アクセス・メモリ領域、および、再配置対象関数の配置先として、 プログラムから分岐可能な距離にある高速アクセス・メモリ領域、および、 配置先を指定してください。
この情報はお役にたちましたか?
back to top  

v850
-904
エラー・メッセージ "E0407:チューニング後実行モジュールの実行に失敗しました。" が表示されます。
Q
エラー・メッセージ


E0407:チューニング後実行モジュールの実行に失敗しました。


が表示されます。

A
以下の項目を確認してください。


(1) アセンブリ言語ソース・ファイルをプロジェクトに登録している場合、 そのファイルがTWで認識されるかどうかを確認してください。

アセンブリ言語ソース・ファイルの場合、 記述によってはTWが認識できない場合があります。
詳細については、ユーザーズ・マニュアルの 「アセンブリ言語ソース・ファイルにおける注意事項」を参照してください。
該当箇所がある場合は、そのファイルを修正するか、 ファイルがTWの性能解析対象とならないように、 オブジェクト・ファイルとしてプロジェクトに登録するようにしてください。
(2) チューニング後実行モジュールのビルド中に警告メッセージが表示されないかを確認してください。
オリジナル実行モジュールのビルド中に表示されない警告メッセージが、 チューニング後実行モジュールのビルド中に表示される場合は、 ウィザードの設定に誤りがある可能性があります。


以下の項目を確認してください。

  • 高速アクセス・メモリ領域の開始アドレスやサイズの設定は正しいですか?
  • 再配置対象関数の挿入先の指定は正しいですか?
  • 再配置対象関数の挿入先に十分な空き領域はありますか?
また、以下のデバッガの設定やプログラムの特性を確認してください。
  • 高速アクセス・メモリ領域と再配置用メモリ領域のROM/RAMの設定は正しいですか?
  • プログラムの実行速度が変化しても、正常に動作するプログラムですか?
実行速度が変化することによって、正常に動作しなくなってしまうプログラムの場合は、 チューニング後実行モジュールが正常に動作しない可能性があるので、 チューニングしないようにしてください。
この情報はお役にたちましたか?
back to top  





















 ご利用にあたって  個人情報保護について  RSS       © 1995-2008  NEC Electronics Corporation