• ベストアンサー

プログラムファイルの保存先

こんにちは。現在Rubyの学習中です。Rubyに限らずプログラムに関しての質問なのですが、ファイルを保存する場所によって処理速度は変わるのでしょうか。 CドライブにOSが入っていると知りました。Rubyのプログラムを動かすには、Ruby本体とプログラムファイルが必要ですが、これら二つはやはりDドライブよりもCドライブに保存した方が処理速度は速いのでしょうか。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

物理的なディスクが何かによります。 一般的には、1つのハードディスクをCドライブとDドライブに分けて使用することが多いですが、この場合には同じハードディスクを使用しているのでほとんど差は無いでしょう。プログラムと処理データをCドライブに配置するとハードディスクの構造上、読取りヘッドが位置決めをするための時間がごくわずかに減少するかもしれませんが人が速くなったと認知できるほどの改善はまず期待できません。 Cドライブがハードディスクで、DドライブがUSBメモリなどである場合には、プログラムの処理データが大きいほど(300MBなど)、処理時間が短縮されることが期待できます。これは、ハードディスクよりもUSBメモリの方が読み書きにかかる時間が短いためです。 このため、WindowsではUSBメモリの高速性を利用した高速化機能Readyboostがあります。 もっとも、速くなっても意味(価値)があるのか・・・? という問題は残ります。 現代では、実用性や利便性、特に経済性が優先されるので、必要に迫られないかぎり高速化を考える必要はありません。プログラムが実用的な処理時間の範囲内で結果を返せるなら、内部の処理効率が悪いことを気にするのは無益です。Rubyなどを使うのなら、生産性(経済性)が高いことが最重要なのですから。 また、プログラムの処理速度が遅いときに、プログラムを改善するよりも、ディスクをSSDに置換える、メモリを増設する、CPUを増設または置換える方が経済的であることが多々あります。もっとも、扱うデータ量が多い場合はプログラムが遅いことによって失われる時間などが大きくなる場合には、プログラムを改善するべきでしょう。 というわけで、やや批判的になりますが、プログラムの実行速度を気にするよりもプログラムの恩恵(貢献)を重視してくださいが結論です。 # まあ、チューニングして目に見えて高速化したときは、うれしいですよね♪

thjki6624
質問者

お礼

なるほど! CドライブとDドライブが同じハードディスクに存在している場合はほどんど差異はないのですね。非常に分かりやすい回答で理解できました。ありがとうございました。

その他の回答 (1)

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

「他の要因によるものの方が影響が大きいので、ファイルの場所による違いなど誤差のうち」でしょう。

thjki6624
質問者

お礼

他の要因とはプログラムのアルゴリズムのことですよね。 回答ありがとうございました。