cygwin 上でのプログラムのビルド時間は RAMDISK で高速化するか?
cygwin 上でいろいろなプログラムをビルドしているとそのあまりの遅さによりお腹の中がコーヒーで一杯になりたぷたぷしてしまいます. 少しでも高速化したいので $TMP やビルドするワークディレクトリを RAMDISK にしたらどの程度ビルド時間が変るか試してみました.
とりあえずビルド対象として SDL をビルドしてみます. 規模的に大きすぎず小さすぎず.
測定する範囲は以下の通り.
コマンドにするとだいたい以下のような手順になります.
$ tar xvfz SDL-1.2.13.tar.gz $ pushd SDL-1.2.13 $ sh configure --prefix=/usr/local $ make $ make prefix=/tmp/SDL-1.2.13-root/usr/local install $ popd $ pushd /tmp/SDL-1.2.13-root $ tar cvf ~/mingw-SDL-1.2.13-1-i386-cygwin.tar . $ bzip2 -9 ~/mingw-SDL-1.2.13-1-i386-cygwin.tar $ popd
- CPU
- intel Pentium M 1.0 GHz
- MEMORY
- DDR SDRAM 1.25GB
- HDD
- 1.8inch IDE 40GB
- OS
- Windows XP SP3
実時間(秒) | HDDとの比較(%) | |
---|---|---|
work:HDD tmp:HDD | 530.792 | 100% |
work:HDD tmp:RAMDISK | 523.234 | 98.58% |
work:RAMDISK tmp:RAMDISK | 503.659 | 94.89% |
ワークディレクトリと $TMP を RAMDISK にすると約5%ビルド時間が縮まりました.しかし8分50秒が8分23秒になってもコーヒーを一杯飲むのには十分な時間なのであまり意味がないような…
別のPCでも測定してみます.以下の仕様のデスクトップPC. 今時のPCとしても特に高性能でもなく,ミドルローくらいでしょうか?
- CPU
- AMD Turion64 MT-40 2.2 GHz
- MEMORY
- DDR SDRAM 2GB
- HDD
- 3.5inch IDE 250GB
- OS
- Windows XP SP3
実時間(秒) | HDDとの比較(%) | |
---|---|---|
work:HDD tmp:HDD | 264.703 | 100% |
work:HDD tmp:RAMDISK | 263.719 | 99.63% |
work:RAMDISK tmp:RAMDISK | 253.734 | 95.86% |
ほぼ同じ傾向.X40に比べてCPUが速くなったけどHDDも少し速くなったので比率的に大差ない結果になっているようです.