簡易コンパイルベンチ

2022-08

FrontPage

簡易的にUbuntu Linuxでベンチマークを取りたい。

  • Linuxサーバーになっている、Atom,ARM,Core-i3などの速度比を知りたい。
  • では、とりあえず適当なC言語プロジェクトでフルmakeしたときの所要時間を計ってみる。

小さなテキストエディタ jed を使ってみる。

やってみた。

  • jedコンパイルに必要な開発パッケージの取得
    # apt-get build-dep jed
  • jedソースの取得と1回目のビルド
    $ apt-get -b source jed
    $ cd jed-0.99.19
  • クリーンする
    $ make clean
  • フルmakeの速度を計測
    $ time make

結果を晒す

所要時間 (実時間 秒)所要時間 (user秒)システムOSCPUクロックメモリーストレージ
6.0825.488自作PCU16.04 64bitIntel(R) Pentium(R) CPU G3258@ 3.20GHz 2Core8GB DDR32TB HDD
24.23822.240ドスパラのミニPC/StickPC相当品U16.04 64bitIntel(R) Atom(TM) CPU Z3735F@ 1.33GHz 4Core2GB LPDDR332GB eMMC
7.81926.416ドスパラのミニPC/StickPC相当品U16.04 64bitIntel(R) Atom(TM) CPU Z3735F@ 1.33GHz 4Core2GB LPDDR332GB eMMCcd src;time make -j 4を実行
78.37274.580pcDuino v1U14.04 32bitAllwinnerA10 / ARMv7 Processor rev 2 (v7l)@1GHz 1Core1GB32GB MicroSD
50.18346.330Nexus7(2012)U14.04 32bit on Android4.4Tegra/ARMv7 Processor rev 9 (v7l)@1.3GHz1GB8GBモデル
19.26762.710Nexus7(2012)U14.04 32bit on Android4.4Tegra/ARMv7 Processor rev 9 (v7l)@1.3GHz1GB8GBモデルcd src;time make -j 4を実行
  • ちなみに、jedのビルドはマルチプロセッサ非対応なので、上記結果は基本シングルコアでのgccビルド&リンク時間。
    • 3行目の結果は-j 4オプション付きで実行。4コア同時に回すとシングルコアのPentiumGと同じぐらいのパワーが出る!!!
  • AtomZ3735Fはターボ時のコアは1.8GHz動作らしい。
  • AllwinnerA10以外のARM Linux機を持っていないのでラズパイ等の速度は不明
  • RAMディスク上でやったほうが良いのかな???(MicroSDは遅い)--->結果は殆ど同じだった。

結論

  • AtomZ3735F、結構やるじゃん。
  • 速いARMを見てみたかった。(手持ちがありません)買いました。↓

続編:RaspberryPi3をてにいれた。

所要時間 (実時間 秒)所要時間 (user秒)システムOSCPUクロックメモリーストレージ
46.46638.950RaspberryPi332bitBroamCom BCM2837@1.2GHz 4Core1GB32GB MicroSD
15.54647.350RaspberryPi332bitBroamCom BCM2837@1.2GHz 4Core1GB32GB MicroSDmake -j 4
  • 処理速度はAtomZ-3735Fの半分程度。(ともに4コア。クロックは1.2G:1.33G(ターボブースト1.8G))



続編その2:CeleronN5015をてにいれた。

所要時間 (実時間 秒)所要時間 (user秒)システムOSCPUクロックメモリーストレージ
8.3597.760TENKU NUC64bitN5015@2GHz 4Core16GB480GB SSD
2.8279.400TENKU NUC64bitN5015@2GHz 4Core16GB480GB SSDmake -j 4
  • コンパイル速度は、おおよそ、RaspberryPi3の5倍速
  • コア数は同一(4コア)
  • クロック比は Pi3 : N5105 = 1.2GHz : 2.0 GHz
  • ATomZ3735Fと比較しても、シングルコアで2.5倍速ぐらいある。
  • なんと、昔のデスクトップPC(Pen-G3258 3.2GHz)よりも速い。(正確に言うと、コア数が2倍なので勝った。シングルコア性能ではやや劣)
    • とはいえ、クロック比を考慮すると、健闘してる感じ。
    • 当時の計測がHDD上だったので、リベンジの必要はある。

なお、N5015のクロックは、2GHzで、バースト時2.9GHz。

比較対象:Core-i5 8400 デスクトップ機

  • あれ?N5015に負けている・・・ VMだと遅いのか?
    所要時間 (実時間 秒)所要時間 (user秒)システムOSCPUクロックメモリーストレージ
    8.47011.582Core-i5 8400上のVMUbuntu22.04i5 8400@2.8GHz 4Core割り当て4GB割り当てSSD
    3.64711.644Core-i5 8400上のVMUbuntu22.04i5 8400@2.8GHz 4Core割り当て4GB割り当てSSDmake -j 4


  • なんと、驚愕の新事実
    • Windows上のLinux VMは、同じCPUを使用したLinux機の半分の速度しか出ない。・・・(なんで???)
      所要時間 (実時間 秒)所要時間 (user秒)システムOSCPUクロックメモリーストレージ
      1.5655.217Core-i5 8400上のLinux ContainerUbuntu20.04i5 8400@2.8GHz16GBSSDmake -j 4

本日の結論

  • これ
    所要時間 (実時間 秒)所要時間 (user秒)システムOSCPUクロックメモリーストレージ
    2.8279.400TENKU NUCUbuntu20.04N5015@2GHz 4Core16GB480GB SSDmake -j 4
    1.5655.217Core-i5 8400上のLinux ContainerUbuntu20.04i5 8400@2.8GHz16GBSSDmake -j 4