2 Replies Latest reply on Sep 10, 2019 11:59 PM by larstr

    Power saving settings

    larstr Virtuoso
    vExpert

      Power saving settings have always been an important topic and a known best practice involve configuring BIOS to full performance and some hardware vendors now offer to deliver servers preconfigured with this setting.

       

      Retrieving info from the vsphere web client can be done on the power management page:

      We can see that this host has disabled any power management (meaning full performance) in BIOS by looking at the Techology line that says "--". If it says ACPI-C it means dynamic power saving (balanced)  and if it says ACPI-P it means OS control mode in the BIOS. The Active Policy field here is irrelevant as long as Technology doesn't have an ACPI-value, and in the HTML5 client it *is* possible to change this value even though it has no effect (used to get greyed out in the .Net client when you disabled power saving).

       

      By using PowerCLI I can list and set the Active Policy, but as long as BIOS is set to full performance the results will be wrong, atleast on 6.7. I think these gave better answers some time ago. Being able to read the Technology field with PowerCLI would probably be a good idea, but I haven't figured out how.

       

      I found a one-liner to get some power saving values, but the results are of not much help:

      PS C:\ps> Get-VMHost | Sort | Select Name,
      >> @{ N="CurrentPolicy"; E={$_.ExtensionData.config.PowerSystemInfo.CurrentPolicy.ShortName}},
      >> @{ N="CurrentPolicyKey"; E={$_.ExtensionData.config.PowerSystemInfo.CurrentPolicy.Key}},
      >> @{ N="AvailablePolicies"; E={$_.ExtensionData.config.PowerSystemCapability.AvailablePolicy.ShortName}}
      
      
      Name                CurrentPolicy CurrentPolicyKey AvailablePolicies
      ----                ------------- ---------------- -----------------
      esxi01.company.com dynamic                      2 {static, dynamic, low, custom}
      esxi02.company.com dynamic                      2 {static, dynamic, low, custom}
      esxi03.company.com dynamic                      2 {static, dynamic, low, custom}
      esxi04.company.com dynamic                      2 {static, dynamic, low, custom}
      esxi05.company.com dynamic                      2 {static, dynamic, low, custom}
      esxi06.company.com dynamic                      2 {static, dynamic, low, custom}
      esxi07.company.com dynamic                      2 {static, dynamic, low, custom}
      esxi08.company.com dynamic                      2 {static, dynamic, low, custom}
      esxi09.company.com dynamic                      2 {static, dynamic, low, custom}
      
      
      
      

      All of the above servers are configured with a BIOS setting of Static full performance, while these results only reflect the non-used/non-available Active Policy.

       

      One can argue if a maximum performance setting in BIOS is optimal as the turbo modes of the cpus aren't as effective for single threaded workloads, but it's usually good enough for most organizations. It's also now often specified as a requirement from many application vendors, so being able to read the Technology setting would be nice.

       

      Lars

        • 1. Re: Power saving settings
          LucD Guru
          vExpertCommunity WarriorsUser Moderators

          Does this help?

           

          Get-VMHost | Sort | Select Name,

              @{ N="CurrentPolicy"; E={$_.ExtensionData.config.PowerSystemInfo.CurrentPolicy.ShortName}},

              @{ N="CurrentPolicyKey"; E={$_.ExtensionData.config.PowerSystemInfo.CurrentPolicy.Key}},

              @{ N="AvailablePolicies"; E={$_.ExtensionData.config.PowerSystemCapability.AvailablePolicy.ShortName}},

              @{ N='HW Support';E={$_.ExtensionData.Hardware.CpuPowerManagementInfo.HardwareSupport}}

          • 2. Re: Power saving settings
            larstr Virtuoso
            vExpert

            Yes, indeed!

            Thanks again, LucD!

             

            Lars