drdread
  • drdread
  • 100% (Exalted)
  • Advanced Member Topic Starter
a month ago
Why does my HP ML360 G9 server say 368GB (240 GB Usable) in RAM in Windows 2016?
Sponsor

Want to thank us? Use: Patreon or PayPal or Bitcoins: bc1q4whppe29dw77rm4kv4pln0gqae4yjnxly0dny0hky6yhnafukzjsyrsqhk

All opinions expressed within these pages are sent in by members of the public or by our staff in their spare time, and as such do not represent any opinion held by sircles.net Ltd or their partners.


sirclesadmin
a month ago

Ah, the classic RAM disparity mystery - where the server swears you have 368GB of RAM, but Windows says "Nice try, only 240GB usable." Let's break this down methodically.




Likely Causes (and What to Check First)


1. Hardware Reserved Memory (Big Culprit)



  • Windows reports "hardware reserved" memory when RAM is not available for the OS, often because it's reserved for:



    • System BIOS/firmware

    • PCI devices (e.g., RAID controllers)

    • NUMA node interleaving

    • Fault-tolerant memory (spare memory, memory mirroring, etc.)





Check This:




  • Go to Task Manager Performance Memory Look at "Hardware Reserved".

  • If it's around 128 GB or more - you've found the issue.




2. BIOS Settings: Memory Protection or Mirroring



  • HP ProLiant servers can enable memory mirroring, which duplicates memory for fault tolerance.



    • This means half your RAM is mirrored and unusable for OS tasks.



  • Alternatively, lock-step mode or spare rank configurations can also reduce usable RAM.





Check This:




  • Reboot into the BIOS/UEFI (F9 during boot on HP servers).

  • Look under Advanced Memory Options and check if mirroring, spare memory, or lockstep is enabled.

  • If you're not doing mission-critical fault-tolerant work, disable these options to unlock more usable RAM.




3. Operating System Licensing Limits



  • Windows Server 2016 Standard Edition has a RAM limit of 24TB - so that's not the issue here.

  • But sometimes VMs or misconfigured licenses limit memory via boot parameters or Hyper-V allocations.



Check This:




  • Run msconfig Boot Advanced Options Make sure Maximum memory is unchecked.

  • If this is a Hyper-V host, check the settings of the VM guest OS.




4. NUMA / Node Interleaving



  • If NUMA node interleaving is disabled in BIOS, some memory may be tied to a CPU that's currently offline or improperly recognized.



Check This:




  • Check BIOS for NUMA or node interleaving settings.

  • Also check Device Manager to make sure all processors are recognized.




5. Faulty or Unmatched DIMMs



  • Some DIMMs might not be fully initialized by the firmware due to:



    • ECC faults

    • Rank mismatches

    • Incompatible speeds or profiles





Check This:




  • Reboot and use HP Intelligent Provisioning or the iLO System Info to verify all DIMMs are online and fully recognized.

  • Run a memory test from HP diagnostics or MemTest86.




What You Should Do Now (Step-by-Step)



  1. Task Manager Check "Hardware Reserved"

  2. BIOS Look for Memory Mirroring/Lockstep/Spare Mode Disable

  3. Run msconfig Boot Advanced Options Uncheck "Max Memory"

  4. Check DIMM slots in iLO or BIOS to verify actual populated and recognized memory

  5. Run full memory diagnostics if any modules show as partial/unknown

  6. Update BIOS and iLO firmware in case of known firmware bugs




Final Thought


Your server likely has memory mirroring or spare memory enabled, which is common for high-availability configs. Unless you're running mission-critical loads that need redundancy at the memory level, you can reclaim a big chunk of that "lost" memory by toggling those features off.


Would you like help locating the exact BIOS menu items for HP ML360 G9?



Users browsing this topic