ラベル 実験 の投稿を表示しています。 すべての投稿を表示
ラベル 実験 の投稿を表示しています。 すべての投稿を表示

2012年9月8日土曜日

ハイパースレッディングの効果の程を「実感」してみる

経緯
Twitterでit(@mrkessi)さんが「ハイパースレッディングってどんだけ効果あるんかね」という趣旨のツイート(https://twitter.com/mrkessi/status/244039908640047104 https://twitter.com/mrkessi/status/244040072863838208)をなさってて、私が「まぁ、理論上、効果ありそうな感じはしますよね」と適当に返したら、「実感は無いです…」との返信(https://twitter.com/mrkessi/status/244084243272171521)を頂いたので、ハイパースレッディング(以下、HT)の効果を「実感」してみることにしました。

検証環境
CPU:Intel Core i3 i3-2120 3.3GHz 3M LGA1155
M/B:ASUS P8H77-M LE
メモリ:Transcend JetRam PC3-12800(DDR3-1600) 8GB KIT(4GB×2)
SSD:Intel SSD 330 Series Maple Crest 60GB MLC
OS:Ubuntu 12.04 LTS

検証方法
Linux-kernel 3.2.0を論理コア数まで並列処理させてビルドし、その時間を計測する

CPUの性能を直に(という表現が適切かどうかはおいといて)測る方法もあるんですが、そうしなかった理由として
  1. CPUの性能をよくわからない数値で出されても「実感」できたとは言えない
  2. 「実感」ってやっぱり、普段使いしてる時に感じるものじゃないのか、というのがあるので、ディスクIOとかメモリとか、PCの総合力を測る上でカーネルビルドは適切じゃないのかというのが持論(根拠なし)
  3. 他の方法を考えるのが面倒だった(最重要←)
検証結果
というわけで、検証方法としてはすごく適当なので、参考程度(それ以下かもしれませんが)で読んでいただければ幸いです。
時間はtimeコマンドで測りました。
では早速、結果を。

HTなし(=BIOSでHTをオフ)
  • real:37m37.800s
  • user:58m16.231s
  • sys:5m4.119s
HTあり(=BIOSでHTをオン)
  • real:31m22.666s
  • user:96m28.106s
  • sys:7m36.621s
「実感」のコマンド実行時間はrealの値だと思うので、今回、対象とすべき時間差としては、6分25秒ほどでしょうか。HTなしの実行時間を100%としたら、HTありの実行時間はおよそ83.4%。
インバースを取るとHTなしに対してHTありが20%の性能増を示しています。
で、IntelさんがHTについてどうおっしゃってるかと言いますと、うーん、公式の資料はざっと探した感じ見つからないんですが、Wikipedia先生曰く、Pen4の頃に「インテルは15%〜30%の性能増の効果があるよ」と言ったとのことです。
今回、「実感」できた性能増が20%ですから、ちゃんと公称下限の15%は超えてるので、Intelは嘘は言ってないことになると思います。
あと、比較的どうでもいいですがHT切った時のほうがsensorsで見た時のCPU温度が低かったです。

一方で、某価格比較サイトでは「性能向上が感じられるのは5割増し以上になってから。それ以下は誤差の範囲」というような言説が見られますが、それと照らし合わせると「誤差」ということになりますが、まぁ、Intel公称の上限も30%なので…あれですね。

(いらんこと書きかけたので検閲の上削除)

そういうのを考えてみると、物理的にHTの有無が分かれるi5とi7とで比べたほうがやや攻撃的な実験になるんですが、手元にそういうのないんで、このへんで。

同日22:45追記
itさんから、温度の件についてコメントを頂いたので、改めて温度だけ測ってみましたが、マザボのなんちゃって温度計では差が出ませんでしたので当該記述を削除させて頂きました。

2012年8月9日木曜日

tmpfs上でカーネルをビルドしてみた

PCの総合的能力を見るための個人的指標としてカーネルのビルド時間を使っているのですが、tmpfsでやったらどれくらいかかるんだろうってことでやって見ました。

結論:敗北

物理メモリ8GB中6GBをtmpfsとしてマウント(スワップ領域は確保してないので確実です)。そこでカーネルをビルドしてみたけど、容量不足でコンパイルが途中で止まりました。

SSD(Intel 330 Series 120GB/SATA 6G接続)にビルドした時がだいたい35分くらいで、今回tmpfsの場合で止まった所までで31分くらいでした。

止まったところは多分最後の最後のあたり(ドライバモジュールのビルド第2段階?)だったので、あと2〜3分ってところだったんでしょうか。

2〜3分足した所で33分くらいなので、SSDとあまり大差無いですね。てか、SSD速すぎ。ちなみにメモリは1333MHzです。2nd Generation Core i3だからね。

というか、所詮、Core i3なので、ビルドスピードのボトルネックはCPUってことでしょうね。

多分、tmpfsとして8GB割り当てられる環境ならたぶん問題ないと思うので、より高性能なCPU+莫大なメモリを搭載したPCをお持ちの方は試してみてSSDとの比較で記事にしていただけると楽しいかもです。

2012年8月8日水曜日

sudo rm / -rfをやってみた

Twitterのタイムラインで、Windowsのお話が流れてたので、Linuxのそれに相当する、sudo rm / -rfを実際にやってみました。

KVMでUbuntu Server 12.04 LTSを入れてるので、まずクローンして起動。
当然、起動するわけで、ログインして、早速実行
パスワードを入力して…
よろしくおねがいしまーす!(※サマウォ観てない勢)
エラーが出ました。全然、よろしくなかった。要約すると、「さわるなきけん」
しゃあないので、`rm / -rf --no-preserve-root`とオプションを付けて実行。
エラーがでるでる。
出る出るエラー。
さーて、エラーが出終わったので再起動しますかー。
sudoも消えてました。仕方が無いので強制的に仮想マシンの電源を切って再起動
当然ながら起動しません。
2chのネタ?か何かで「Linux入れたけど何したらいい?」「suしてから、rm / -rf」という流れは自然にはいかんようですが、オプションつければ、システムであろうとなかろうと一気に削除するってのはまだあるようです。
糸冬