// NVMe Memory Tiering Calculator Help & guide

NVMe Memory Tiering Calculator

Plan NVMe memory tiering for VCF 9 hosts using Mem.TierNVMePct. Size NVMe partitions, model active memory fit, classify workloads, and export ESX configuration.

VCF 9.0Mem.TierNVMePctActive MemoryPer-VM TieringEncryption
Your data stays on your device. All calculations run entirely in your browser.
Disclaimer: Based on VMware/Broadcom NVMe Memory Tiering blog series for VCF 9. Default ratio is 1:1 (Mem.TierNVMePct=100). Validate against current VMware docs and HCL.
1
Hardware
2
Workloads
3
Analysis
4
Export
Host Configuration
Step 1 of 4
Hosts
DRAM/host (GB)
DRAM type
NVMe device
Partition (GB)
Auto-set, max 4 TB
Encryption
Mem.TierNVMePct
$/GB DRAM
$/GB NVMe
Step 1 of 4 — Hardware
Tier Breakdown
Cost Comparison
Tiered cost
$0
All-DRAM cost
$0
Savings
$0
Workload Profiles
Active memory must fit in DRAM. Exclude latency-sensitive VMs (SAP HANA, HFT, FT, large pages) via sched.mem.enableTiering = FALSE.
No workloads defined yet.
Step 2 of 4
Sizing Analysis
Configure hosts and add workloads first.
Step 3 of 4
ESX Advanced Parameters
These are the ESX advanced settings that control NVMe Memory Tiering behavior in VCF 9. Host-scoped parameters are set via Get-AdvancedSetting / Set-AdvancedSetting in PowerCLI. VM-scoped parameters are set per-VM via New-AdvancedSetting on the VM object. Changes to host parameters require careful planning — review the VMware blog series below before modifying in production.
ParameterScopeDefaultDescription
Mem.TierNVMePctHost100Controls the DRAM:NVMe ratio. A value of 100 means NVMe tier equals 100% of DRAM (1:1 ratio). 200 = 1:2, 400 = 1:4. The default 1:1 is recommended for most workloads. Only increase after verifying active memory fits in DRAM.
Mem.EncryptTierNvmeHost0Enables AES-XTS encryption for all VM pages swapped to the NVMe tier on this host. Required for compliance in regulated environments since NVMe is non-volatile — data persists after power loss unlike DRAM. Set to 1 to enable.
sched.mem.EncryptTierNVMeVMFALSEPer-VM alternative to host-level encryption. Encrypts NVMe tier pages only for specific high-value VMs (domain controllers, finance databases) without the overhead of encrypting all VMs on the host. Set to TRUE.
sched.mem.enableTieringVMTRUESet to FALSE to exclude a VM from memory tiering entirely — all its pages stay in DRAM (Tier 0). Required for SAP HANA, in-memory databases, high-frequency trading apps, FT-enabled VMs, and VMs using large memory pages.
How ESX detects tiered memory: When Memory Tiering is enabled, ESX reports the combined DRAM + NVMe as total host memory. The isolated DRAM (Tier 0) is calculated by dividing total memory by the divisor (1:1 = ÷2, 1:2 = ÷3, 1:4 = ÷5). Check status via esxcli memtier status get and hardware via esxcli hardware memory tier list.
VMware documentation & tools
PowerCLI Export
Ready-to-run PowerCLI script generated from your configuration above. The script connects to vCenter, iterates over all hosts matching the filter, checks current tiering status via esxcli memtier status get, sets Mem.TierNVMePct to your configured ratio, and optionally enables host-level encryption. If you defined workload exclusions or per-VM encryption, those are applied via New-AdvancedSetting on each VM.
Before running: Update $vCenter and the Get-VMHost filter to match your environment. Requires PowerShell 7+ with VMware.PowerCLI module installed. Test in a non-production cluster first. NVMe partition creation (esxcli memtier partition create) must be done separately before running this script — see Part 6 of the blog series.
Step 4 of 4 — Export