"Cryogenic" Linux Kernel Drops Power Use

Alejandra Morales announced the Cryogenic Linux kernel module on the LKML today. Cryogenic aims to reduce system power consumption by "enabling cooperative clustering of I/O operations among the various applications that make use of the same hardware device. In order to achieve this target, Cryogenic provides an API that enables applications to schedule I/O operations on SCSI and network devices at times where the impact the operations have on energy consumption is small."
Essentially this "Cryogenic" module isn't some magic piece of software that by just being loaded will reduce Linux power usage but requires other pieces of software to take advantage of its exposed API. The Cryogenic API allows deferring non-urgent tasks so they will happen at the same time as I/O operations requested by urgent tasks. In effect, the devices will be able to sleep longer as they won't be woken up until there's a lot of operations pending and/or urgent operations to be committed. With the hardware sleeping longer, it leads to power savings, especially for modern hardware that has very low-power sleep states.
Cryogenic was developed as a Master's Thesis at the Technical University of Munich by Alejandra Morales. This student is willing to offer the Cryogenic work for the mainline Linux kernel if there's interest in adapting the code and taking advantage of this potential power-savings API. More details and the Cryogenic code can be found via the kernel mailing list. There's also other Linux Cryogenic project information via the GNUnet.org project site.
8 Comments