Tips for beginners: how much RAM is needed?

Hello everyone, I’m starting to evaluate the need to build a NAS/server/home theater DIY setup. I’m doing some research to assemble great hardware.
I have a case with 12 bays; obviously, I’ll start with fewer disks, but I’m aiming to have, in a few years, 12 HDDs of 26TB each with 3 parity disks (I think that’s enough) mounted on a high-performance HBA.

Now I have a doubt: how much RAM is advisable for such a system? I admit that I’m still undecided whether to install TrueNAS Scale baremetal or as a VM on Proxmox (I will use Jellyfin as a media center from this machine), but I might also run other VMs (like Home Assistant).

Is 128GB sustainable with all these TBs? If I use a 4TB NVMe as L2ARC to speed up the reading of small files, is that too little?
thanks for the answers

That would be more than enough.

It will likely give no benefit…

1 Like

so even with 200tb, 128gb isn’t a limit?
This is excellent news
The build will generally be used as a NAS, maybe with some light VMs, and to handle some video streams with transcoding via iGPU in 4K HDR. I don’t plan on using deduplication.

No. I mean, yes, in a sense it’s going to be limit–ARC obviously can’t exceed available RAM. But it’s highly unlikely to limit performance in any meaningful way. Check your ARC stats after a few weeks of uptime and see how it’s going–in all likelihood it’ll be fine.

2 Likes

Thank you very much, this information makes my hardware choice more flexible. I’ll do as you said. Another thing, would an NVMe for metadata management be useful?

A very crude rule-of-thumb is “1 GB per TB”, but it relaxes at high RAM so you do NOT need 200 GB to drive your array. You do need more than the recommended minimum, though, plus some for your apps/VMs, so 64+ GB is possibly not inconsiderate.

1 Like

Yes, this rule was worrying me a lot, which is why I preferred to ask directly here on the forum. Let’s say that the hardware I’m buying will be my personal PC for a while before eventually becoming a full NAS/server/home theater setup, but I’m planning ahead with plenty of PCIe and M.2 slots.

The only limitation of the chosen motherboard is that it has only 2 DIMM slots, which is why I was asking if a maximum of 128GB of RAM (in this case 2x64GB) would be enough to handle the maximum storage capacity I might reach (around 200TB)

This question comes up a lot.

64gb was more than sufficient for 700TB and a lot of containers on my old build. 128gb is likely more than enough.

1 Like

Ah… I had understood “in a few years” as referring to accreting drives over the years, and expanding, until eventually reaching 12-wide.
While it’s certainly possible to re-use an old desktop into a first NAS, this may result in less-than-optimal hardware. Case in point:

And then you may find that the motherboard also has bad IOMMU grouping and interferes with your planned VMs. And a single x16 slot rather than x8/x8. And no ECC, which is not required but cannot hurt a converged server with 200 TB of storage.
Or you’re going to spend big for a W680/W880 board with desirable server-grade capabilities which may not be an optimal (gaming?) desktop…

Conversely, the “case with 12 bays” is probably overkill as your daily desktop.

Budget allowing, build your desktop as a desktop and build the NAS as a NAS. Right parts for each task, and you’ll enjoy the NAS now.
The NAS does not require the latest and greatest, and could do with refurbished server components. Throw in a cheap Arc 310 dGPU for transcoding if needed.
Another case in point:

No need for a “high-performance” HBA with spinning rust… If running TrueNAS bare metal, you only need a 9207/9300-8i and 4 more SATA ports from the motherboard for a 12-wide array. A pair of M.2 for apps/VMs, something to boot from, and it’s wrapped.

1 Like

You have a case that can take your intend number of drives

You’re looking at RAID-Z3 - why? RAID-Z2 means you can lose two drives and still have all the data intact

RAM you can never have too much, but you can have too little 128GB is likely over kill but using a NVMe as L2ARC on a home system is excessive

It seems you’ve glossed over some of the important points that can become Gotchas

  • Number of users
  • Number of streams
  • are those streams transcoded? what are you serving to / what is the source?
  • GPU transcoding for Jellyfin?
  • NIC - 10GB
  • CPU what are you going to be using?

I use Kodi as my end client with the media accessed via SMB rather than streamed. My Client devices are NVidia Shields and a PC - all do any transcoding locally. I have a MariaDB VM on another PC to act as a common store for watched status - that I’ll migrate over at some point

I’d turn TrueNAS as the VM Host - depending on which VMs/Dockers etc you actually want

You need to work out how many PCIe slots and both their physical size and electrical connections you are going to need - If you go for more high end consumer board e.g. X470 chipset - watch out that you not only can split to have x16/x16 phy with x8/x8 elec but the CPU supports that

Your HBA 9XXX-16i for the 12 drives will be a x8 phy/elec card - be aware that the 9300-16i consumes more power than others

A 10Gb NIC, if you chose to go down that route can come in PCIe 3 x4 card but some are x8

The Graphics card - if you chose to use - again it will be a x16 phy / elec card

As to boot? 2x SATA SSD 60Gb or 120 (there is usually $1 between them)

VMs - consider a DRAM SSD Mirror? Crucial MX500 while you can still get them

If you don’t use deduplication, you can probably do just fine with 32 GB of RAM. Dedupe needs the 1 GB/1TB, nothing else. I have a couple of NAS in use, 1 with 24 GB and 1 with 32 GB, I tested the 32 GB one with 64 GB and it made no difference. However if you want to run apps on TrueNAS, you need to add RAM for the apps, but if you run TrueNAS on Proxmox then you can install the apps outside of TrueNAS and leave it with 32 GB.

L2ARC nVME - you need to test. I know people that told me it made no difference for them, but I have a SSD as L2ARC and it makes a difference for my old digital photo library of small files (25 years ago resolution was very small) where opening many files in sequence works many times faster after the first time, when they are copied in L2ARC. For any other purpose, I see no difference. For my GoPro movie library it makes absolutely no difference as the movies don’t fit in the 500 GB SSD and I don’t need it to fit.

…depending on the size of your storage. With 200+ TB and apps/VMs on top, 32 GB looks to be in the low side.

That’s FIVE GB per TB with default recordsize for dedup, no less!

1 Like

Without dedupe, what do you use the extra memory for?

ARC, obviously.