public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [RFC v01 0/3] Power Capping Framework
@ 2013-08-02 18:08 Srinivas Pandruvada
  2013-08-02 18:08 ` [RFC v01 1/3] PowerCap: Documentation Srinivas Pandruvada
                   ` (4 more replies)
  0 siblings, 5 replies; 20+ messages in thread
From: Srinivas Pandruvada @ 2013-08-02 18:08 UTC (permalink / raw)
  To: linux-kernel; +Cc: gregkh, Srinivas Pandruvada

Highlights
As suggested
- Didn't use any raw kobject calls, only using device_xx calls.
- No device_create_file/device_remove_file for attributes, so that
user space can see all attributes when notification is received for
device creation.

Overview
With the evolution of technologies, which enables power monitoring and limiting,
more and more devices are able to constrain their power consumption under certain
limits. There are several use cases for such technologies:
- Power monitoring: Each device can report its power consumption.
- Power Limiting: Setting power limits on the devices allows users to guard against
platform reaching max system power level.
- Maximize performance: While staying below a power limit, it allows devices to
automatically adjust performance to meet demands
- Dynamic control and re-budgeting: If each device can be constrained to some power,
extra power can redistributed to other devices, which needs additional performance.

One such example of technology is RAPL (Running Average Power Limit) mechanism
available in the latest Intel Processors. Intel is slowly adding many devices under
RAPL control. Also there are other technologies available, for power capping various
devices. Soon it is very likely that other vendors are also adding or considering
such implementation.

Power Capping framework is an effort to have a uniform interface available to Linux
drivers, which will enable
- A uniform sys-fs interface for all devices which can offer power capping
- A common API for drivers, which will avoid code duplication and easy
implementation of client drivers.

Once this framework is approved, we will submit a RAPL client driver using this
framework.

Revisions:

v01:
Use device model only to register zones and controllers.

v00:
Presented options


Srinivas Pandruvada (3):
  PowerCap: Documentation
  PowerCap: Add class driver
  PowerCap: Added to drivers build

 Documentation/powercap/PowerCappingFramework.txt | 677 ++++++++++++++++
 drivers/Kconfig                                  |   2 +
 drivers/Makefile                                 |   1 +
 drivers/powercap/Kconfig                         |  16 +
 drivers/powercap/Makefile                        |   5 +
 drivers/powercap/powercap_sys.c                  | 985 +++++++++++++++++++++++
 include/linux/powercap.h                         | 300 +++++++
 7 files changed, 1986 insertions(+)
 create mode 100644 Documentation/powercap/PowerCappingFramework.txt
 create mode 100644 drivers/powercap/Kconfig
 create mode 100644 drivers/powercap/Makefile
 create mode 100644 drivers/powercap/powercap_sys.c
 create mode 100644 include/linux/powercap.h

-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2013-08-05 19:44 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-02 18:08 [RFC v01 0/3] Power Capping Framework Srinivas Pandruvada
2013-08-02 18:08 ` [RFC v01 1/3] PowerCap: Documentation Srinivas Pandruvada
2013-08-03  0:10   ` Joe Perches
2013-08-03  0:23     ` Srinivas Pandruvada
2013-08-03  0:25       ` Joe Perches
2013-08-05 19:09   ` Jonathan Corbet
2013-08-05 19:52     ` Srinivas Pandruvada
2013-08-02 18:08 ` [RFC v01 2/3] PowerCap: Add class driver Srinivas Pandruvada
2013-08-02 22:43   ` Joe Perches
2013-08-03  0:06     ` Srinivas Pandruvada
2013-08-02 18:08 ` [RFC v01 3/3] PowerCap: Added to drivers build Srinivas Pandruvada
2013-08-02 22:29 ` [RFC v01 0/3] Power Capping Framework Greg KH
2013-08-02 23:52   ` Srinivas Pandruvada
2013-08-03  0:53     ` Greg KH
2013-08-04 19:36       ` Arjan van de Ven
2013-08-02 22:30 ` Greg KH
2013-08-02 22:33   ` Joe Perches
2013-08-02 22:50     ` Greg KH
2013-08-03  0:03   ` Srinivas Pandruvada
2013-08-03  0:54     ` Greg KH

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox