lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <64aedc190a7f3fc91967f42b2ad7ca244df63f89.camel@mediatek.com>
Date:   Mon, 7 Nov 2022 09:41:29 +0000
From:   Jian-Min Liu (劉建旻) 
        <Jian-Min.Liu@...iatek.com>
To:     "peterz@...radead.org" <peterz@...radead.org>
CC:     "dietmar.eggemann@....com" <dietmar.eggemann@....com>,
        "mingo@...nel.org" <mingo@...nel.org>,
        "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
        "patrick.bellasi@...bug.net" <patrick.bellasi@...bug.net>,
        "adharmap@...cinc.com" <adharmap@...cinc.com>,
        "qais.yousef@....com" <qais.yousef@....com>,
        Jonathan JMChen (陳家明) 
        <Jonathan.JMChen@...iatek.com>,
        "vdonnefort@...gle.com" <vdonnefort@...gle.com>,
        "qperret@...gle.com" <qperret@...gle.com>,
        "morten.rasmussen@....com" <morten.rasmussen@....com>,
        "vincent.guittot@...aro.org" <vincent.guittot@...aro.org>
Subject: Re: [RFC PATCH 0/1] sched/pelt: Change PELT halflife at runtime

Hi, 

On Thu, 2022-09-29 at 11:47 +0200, Peter Zijlstra wrote:
> Because it messes up the order in which people normally read text.
> Why is top-posting such a bad thing?
> Top-posting.
> What is the most annoying thing in e-mail?
> 

Sorry for top-posting... 

> On Tue, Sep 20, 2022 at 10:07:59PM +0800, Jian-Min Liu wrote:
> > 
> > Update some test data in android phone to support switching PELT
> > HL 
> > is helpful functionality.
> > 
> > We switch runtime PELT HL during runtime by difference scenario
> > e.g.
> > pelt8 in playing game, pelt32 in camera video. Support runntime
> > switching PELT HL is flexible for different workloads.
> > 
> > the below table show performance & power data points: 
> > 
> > -----------------------------------------------------------------
> > ----
> > --|                      | PELT
> > halflife                                |
> > >                      |-------------------------------------------
> > > ---|
> > >                      |       32      |       16      |       8   
> > >    |
> > >                      |-------------------------------------------
> > > ---|
> > >                      | avg  min  avg | avg  min  avg |
> > > avg  min  avg|
> > > Scenarios            | fps  fps  pwr | fps  fps  pwr |
> > > fps  fps  pwr|
> > > ---------------------------------------------------------------
> > > ------|
> > > HOK game 60fps       | 100  100  100 | 105 *134* 102 | 104 *152*
> > > 106|
> > > HOK game 90fps       | 100  100  100 | 101 *114* 101 | 103 *129*
> > > 105|
> > > HOK game 120fps      | 100  100  100 | 102 *124* 102 | 105 *134*
> > > 105|
> 
> You have your min and avg fps columns mixed up, your min cannot be
> larger
> than avg.
> 
> Also, with min fps mostly above the actual screen fps, who cares. And
> seriously 120fps on a phone !?!? for worse power usage! you gotta be
> kidding me.
> 
> And I googled this game; it is some top-down tactical thing with
> real-time combat (as opposed to turn-based) (DOTA like I suppose),
> 60 fps locked should be plenty fine.
> 
> > > FHD video rec. 60fps | 100  100  100 | n/a  n/a  n/a |
> > > 100  100  103|
> > > Camera snapshot      | 100  100  100 | n/a  n/a  n/a |
> > > 100  100  102|
> 
> Mostly I think you've demonstrated that none of this is worth it.
> 
> > -----------------------------------------------------------------
> > ------
> > 
> > HOK ... Honour Of Kings, Video game
> > FHD ... Full High Definition
> > fps ... frame per second
> > pwr ... power consumption
> > 
> > table values are in %
> 
> Oh... that's bloody insane; that's why none of it makes sense.
> 
> 
> How is any of that an answer to:
> 
>   "They want; I want an explanation of what exact problem is fixed
> how ;-)"
> 
> This is just random numbers showing poking the number has some
> effect;
> it has zero explaination of why poking the number changes the
> workload
> and if that is in fact the right way to go about solving that
> particular
> issue.


Sorry that the data wasn't clear to understand. I try again with
absolute FPS numbers and some additional explanation as well as a
summary why we need to have the PELT halflife tunable a runtime.

HOK* 60FPS

+-------+-----------------------------------------+
|       |     avg. FPS   |     min. FPS  | power  |
+-------+--------+-------+-------+-------+--------+
|kernel | value  |diff(%)| value |diff(%)| diff(%)|
+-------+--------+-------+-------+-------+--------+
|pelt_1 | 54.1   | 0.0%  | 21.8  |  0.0% |  0.0%  |
+-------+--------+-------+-------+-------+--------+
|pelt_2 | 56.9   | 5.2%  | 29.2  | 34.0% |  2.2%  |
+-------+--------+-------+-------+-------+--------+
|pelt_4 | 56.6   | 4.5%  | 33.2  | 52.4% |  6.3%  |
+-------+--------+-------+-------+-------+--------+

*Honour Of Kings, video game

Test methodology:

We choose 60FPS in the game setup. Android's systrace (similar to
ftrace) then provides the real FPS from which we take the average and
minimum value.

Sorry, but we can't share absolute numbers for power from our test
device since this is still considered sensitive information.


FHD 60fps video recording

+-------+-----------------------------------------+
|       |    avg. FPS    |    min. FPS   | power  |
+-------+--------+-------+-------+-------+--------+
|kernel | value  |diff(%)| value |diff(%)| diff(%)|
+-------+--------+-------+-------+-------+--------+
|pelt_1 | 60.0   | 0.0%  | 60.0  |  0.0% |  0.0%  |
+-------+--------+-------+-------+-------+--------+
|pelt_4 | 60.0   | 0.0%  | 60.0  |  0.0% |  2.1%  |
+-------+--------+-------+-------+-------+--------+


To summarize, we need a smaller PELT halflife to reach higher avg. FPS
and min. FPS values for video gaming to achieve a smoother game-play
experience even when it comes with slightly higher power consumption.
Especially the improvement in min. FPS is important here to minimize
situations in which the game otherwise would stutter.
Since not all use cases profit from this behaviour (e.g. video
recording) the PELT halflife should be tunable at runtime.


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ