GCC vs Greenhills on Arm
-
22-09-2019 - |
質問
GCCとGCCの比較に興味があります グリーンヒルズc 特にアームプラットフォーム上の生成されたコードのメモリフットプリントに関するコンパイラ。
これらのコンパイラのベンチマークや比較はありますか?ここで共有したい経験はありましたか?
解決
私はベンチマークを見たことがありませんが、私の経験から、2つのコンパイラは非常によく似たコードサイズとコードが生成されます。
グリーンヒルズには、メモリフットプリントを減らしたい場合は、多くのドキュメントとサポートがあります。GCCは、beatられたトラックから外れたら非常に速く孤独になります。グリーンヒルズは、フラッシュが限られているがたっぷりとラムがある場合に最適な圧縮実行可能な画像をサポートしています。
また、両方のコンパイラを使用してカスタムランタイムとCライブラリ(これによりスペースを節約できます)を使用しましたが、GCCの情報を入手するには掘削する必要がありますが、グリーンヒルズは、生成するウィザードを介して物を入手できます。ビルドファイル。
他のヒント
グリーンヒルズEULAは、ライセンシーがベンチマークの公開を明示的に禁止していることに注意してください。
あなたができることは、グリーンヒルズから評価ライセンスを取得し、独自のベンチマークを実行することです。実際の制作コードでテストできるため、いずれにせよ、より信頼でき、代表者になります。いずれにせよ、たとえばARM7のベンチマークは、たとえばCortex-M3のベンチマークとは大きく異なる場合があるため、公開された出版された結果はすべてのように比較されておらず、プラットフォームの代表ではない場合があります。
また、同じコードベースバージョン(特にソフトウェアを増やしているポイントパフォーマンスを使用しても、GCCのさまざまなバイナリ分布から大きく異なる結果が発生したことに注意してください。
KeilとIARを同時に検討するかもしれません。これには、評価バージョンもあります。なぜこれら2つだけを検討しているのですか?人々は通常、大きな予算があり、単一のソースから利用可能なRTOS統合およびデバッガー機能の恩恵を受けることができます。コンパイラのみを使用することで得られるかもしれない利益は、ライセンスコストIMOを正当化する可能性は低いです。