Quad Core(4コア)のメリットを検証する

「Mubox-i4」の最大の魅力はQuad Core(4コア)です。そして、前回はQuad Core(4コア)のメリットについて理論的(というほどじゃないですが・・・^^;)に考えてみたのですが、そのメリットを実際に検証してみる方法が見つかりましたので、その結果を簡単に報告しておきます。

検証方法は簡単です。
Quad Core(4コア)で動作している「CuBox-i4Pro」のCPUを順次停止させて聞き比べをするだけです。CPU停止させるためにBIOSの設定変更が必要ならば「大変な」作業になるのですが、一時的に停止させるだけならば簡単に実行できることが分かりました。

まずは、「CuBox-i4Pro」のCPUに関する情報を探ってみます。

root@voyage-mubox:~# cat /proc/cpuinfo
Processor : ARMv7 Processor rev 10 (v7l)
processor : 0
BogoMIPS : 790.52

processor : 1
BogoMIPS : 790.52

processor : 2
BogoMIPS : 790.52

processor : 3
BogoMIPS : 790.52

Features : swp half thumb fastmult vfp edsp neon vfpv3
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x2
CPU part : 0xc09
CPU revision : 10

Hardware : SolidRun i.MX 6Quad/Dual/DualLite/Solo CuBox-i Board
Revision : 63012
Serial : 0000000000000000

よく分からないのですが、「BogoMIPS: 790.52」というのが大雑把なCPUの能力をあらわしているらしいです。「790.52」という数字は1秒間に約790万回の命令を実施できると言うことらしいので、普通のPCに搭載されているものと比べればかなりジョボイ数値です。しかし、音楽再生しかしない「Mubox-i4」ならば、何の問題もない数値です。

では、まずは素の状態で音楽を聴いてみます。
聞き比べに使った録音は、天満敦子の「祈り」から「アメイジング・グレイス」です。地を這うようなパイプオルガンから突き抜けるようなヴァイオリンの高音域まで収録されているので、個人的には聞き比べによく使う録音です。

それに、何と言っても演奏が素晴らしくて音楽の力にあふれているので、そう言うエモーショナルな部分も比較対象にできます。

天満敦子:「祈り」
Tenma_Prayer

「top」コマンドでCPUの挙動をチェックします。

top – 21:25:48 up 3:53, 1 user, load average: 4.17, 4.15, 4.08
Tasks: 83 total, 1 running, 82 sleeping, 0 stopped, 0 zombie
%Cpu0 : 0.0 us, 1.6 sy, 0.0 ni, 98.4 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu1 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu2 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu3 : 0.0 us, 3.2 sy, 0.0 ni, 96.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem: 1804684 total, 1728212 used, 76472 free, 1872 buffers
KiB Swap: 0 total, 0 used, 0 free, 1638572 cached

なお、「load average: 4.17, 4.15, 4.08」というのがとんでもない数値なのですが、これはどうやらOSのバグによる「誤表示」のようです。
「top」コマンドによるロードアベレージの表示は、左から、1分、5分、15分間の平均値になっています。数値が「1」を超えると処理が追いつかずに待たされているプロセスが存在していることを意味しますから、本当に「load average: 4.17, 4.15, 4.08」という状態ならば音楽なんか再生できるはずがありません。
そんなわけで、この部分に関してはとりあえず無視しておいても大丈夫なようです。

文句なく素晴らしい音で再生されています。
さて、ここから順次CPUを停止させていきます。
停止させるのは簡単で、

root@voyage-mubox:~# echo 0 > /sys/devices/system/cpu/cpu3/online

と、するだけです。
つまりは、「/sys/devices/system/cpu/cpu3/online」というファイルに「0」と書き込めば「cpu3」が停止するわけです。ですから、

root@voyage-mubox:~# echo 1 > /sys/devices/system/cpu/cpu3/online

とすれば、再び「cpu3」を動作させることができますし、そのまま放っておいても再起動すれば全て元に戻ります。
ただし、停止できるのは「cpu1」「cpu2」「cpu3」だけで、「cpu0」は停止できません。

ということで、「Mubox-i4」をQuad Core(4コア)からDual Core(2コア)に変身させます。

root@voyage-mubox:~# echo 0 > /sys/devices/system/cpu/cpu3/online
root@voyage-mubox:~# echo 0 > /sys/devices/system/cpu/cpu2/online

「top」コマンドでCPUの挙動をチェックします。

Tasks: 77 total, 1 running, 76 sleeping, 0 stopped, 0 zombie
%Cpu0 : 1.0 us, 1.4 sy, 0.0 ni, 97.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu1 : 0.3 us, 0.7 sy, 0.0 ni, 99.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem: 1804684 total, 1728000 used, 76684 free, 1872 buffers
KiB Swap: 0 total, 0 used, 0 free, 1638560 cached

間違いなく、Dual Core(2コア)で動作しています。
そして、この状態で再び天満敦子の「アメイジング・グレイス」を再生します。

微妙ですが、はっきりとした違いは聞き取れます。ブラインドでテストされても違いは言い当てることができそうなくらいの差異はあります。
まず、最初に感じたのは何となく「音量」が下がったような気がしたことです。当然のことながら、アンプのボリュームなどは一切手を触れていませんから、あくまでも「雰囲気」としてそんな感じがしたということです。次に感じたのは、音楽の雰囲気がおとなしくなったことです。ごくわずかですが音の線が細くなったような気がします。

ただし、こういう風にこぢんまりと温和しく鳴ってくれた方が心地よいという人はいるかもしれません。Quad Core(4コア)の方は「ガツン!!」と迫ってくるような鳴り方が「押しつけがましい」と感じる人がいても不思議はありません。

そこで、さらに「cpu1」も停止させてSingle Core(1コア)にしてみます。

root@voyage-mubox:~# echo 0 > /sys/devices/system/cpu/cpu1/online

「top」コマンドでCPUの挙動をチェックします。

top – 21:20:00 up 3:47, 1 user, load average: 4.08, 4.07, 4.05
Tasks: 72 total, 1 running, 71 sleeping, 0 stopped, 0 zombie
%Cpu0 : 2.0 us, 1.7 sy, 0.0 ni, 96.0 id, 0.0 wa, 0.0 hi, 0.3 si, 0.0 st
KiB Mem: 1804684 total, 1727100 used, 77584 free, 1872 buffers
KiB Swap: 0 total, 0 used, 0 free, 1638568 cached

この状態で、またまた天満敦子の「アメイジング・グレイス」を再生します。

うーん、不思議ですが、Dual Core(2コア)で再生したときよりも少し元気がよくなったような雰囲気です。Dual Core(2コア)で再生したときは少しのっぺりした感じがしたヴァイオリンの音色が、Single Core(1コア)では細部までキチンと描写されるような気がします。
事前の予測では「Quad Core(4コア)> Dual Core(2コア)> Single Core(1コア)」だろうと高をくくっていたのですが、どうやら、それほど単純ではないようです。
ただし、最初からDual Core(2コア)で動作しているPCと、擬似的にDual Core(2コア)で動作させているPCとでは完全にイコールではないと思いますから、この結果からDual Core(2コア)は Single Core(1コア)に劣るとは言い切るのは無理があるかもしれません。
また、この聞き比べも、あくまでも私の主観による判断ですから、あまり当てにはなりません。

しかし、Single Core(1コア)で再生した音はそれほど悪くありません。それは事実です。
そこで、この状態から本来のQuad Core(4コア)に戻して、もう一度「アメイジング・グレイス」を再生しました。

root@voyage-mubox:~# echo 1 > /sys/devices/system/cpu/cpu3/online
root@voyage-mubox:~# echo 1 > /sys/devices/system/cpu/cpu2/online
root@voyage-mubox:~# echo 1 > /sys/devices/system/cpu/cpu1/online

top – 10:53:19 up 1:55, 1 user, load average: 4.01, 4.03, 4.03
Tasks: 84 total, 1 running, 83 sleeping, 0 stopped, 0 zombie
%Cpu0 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu1 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu2 : 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu3 : 0.0 us,100.0 sy, 0.0 ni, 0.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem: 1804684 total, 156204 used, 1648480 free, 2432 buffers
KiB Swap: 0 total, 0 used, 0 free, 66540 cached

なるほど、Single Core(1コア)からQuad Core(4コア)へと続けて聞き比べてみて、あらためてQuad Core(4コア)の凄さが分かりました。
ひと言で言えば、Quad Core(4コア)では、演奏されている空間を感じ取ることができます。ディテールの描写も緻密です。

天満の「祈り」は席数600という中規模ホール(川口リリア音楽ホール)で録音されているのですが、本来のQuad Core(4コア)で動作させた「Mubox-i4」は、その空間情報まで描き出してくれます。そう言う意味で、従来の「レガシーCuBox」とは少し質的に違った面があるのかもしれません。
とは言え、みみず工房さんが配布してくれているSingle Core(1コア)用のシステムは、徹底的にチューニングされていると言うこともあってQuad Core(4コア)の「」MuBox-i4」とは違った美質があることも事実です。(響きが上品できれい!!)

それと、あちこちで言っていることですが、同じ録音を条件を変えて次々と聞き比べるというやり方では本当のことが分からないことが多いのも事実です。
本当ならば、Dual Core(2コア)の状態で1週間程度いろいろな音楽を聴き、Single Core(1コア)でも同じように聞いてみるという丁寧さが必要なのだろうとは思います。

ですから、今回の報告は「一つの傾向」くらいに受け取ってください。簡単にやれる検証ですので、条件のある方は是非とも追試をしてみてください。