PCの搭載メモリ容量基準とメモリ不足時の対策

 記事の更新日:2026/10/18 記事公開

1.概要

PCに搭載するメモリ容量はどの程度が良いかの判断基準はとても難しいものです。Linuxは比較的軽量なOSなので少ないメモリでも動作しますが、現実的には8GB以上のメモリは必要です。最近はAIをlocal環境で動かす場合があり、メモリ搭載量が多いほど処理を実行するには有利です。AIをlocalPCで動かす場合は、GPU及びGPUに搭載されるメモリ容量も重要です。しかし、今回はPCのメモリ容量に関して着目をします。

まず、メモリの容量の選定方法を記載し、次にupgrade時期と方法、更に、メモリ不足に備える対策に関して記述をします。

私の評価は以下の通りです。

(1) メモリ購入はメモリスロットの数と同等数を同一スペック品を用意する
(2) 世代交代で容量が大きなメモリが安価に手に入るようになった時に、同様の方式でメモリをアップグレードする
(3) メモリ不足に備えるにはswap領域を設定することであるが、性能は劇的に低下する
(4) SSDを利用する場合はswap定義をしない、しかし、メモリ不足はPCハングとなる
(5) zram製品があり、swapの代替になりそうだ

2.詳細

(1) 物理メモリ容量の選択

私個人の考え方ですが、メモリはマザーボードのメモリスロットの数だけを同一容量で同一スペックの製品を購入していました。例えば、メモリスロットが2個のマザーボーでは、最初に4GBを2個購入します。メモリスロットが4つの場合は、4GBを4個購入します。メモリスロットを埋める理由はインターリーブが効果的に利用され、メモリアクセス速度が上がるためです。空きスロットができないようなマザーボードとメモリ容量の選択をします。

最近、メモリとSSDの価格が高騰して、メモリの世代が変わっても中々値下がりしません。以前は1世代や2世代前の製品は、最高性能のものが安価に入手できました。私は、メモリの世代交代が進んで旧世代のメモリ価格が下がった時に、4GBを2個から8GBを2個に交換していました。交換する場合の考え方も同じです。基本は同一性能の製品をメモリスロット分購入します。PC利用は、個人の趣味の範囲なので金額的に負担が少ない方法を選択していました。

(2) メモリ不足発生時の対応としてのswap領域

しかし、16GBのメモリでは仮想マシンを動かす上でも容量不足になります。メモリ不足を補うものとしてswap領域を確保することが昔から推奨されていました。swap領域のサイズは、搭載メモリ容量の1/2が目安で、以前は設定していました。しかし、実際にswapを利用する事態になると処理速度は劇的に遅くなり、ディスクのI/Oばかりが増加して、PCは事実上、使えなくなります。

私は、SSDを利用するようになり、swap領域を作らなくなりましたが、メモリ不足が発生するとPCはハングします。物理メモリの限界がPCの限界です。以前はswap専用パーティション(type 82)を作成していましたが、swapが必要な場合は、ext4ファイルシステム内にswapファイルを作成するようになりました。type 82を作成すると、その部分にアクセスが集中して良くないと聞いてからです。普通の用途の場合はswapがなくても16GBのメモリがあると問題が起きることはありません。

swapの作成方法に関して記述をします

$ sudo mkdir /swap
$ sudo dd if=/dev/zero of=/swap/swap0 bs=1M count=8192
$ sudo chmod 0600 /swap/swap0
$ sudo mkswap /swap/swap0
$ sudo swapon /swap/swap0
$ echo "/swap/swap0  swap  swap  default  0  0" >> /etc/fstab

PCを再起動してtopコマンドで確認します

(3) swapに変わる製品としてのzram

AIをLocalPCで稼働するとメモリを大量に消費します。十分なメモリを搭載していることが大前提ですが、zramという製品があり、swapよりも高速に処理されるとネットで記事を見つけて試してみました。設定は難しくなく、見た感じはswapと変わりません

zramの設定方法に関して記述します

$ sudo apt-get install zram-tools
$ sudo vi /etc/default/zramswap
下記2行のコメントを消すことで設定します
ALGO=lz4         #use ALGO=zstd  on systems with less than 4 GB of RAM
PERCENT=50
$ sudo vi /etc/sysctl.conf
下記1行を最後に追加します
vm.page-cluster = 0

PCを再起動してtopコマンドで参照すると、搭載メモリ容量の1/2がzramとして定義されます

zramの評価はできていません。メモリを必要とする処理を必要とする時にswapの代わりとして利用する予定です

3.所見

メモリは全てのメモリスロットに分散されているのが一番効率的です。このことを考えるだけでメモリ容量の選定ができ、実際に購入する場合の価格を下げることができます。メモリは増設するのではなく、メモリ価格が下がった時に全てを入れ替えることが、効果を発揮します。これらは個人の経験から得られたものなので、中々理解されないことかも知れません。頭の隅に入れておくと良いかも知れないですね。

参考

[本ブログ内参照]
[外部サイト参照]


 

コメント