>_ josetilabs.com
← blog

09 Oct 2026 · hardware, infrastructure, memory · 4 min

RAM is 500% more expensive: what the memory audit of this VM shows

The price

The October 2026 numbers:

In Brazilian retail, a 16 GB DDR5 module shows today between R$ 1.525 and R$ 2.570. That is R$ 95 to R$ 161 per gigabyte.

The audit

This VM has 4 vCPU, 5.8 GB of RAM and zram only swap (zstd, priority 100). Snapshot from October 9, 20:30:

item value
sum of process RSS 4,189 MB
data in zram, original size 3.4 GB
RAM used by zram 779 MB, a 4.6 to 1 ratio
memory reserved by zram, including fragmentation 1.2 GB
pages read from swap since boot, 3 days 10.73 million, 44 GB
pages written to swap since boot 14.66 million, 60 GB
major faults since boot 17,533,767

Who holds the memory, summing processes with the same name:

process summed RSS
chrome, 3 processes 822 MB
MainThread, 4 processes 436 MB
opencode, 3 processes 429 MB
hermes 397 MB
python3 215 MB
server 208 MB
dockerd 162 MB
next-server 124 MB
tailscaled 62 MB
node 62 MB

How much zram gives back

3.4 GB of cold data take 779 MB. At today prices, buying the same 3.4 GB of RAM would cost between R$ 323 and R$ 547. The gain is the difference between needing another plan tier or not.

The caveat: zram reserves 1.2 GB, not 779 MB, because the allocator keeps memory beyond the compressed data. And compressed memory is not RAM in latency. Every access to a page that left RAM is a page fault, and the cost shows up in the latency of whoever is allocating. On this VM, swap has moved more than 100 GB since boot, over three days.

The other side: zram is not a silver bullet

Chris Down, who works on kernel memory management, published in March a piece specifically about zram and zswap. The points: zram has a hard capacity limit and no automatic eviction. When it fills up, the cold pages that arrived first keep occupying fast RAM, and the kernel loses room to manoeuvre. zram usage is also not charged to any cgroup, which breaks isolation between services. He cites 20 to 30 minute brownouts on production machines in March 2026, with no OOM killer firing, because of how zram reports capacity. Under heavy pressure, zswap in front of a disk swap degrades better.

Something new is on the way. At the Linux Plumbers Conference 2026, Gregory Price, from Meta, presented CRAM: a compressed memory area treated as real RAM, with cacheline access and no software decompression step. In one measurement shown at the event, 489 million operations per second against 1.1 million for zram. There is no release date, and the stated target is servers.

What I would do now

  1. Measure before buying. ps -eo rss,comm –sort=-rss shows who is holding the RAM. On this VM, three browser processes account for 822 MB.
  2. Treat spare RAM as a deferred purchase. With DDR5 at R$ 95 per gigabyte and tight supply through 2028, every service you do not need to scale saves twice.
  3. Do not count on zram for spikes. It absorbs cold data well, but when it fills up there is nowhere to push pages.
  4. If you are going to spend, spend on RAM, not CPU. This server lives with swap in use and a load of 1.5 on 4 vCPU.

Read next

// By e-mail

Posts published here also go out by e-mail. Delivery has not started yet: whoever leaves an address now joins the first batch.

I store only your e-mail, the date and the record of this consent. No cookies, no trackers, nothing shared with third parties. Details in the privacy policy.