11

Is it possible to enable (Windows) Sleep mode on any modernish servers? Is there a specific BIOS setting I need to change to change or is it just that most servers don't support sleep mode?

powercfg /a reports "The system firmware does not support this standby state"

I have tried the following servers recently: Dell 2900, Dell R530, Lenovo RD650.

Intention is to have the server drop down into sleep mode when not used, say overnight, and have it start up again when the NIC receives a data packet.

2
  • 11
    This is contradiction: server and sleep. Servers are designed and constructed to run 24/7 for years. Oct 20 at 11:34
  • 5
    As an anecdote, I used to put my Dell R610 into suspend-to-disk every night (and have it wake itself back up in the morning), since the fan noise bothered my parents who had to sleep a room over from it. So unless it was lying to me and shutting down fully, that would be a piece of evidence in support of at least the older PowerEdge servers supporting some middle ground between on and off. Oct 20 at 21:57

4 Answers 4

14

In general, servers and server OSes are designed to run continuously and don't support sleep modes like a laptop or workstation would.

Our Dell servers and, I expect, all others do have power saving modes that allow servers that are idling to slow down clock and fan speeds for example to reduce power consumption. That is not the same as a full sleep though.

Usually servers use the hours when there isn't much user-generated load (typically at night) to run background jobs, like system backups, batch jobs, etc. and aren't idle enough to be allowed to enter an actual sleep mode.

People do turn servers off, but they run into the issue that powering on a server is not nearly instantaneous, but rather takes minutes.

Intention is to have the server drop down into sleep mode when not used, say over-night, and have it start-up again when the NIC receives a data packet.

Wake on LAN (WoL) is still a thing, but that takes a specially-crafted packet and power on time of a server is not quick enough to, for example, start processing a web request before your site visitor is long gone.


In one organisation I worked at, they powered off the majority of VDI servers when users went home. They left sufficient servers running that when people needed a virtual desktop, they could log in immediately and when a certain load threshold was reached, additional servers were powered on preemptively. (I am not too sure if WoL was used for that or an IPMI/iDRAC request would have been made.)

That ensured most of the time that there was enough capacity that when a user wanted to log in, their VDI instance could be made available immediately, but also a great many servers were powered off more than 50% of the time rather than running 24x7.

2
  • "In general servers and server OS's [...] don't support sleep modes like a laptop or workstation would." -- I can believe something like suspend-to-RAM might not be supported on server OSes, but I would expect both the software and hardware to support various power modes of the processors just fine, and similarly, I would find it surprising if e.g. server hard drives would be incapable of spinning down the same as any spinning drive.
    – ilkkachu
    Oct 21 at 17:54
  • 1
    @ilkkachu: They're certainly capable, but e.g. the firmware often has options to deliberately disable CPU sleep states (I assume to reduce jitter/variation when that's important for ...whatever it is that people use servres for), and HDDs are probably not spun down nearly as aggressively as on a laptop (it's said that they actually wear less spinning 24/7 for years than going through load/unload cycles). So while all those capabilities are still there, they have varying levels of use. Oct 23 at 8:09
11

Most purpose-built server hardware does not support ACPI S1, S2, or S3 states, which are collectively what Windows usually refers to as ‘sleep’ (usually S3 specifically). This is because that type of usage just doesn’t make sense for servers. They’re either on 24/7, or they’re near-line setups that use ACPI S4 (suspend to disk, called ‘hibernate’ in Windows) to completely power off when not needed. Many don’t actually ‘support’ ACPI S4 in firmware either, but that doesn’t matter because it can be entirely handled by the OS if the drivers are designed correctly (and they are for most servers, although not to support this case).

That approach of using ACPI S4, together with WoL (which I can pretty much guarantee your server system supports) should perfectly cover your use case. It may be a bit higher latency than you want, but should still be usable.


That said, have you actually looked at power consumption when the system is idle? On a recent enough server, chances are it’s not much, especially if it’s using SSDs instead of hard drives (or will spin down the hard drives when they’re idle), and that may be low enough for you to not care.

1
  • Taking the Dell R530 as an example, because it has all SSDs, that uses 130w powered on and 35w powered off. That is with pretty much everyting which is not needed disabled, like all PCI slots, internal USB etc. If it could suspend at night when no one is using it that would be most efficient and then just power-up when it receives it's first network in the morning. I did have an old low-powered workstation running hyper-v 2012 doing this and that worked great: powered down to 5w when suspended and came up within a couple of seconds from receipt of a network packet when required.
    – NickC
    2 days ago
3

Given the climate/political environment, I think most commercial general-purpose servers have power savings capabilities for quite a long time, both hardware and operating system support. This is probably more visible/relevant in cloud environments where there are bills for gear powered on. Modern production environments tend to have an affinity for "auto scaling" resources.

Assuming the firmware has it enabled/configured, you should be able to test if power savings sleep works from the command line:

rundll32.exe powrprof.dll,SetSuspendState 0,1,0

Note that requires hibernation to be disabled, which it should be. Hibernation may be disabled with the following command:

powercfg -hibernate off

Reference: How can I put the computer to sleep from Command Prompt/Run menu?

Also note that Windows can save the current session, and automatically log on the current user and restart open applications after a traditional shutdown/full startup, if that would work for some scenarios.

1
0

You won't find the ability to sleep in a server OS. If you can settle on a daily server outage window, shut down the server with a script, and use a power on schedule in the BIOS.

New contributor
Brian is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .