Message ID | 1484670521-28503-1-git-send-email-sergei.trofimov@arm.com |
---|---|
Headers | show |
Series | power management api | expand |
First off, thanks for this submission, however this series has a number of problems: 1. It does not compile due to the incorrect specification of <odp/api/visibility_begin/end.h> There is no /api/ level in these includes. 2. Numerous checkpatch issues throughout. Please run ./scripts/checkpatch *.patch before submitting and ensure that checkpatch gives a clean report. 3. Missing doxygen for new API changes. Please run make doxygen-doc and ensure that it builds cleanly as well. 4. Patch series organization. Part 1 (the API patch) should include just the new include/odp/api/spec/power.h file and the update to odp_api.h to include that. The makefile changes and related implementation changes should go in subsequent parts. Generally, new API patches should be organized into four sections consisting of one or more patch parts each: The API definition, the linux-generic implementation of these APIs, the validation tests for these new APIs, and the User Guide documentation for these new APIs. The last two do not have to be part of the initial patch series if that's more convenient but if the API is accepted into api-next then all four will need to be present before it can be promoted to master. Thanks. On Tue, Jan 17, 2017 at 10:28 AM, Sergei Trofimov <sergei.trofimov@arm.com> wrote: > This patch series introduces a power management API and provides a sample power > governor implementation. The API provides a way to query abstract performance > levels supported by the platform, and to associate a power "governor" to manage > power/performance levels on a set of CPUs. > > The sample governor implementation lowers frequencies of governed CPUs over > time, raising them to max if monitored queues' depths exceed a set threshold. > This behavior is analogous to the "ondemand" cpufreq governor in the Linux > kernel. > > In order to enable the implementation of the sample governor, queue API is > extended to support depth tracking and blocking dequeues. > > Sergei Trofimov (5): > power: added API for managing CPU DVFS > odp_queue: added support for queue depth tracking > queue: adding a notification queue type > queue: adding depth threshold trigger > power: Adding a power governor implementation > > doc/users-guide/users-guide.adoc | 7 + > include/odp/api/spec/power.h | 153 +++++++++++ > include/odp/api/spec/queue.h | 71 ++++- > include/odp_api.h | 1 + > platform/Makefile.inc | 1 + > platform/linux-generic/Makefile.am | 3 + > platform/linux-generic/include/odp/api/power.h | 1 + > .../linux-generic/include/odp_config_internal.h | 5 + > platform/linux-generic/include/odp_internal.h | 4 + > .../linux-generic/include/odp_packet_io_queue.h | 4 +- > .../linux-generic/include/odp_queue_internal.h | 16 +- > platform/linux-generic/odp_init.c | 12 + > platform/linux-generic/odp_packet_io.c | 6 +- > platform/linux-generic/odp_power.c | 294 +++++++++++++++++++++ > platform/linux-generic/odp_power_governor.c | 220 +++++++++++++++ > platform/linux-generic/odp_queue.c | 196 +++++++++++++- > test/common_plat/validation/api/queue/queue.c | 2 + > 17 files changed, 984 insertions(+), 12 deletions(-) > create mode 100644 include/odp/api/spec/power.h > create mode 100644 platform/linux-generic/include/odp/api/power.h > create mode 100644 platform/linux-generic/odp_power.c > create mode 100644 platform/linux-generic/odp_power_governor.c > > -- > 1.9.1 >