私はc ++プロジェクト全体をコンパイルするのにかかる時間を改善するために、さまざまな方法を試してきました。現在、約5分かかります。distcc、ccacheなどを試してみました。最近、プロジェクト全体をRAMドライブにコピーし、そこからコンパイルすると、コンパイル時間が元の30%(わずか1.5分)に短縮されることを発見しました。
明らかに、RAMドライブからの作業は実用的ではありません。だから、誰かがOSに特定のディレクトリを常にキャッシュしておくように強制する方法を知っていますか?私はまだ通常のようにディレクトリをディスクに同期して戻したいのですが、常にメモリ内のデータのコピーも必要です。これは可能ですか?
編集:
可能な解決策としてrsync
、ディスクドライブをRAMドライブと同期するために10秒ごとに実行されるデーモンを起動することを考えました。次に、RAMドライブからコンパイルを実行します。rsync
速く燃えるれるが、これは実際に動作しますか?確かにOSの方がうまくいく可能性があります。...
time
あなたの編集と結果を私たちと共有してもらえますか?それはいくつかの論争を払拭するだろう。make clean && /usr/bin/time -v make
(time
コマンドに組み込まれているbashを使用しないでください)
time
組み込みbash(help time
)はman time
、I / O、コンテキストスイッチなどに関するGNU時間()よりも詳細が少ない(冗長オプションなし)