1

ARM926Ej-S プロセッサを搭載した組み込みデバイスでプロジェクトを行っています。デバイスのアルゴリズムのパフォーマンス分析が必要です。私は組み込み環境に不慣れで、組み込みデバイスのパフォーマンス分析とは何かについてあまり知りません。

分析のためにどのパラメータを考慮する必要があるかを教えてもらえますか? 実装についてもどうすればいいですか?

皆さん、ありがとうございました

4

2 に答える 2

2

どのようなデバッグ環境がありますか? インサーキットエミュレータ (ICE) はありますか? 私がお勧めするのは、ランダムなタイミングで手動で実行を停止し、コール スタック ( stackshots )を含むプログラムの状態を調べることができるデバッグ環境を用意することです。この方法でコール スタックを手動でサンプリングすると、時間のかなりの部分を占めるコード内の場所が明らかになるため、それらを最適化できます。ここに長い説明があります。

これは、あなたが考えていたものとは少し異なるかもしれません。多くの人は、最適化するものを見つけるにはコードの時間を計る必要があると考えていますが、そうではありません。タイミングは、あなたが行ったことが違いを生んだかどうかを知るための良い方法ですが、スタック サンプリングは、違いを生むために何をすべきかを知るための最良の方法であると感じる人もいます。

于 2010-01-22T12:58:10.267 に答える
1

これらに対する私のアプローチは、必要なすべてをカバーするリファレンスマニュアル ( http://www.arm.com/miscPDFs/5499.pdf ) を読むことです。これにより、浮動小数点ユニットがあるかどうか、FPU にどのような欠点があるか、DMA を使用する際に留意する必要があること、キャッシュとメモリのレイアウト、メモリ バスの速度、その他多くのことがわかります。このデバイスを正しく効率的にプログラムしたい場合、これは非常に重要です。

残念ながら、私はこの特定のデバイスで作業したことがないので、具体的なことを指摘することはできませんが、RefManual で必要なものがすべて見つかるはずです。ハードウェアがわかっている場合は、アルゴリズムの特定の部分のパフォーマンスへの影響を分析できます。ただし、ハードウェアの内部構造を知っておく必要があります。

于 2010-01-22T10:04:41.467 に答える