たくさんのラム。どうやって使うのですか?


14

私のPCには8 GbのRAMがあります。Ubuntuのほとんどにそれを使用させる方法はありますか?キャッシュをドロップすることはほとんどなく、一度開いたプログラムをRAMで長く保持したり、起動時にアプリをプリロードしたりすることはほとんどありません。


Ubuntuはキャッシュをドロップするか、開いているプログラムをスワップに移動しますか?
mikewhatever

64ビット版または32ビット版はありますか?
アディソンモンゴメリー

回答:


8

を使用して特定のディレクトリのramdiskを作成できますtmpfs

たとえば~/.cache/、Google ChromeとChromeがデータをキャッシュするために使用するディレクトリの場合、エントリは次の/etc/fstabようになります。

tmpfs /home/your_username/.cache tmpfs defaults,size=1024M 0 0

ただし、再起動するたびに内容が失われることに注意してください。

別の適切な監督はかもしれない/tmp。tmpfsのサイズは、(RAMに対する)絶対値または相対値で指定できることに注意してください。

1GのRAMを使用します。

tmpfs /tmp tmpfs nosuid,size=1G 0 0

または、使用可能なRAMの10%を使用します。

tmpfs /tmp tmpfs nosuid,size=10% 0 0

2

プリロードは十分に簡単である必要があります-可能な限りLinuxのキャッシュ/バッファを使用するため、/ dev / nullに "プリロード"したいlibs / binariesを単純にcatする-キャッシュをウォームアップする必要があります。起動時に次のようなスクリプトを開始します。

#/bin/bash
PROGS=("/usr/bin/jiha" "/usr/bin/doho")
for i in "${PROGS[@]}"; do 
    cat $i > /dev/null
    for j in $(ldd "$i"); do  # this does not work -- need to filter ldd output (awk)
        cat $j > /dev/null
    done
done

これはいくつかのライブラリを何度も繰り返し処理することで多くの時間を浪費します。必要なライブラリを一度だけプリロードするのは少し複雑です-しかし、影響はPROGS-arrayの長さに依存します。

残り(まれにキャッシュをドロップするなど)は、デフォルトでシステムによってほとんど処理されます-使用できるものを取得し、必要な場合にのみ許可します。

HTH


これはディスクI / Oに悪影響を及ぼしますか?また、インストールするだけとは大きく異なりpreloadますか?興味深い質問と回答ですが、私はOPと同じ状況にあり、RAM使用率が50%を超えることはありません。
トム・ブロスマン

1
プリロードAFAIUは、ユーザーが開いたプログラム/ファイルに基づいて、操作中にプリロードします。この単純なアプローチは起動時間を延長しますが、必要なアプリだけのロード時間を高速化します。
トムレグナー

1
RAMのバッファリング/キャッシュされた部分は、必要に応じて解放されるため、ほとんどのツールで無料として表示されます。しかし、Linuxはアクセスできる限りすべてのファイルをキャッシュします。バッファ/キャッシュを含め、マシンで使用されるメモリの合計量が50%に達しない場合-実行するRAMが多すぎる:
Tom Regner

知っていただきありがとうございます。ラムはこれ以上安いので、余分に手に入れます。たまにVMを実行するには便利ですが、おそらく必要ではありません。
トム・ブロスマン

はい、メモリ不足にならないのはいいことです。絶対に価値があります。両方のマシン(職場/自宅)で8Gにジャンプしました。
トムレグナー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.