ファイルの量や数、保存場所で起動時間が変わる!?

どーも。Hotateです。

普段、お客様から「起動が遅いんだよねー。いっぱい入れすぎたかなー?」
なんて事を言われると、私は「実はいっぱい入っていても起動時間は変わらないんですよ。」と言っている。

が、しかし。
たしかに「ファイルが入っていても、起動時に読まれなければ大丈夫」という論理が本当に正しいかどうかは、確認した事が無い。
というわけで、実験してみることにしました。

実験の概要

実験は起動時のネットワーク動作(アップデートとか、時計とか)によってネットワーク速度の影響が出るのを防ぐためにネットワークケーブルを外した状態で行います。
また、使用前提の起動時間の測定なので、電源スイッチを押してからデスクトップ画面が表示され、Excel 2010を起動し表の画面が表示されるまでの時間を計測しました。

 

パソコンのスペックは、
CPU:Celeron D 3.06GHz
OS:Windows XP Pro SP3
メモリ:1GB
以上のパソコン(古い!?)で行いました。

ちなみに最初のハードディスクの状態はこんな感じです。

 

fig01

使用:40,651,833,344 B
空き:37,200,408,576 B
容量:77,852,241,920 B

fig02

フォルダ数は11,234
ファイル数は96,824
です。

実験は主に5つのケースに分けて、起動時間をそれぞれ3回測定しその平均値を比較します。
まぁ、誤差はありますが。

この時点での平均起動時間は、68秒61 でした。
さぁ!これがどう変化するのか楽しみです。

【Case1】Cドライブ直下に巨大ファイル1個

fsutilコマンドで巨大なファイルを生成します。一応、埋め尽くしてしまうとSWAPに影響がでるかなーと思ったので、2GB程度空きを残す大きさにしました。

その時のCドライブの様子です。

 

fig03

目いっぱい使用している感じが出てますね。
これをお客様先で見てしまうとゾッとしますが。

結果は・・・74秒09です。
おお!ちょっと遅くなってる!

平均で5秒半なら結構な感覚ですね。

【Case2】デスクトップに巨大ファイル1個

ケース1で使用したファイルをデスクトップに移動して実験してみました。
なんだか、感覚的にはデスクトップに大きなサイズのファイルがあると遅くなるみたいに感じますが。

結果は・・・67秒22です。
んんっ!?早くなってる?
誤差・・ですかね。
でもデスクトップに巨大なファイルがあっても変化しない事はわかりました。

【Case3】Cドライブ直下にファイルをたくさん!

Case3ではファイルのサイズは小さいけれど、大量にあったらどうなるか?を実験してみます。
使用したファイルはこれです。

 

fig09

誰が何と言おうと、ホタテです。
ファイルサイズは69.4KB(71,106バイト)です。

これをCドライブの直下に16,384個、置きます。
本当は認識しているファイル数が倍になるように
96,824個作りたかったのですが・・・
ファイルのコピーをしている最中にフリーズしまくりで諦めました。

その時のCドライブの様子がこちら。

 

fig04

本当にフリーズとの戦い。

して結果は・・・95秒34!!
すごく遅い!!
ハードディスクがガリガリ言ってる!!
おまけにCPUファンも唸りを上げる!!
Cドライブ直下に、たくさんファイルがあると遅くなる
新しい発見です。

【Case4】デスクトップのひとつのフォルダにファイルをたくさん!

Case3で使ったファイル(16,384個)をデスクトップのひとつのフォルダに移動して実験してみます。
その時のフォルダの様子はこんな感じ。

 

fig07

フォルダ内のファイル容量は1.08GBぐらいですが、フォルダを開こうとすると80%以上の確率でフリーズします。

して結果は・・・67秒40!?
変わらない!!むしろ早い?
先ほどのCase3とは打って変わって普通に起動する。
なるほど。
デスクトップのフォルダに、たくさんファイルがあっても変化しない
のか。

 

じゃあ、よく見かける「アレ」はどうだろうか。

【Case5】デスクトップをファイルで埋め尽くす

自分もこれに近い状態にまでなったことがありますね。さすがに、何かするたびに画面がチラチラします。

 

fig10

隙間なく。
壁紙が見えなくなるぐらい。

結果は・・・67秒11
変わらない。
やっぱりデスクトップは起動時に読まないのかな?
デスクトップに、たくさんファイルがあっても変化しない

まとめ

今回の実験で共通項を探すと、
デスクトップにあるファイルは起動時間に影響しない
という事と、
Cドライブ(恐らく起動ドライブ)にあるファイルの数や大きさは起動時間に影響を与える
という事が分かりました。
特にCドライブ直下にファイルが大量にあると、それだけで起動時間はとても遅くなることが新しい発見です。

皆さんも、起動時間が長くなったなーと感じたら、Cドライブ直下のファイルを整理してみては如何でしょうか。
WindowsXP限定の話かもしれませんが・・。
ではー。

2013/07/18担当:hotate