New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 607371 link

Starred by 3 users

Issue metadata

Status: WontFix
Owner:
Closed: Dec 20
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug



Sign in to add a comment

Do we want CONFIG_WQ_POWER_EFFICIENT_DEFAULT

Project Member Reported by diand...@chromium.org, Apr 28 2016

Issue description

Noticed the proposed rockchip64 config turning this on at:

https://chromium-review.googlesource.com/#/c/340506/2/chromeos/config/base.config

config WQ_POWER_EFFICIENT_DEFAULT
        bool "Enable workqueue power-efficient mode by default"
        depends on PM
        default n
        help
          Per-cpu workqueues are generally preferred because they show
          better performance thanks to cache locality; unfortunately,
          per-cpu workqueues tend to be more power hungry than unbound
          workqueues.

          Enabling workqueue.power_efficient kernel parameter makes the
          per-cpu workqueues which were observed to contribute
          significantly to power consumption unbound, leading to measurably
          lower power usage at the cost of small performance overhead.

          This config option determines whether workqueue.power_efficient
          is enabled by default.

          If in doubt, say N.

---

In our 3.14 and 3.18 kernels we have this off.  Presumably we should make a policy call and set it everywhere unless we think some platforms need this and others don't.  ...or if we think it's buggy somewhere.
 

Comment 1 by snanda@chromium.org, Apr 28 2016

Cc: tbroch@chromium.org
+Todd.

Comment 2 by tbroch@chromium.org, Apr 28 2016

Cc: -briannorris@chromium.org -snanda@chromium.org jleong@chromium.org mshe...@chromium.org
Components: OS>Kernel>Power
Owner: tbroch@chromium.org
Status: Assigned (was: Untriaged)
Data from here: https://lwn.net/Articles/548281/ (included below) 

shows ~15% improvement for A15/A7 device with fairly idle task.  Definitely seems worthwhile based on that.

Lets find some time to validate power-savings and quantify 'small performance' overheard on several platforms before enabling by default.


-------------- lwn article snippet ---------------------------

Setup:
-----
- ARM Vexpress TC2 - big.LITTLE CPU
- Core 0-1: A15, 2-4: A7
- rootfs: linaro-ubuntu-devel

This patchset has been tested on a big LITTLE system (heterogeneous) but is
useful for all other homogeneous systems as well. During these tests audio was
played in background using aplay.

Results:
-------

Cluster A15 Energy      Cluster A7 Energy       Total
-------------------------      -----------------------       ------

Without this patchset (Energy in Joules):
---------------------------------------------------

0.151162                2.183545                2.334707
0.223730                2.687067                2.910797
0.289687                2.732702                3.022389
0.454198                2.745908                3.200106
0.495552                2.746465                3.242017

Average:
0.322866                2.619137                2.942003


With this patchset (Energy in Joules):
-----------------------------------------------

0.226421                2.283658                2.510079
0.151361                2.236656                2.388017
0.197726                2.249849                2.447575
0.221915                2.229446                2.451361
0.347098                2.257707                2.604805

Average:
0.2289042              2.2514632              2.4803674

Above tests are repeated multiple times and events are tracked using trace-cmd
and analysed using kernelshark. And it was easily noticeable that idle time for
many cpus has increased considerably, which eventually saved some power.

Comment 3 by derat@chromium.org, Jun 21 2016

Cc: bfreed@chromium.org
 Issue 550599  has been merged into this issue.
Cc: -mshe...@chromium.org
Status: Archived (was: Assigned)

Comment 6 by ketakid@google.com, Mar 18 2017

Status: Available (was: Archived)
Activating. Please assign to the right owner and the appropriate priority.

Comment 7 by tbroch@chromium.org, Dec 15 2017

Owner: ----
Project Member

Comment 8 by sheriffbot@chromium.org, Dec 17

Labels: Hotlist-Recharge-Cold
Status: Untriaged (was: Available)
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue.

Sorry for the inconvenience if the bug really should have been left as Available.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Cc: dtor@chromium.org ravisadineni@chromium.org sonnyrao@chromium.org
Owner: tbroch@chromium.org
Todd: I guess you used to be the owner here.  Should we keep this open or close it WontFix?
Status: Started (was: Untriaged)
kicked off a tryjob w/ the config enabled.  I'll try it out on a device to see if power savings is worth additional effort.
Status: WontFix (was: Started)
CL:
  crrev.com/c/1381755
tryjob:
  https://cros-goldeneye.corp.google.com/chromeos/healthmonitoring/buildDetails?buildbucketId=8926839163960082256

Ran power_Idle on scarlet 10 times for both 'base'  & 'tryjob' images

Placed raw data here:
  https://x20.corp.google.com/users/tb/tbroch/scarlet/power/config_wq_power_efficient_default/test_that_scarlet_power_Idle

Put some keyvals for statistical comparison here:
  https://docs.google.com/spreadsheets/d/1oE0sx7Np98_aqnKvnoTuwda9rXKUyTESZ7LRBRyLAZ4/edit#gid=645873200

Don't see any statistically significant improvement there IMO (PNG has summary of gsheet compares of C0 & pwr)

Going to wontfix based on that.  Please re-open if you feel this analysis is flawed or needs more detail/exploration.

Screenshot 2018-12-20 at 11.41.41 AM.png
38.2 KB View Download

Sign in to add a comment