TB-RX65N/TB-RX231/TB-RX130+CC-RX/GNURXでCoreMark®ベンチマークを動かせるようにしてみようと思います

こんにちは。NoMaYです。#2連投の1つ目です。

ルネサスさんのアプリケーションノートに以下の『RX100シリーズ RX100上でCoreMarkを実行する方法』というRSK-RX111+IAR EW統合開発環境でEEMBCのCoreMarkベンチマークを実行するものがあったのですが、これをRX-TB 3種類+CC-RX/GNURXへ移植してみようと思います。まず、手始めにTB-RX130+CC-RX+CS+で試してみました。(後日、他のTBボードやGNURXでも動かしてみようと思います。さらに、e2 studioでも動かせるようにしてみようと思います。なお、その時は、GitHub上でEEMBCが公開しているCoreMarkベンチマークの以下のリポジトリのソースに差し替え、かつ、RXスマートコンフィグレータが生成したソースを出来るだけ使うような作りに変更しよう、と思っています。)

プロジェクトのファイル一式
tb_rx130_coremark_ccrx_c_csplus_20191026.zip    384KB

アプリケーションノート: RX100シリーズ RX100上でCoreMarkを実行する方法
www.renesas.com/jp/ja/search?keywords=CoreMark&f[0]=content_type:document

ドキュメント
www.renesas.com/jp/ja/document/apn/rx100-series-running-coremark-rx100

サンプルプログラム
www.renesas.com/jp/ja/document/scd/rx100-series-running-coremark-rx100

GitHub上でEEMBCが公開しているCoreMarkベンチマークのソース
github.com/eembc/coremark


TB-RX130+CC-RX V2.03で試した結果と試した時のCC-RXの最適化オプションは、以下の画面コピーの通りです。得られたCoreMark値が91.5、動作周波数が32MHz、よって、CoreMark/MHzは2.86、となりました。(ちなみに、CoreMark値やCoreMark/MHzは、そもそもそういうものなのですが、最適化オプションによりかなり値が変わります。) なお、以下の画面コピーの通り、RSK-RX111+EWRX V2.41.1でのCoreMark/MHzは3.073のようでした。また、ルネサスさんの製品ページでのRX130(やRX111)のCoreMark/MHzは3.08です。




Parents
  • こんにちは。NoMaYです。

    私は今まで、GNURXでデバッグ最適化(-Ogオプション)を指定すれば、充分なデバッグ性とそこそこの最適化が両立しているのだと思い込んでましたが、単に私の思い込みだったようです。-O0オプション(最適化無し)でCoreMarkベンチマークを計り直した方が良いかも知れないと思い始めました。(普段はズボラして -O3 とか -Os とか普段の最適化のままデバッグしていたので、そういうものだったとは、今まで気付きませんでした。)

    以下、GNURX+e2 studioの画面コピーです。

    デバッグ最適化 -Og では思い込んでいたほどには充分に変数内容が表示されるわけではなかった


    最適化無し -O0 であれば思い込んでいたような充分な変数内容が表示されるのであった

     

Reply
  • こんにちは。NoMaYです。

    私は今まで、GNURXでデバッグ最適化(-Ogオプション)を指定すれば、充分なデバッグ性とそこそこの最適化が両立しているのだと思い込んでましたが、単に私の思い込みだったようです。-O0オプション(最適化無し)でCoreMarkベンチマークを計り直した方が良いかも知れないと思い始めました。(普段はズボラして -O3 とか -Os とか普段の最適化のままデバッグしていたので、そういうものだったとは、今まで気付きませんでした。)

    以下、GNURX+e2 studioの画面コピーです。

    デバッグ最適化 -Og では思い込んでいたほどには充分に変数内容が表示されるわけではなかった


    最適化無し -O0 であれば思い込んでいたような充分な変数内容が表示されるのであった

     

Children
No Data