Need advice on BIOS settings

I’ve been hacking away at buying components for my first TrueNAS build (migrating from a Drobo5N2). I finally got around to assembling my homeserver yesterday and it’s time to install TrueNAS and get started. Will share build pictures and TrueNAS screenshots once it’s up and running.

I have a Core i5-12500 on an ASUS W680 motherboard (non IPMI version) with 128gb of OWC DDR5-4800 ECC RAM. I am using a samsung 990 pro PCIe 4.0 ssd for apps and an optane 32gb module as the boot drive.

My primary use case in the beginning will be storage (smb) + Plex media streaming. However, I do want to make the most of this homeserver and run additional apps/services like Home Assistant in a VM, Frigate (when I upgrade the RTX 4060Ti 16gb on my desktop I’ll install it in the homeserver), Immich and Vaultwarden.

This is the first time I am installing a non-windows OS and I have a few questions related to some of the BIOS settings. My goal is to have a stable system that is ideally also power efficient. I am not super paranoid about security and don’t believe anyone’s sneaking into my house and gaining physical access to the server (hence settings like Total Memory Encryption are disabled).

  1. What is the general consensus on ASPM? Does it play well with TrueNAS/Linux? I read a blog post detailing how troublesome it can be and even after configuring everything the resulting system was not very stable. How should I configure the following settings:
    a. PCIe ASPM: BIOS controlled or OS controlled
    b. DMI ASPM
    c. PCI Express clockgating

  2. Intel Trusted Execution Technology. Does it work smoothly with TrueNAS/Linux? I remember when I upgraded my previous windows desktop to windows 11, there were issues with such security features (core isolation etc).

  3. Enable IOMMU during boot. Is this something that’s only meant to protect against physical access to a system? I do have Intel VT-d enabled because I plan on running VMs later, but does this setting also need to be enabled for TrueNAS?

  4. Aggressive LPM on SATA controllers. Is this helpful with energy-efficiency or will it lead to system instability. From what I have read online, this can lead to unnecessary spindown of HDDs.

  5. PTT (enable/disable) and Extend CSME measurement to TPM-PCR. More hardware security stuff. Is it better to enable it or disable it for TrueNAS?

  6. Max Power Savings under APM configuration. Anyone here running an ASUS motherboard with this enabled? Will it lead to system instability?

While overall I would prefer energy efficiency, but I wouldn’t want to achieve it at the expense of system stability. I am not running mission critical stuff on the homeserver and a little bit of latency is fine as long as it does not lead to zfs/truenas errors.

Apologies for the long post but googling and reading conflicting responses from LLMs was making me more unsure about things.

Completely opposite recommendation by Gemini on the same query :joy:

You know, I actually do not have all these answers. I enable VT-d and any other options which support VMs or a Hypervisor. Otherwise I try to leave it at default settings.

Try to not overthink it initially. You can always change the BIOS settings if you need to later, especially if you notice something is not quite right like you cannot create a VM.

Also, while trying to reduce energy consumption, same advice, start at default, measure your consumption and then start tweaking it. But make tweaks slowly, you want to be able to point to a change you made if you start to have problems.

2 Likes

You know what, that’s just the advice I needed. I am overthinking everything and not feeling confident taking the first step and just installing the damn thing lol.

So thank you, I’ll start with the defaults and then tinker away once I have a baseline to compare against.

1 Like

It is only important, if you want to pass through complete devices to a VM (Like the GPU for your Plex server for transcoding.) Otherwise, you will not use it.

For that I have enabled VTd. This is a separate setting.
The BIOS description says: “Enable IOMMU in Pre-boot environment (If DMAR table is installed in DXE and If VTD_INFO_PPI is installed in PEI.)”

I think this has to do with IPMI etc before TrueNAS is booted by UEFI so I am keeping it disabled as I have no use for it and I am guessing it won’t affect TrueNAS (or VMs within it).

As I understand, VT-d allows you to use virtual machines in general.
IOMMU can provide exclusive acces of a VM to the HW in your machine.
So, if you pass through a GPU or a HBA, it disappears from the host system and will only be visible for the VM.