• Vincent Guittot's avatar
    arm64: hikey960: update idle-states · a5956def
    Vincent Guittot authored
    Update entry/exit latency and residency time of hikey960 to use more
    realistic figures based on unitary tests done on the platform.
    
    The complete results (in us) :
                      big cluster
                      cluster  CPU
    max entry latency     800  400
    max exit latency     2900  550
    residency  903Mhz    5000 1500
    residency 2363Mhz       0 1500
    
                      little cluster
                      cluster  CPU
    max entry latency     500  400
    max exit latency     1600  650
    residency  533Mhz    8000 4500
    residency 1844Mhz       0 1500
    
    We can see that the residency time depends of the running OPP which is not
    handled for now. Then we also have to take into account the constraint of
    a residency time shorter than the tick to get full advantage of idle loop
    reordering(tick is stopped if idle duration is higher than tick period).
    Finally the selected residency value are :
                     big cluster
                      cluster  CPU
    residency            3700 1500
    
                      little cluster
                      cluster  CPU
    residency            3500 1500
    
    A simple test with a task waking up every 11.111ms shows improvement:
    - 5% a lowest OPP
    - 22% at highest OPP
    
    The period has been chosen:
    - to be shorter than old cluster residency time and longer than new
    residency time of cluster off C-state
    - to prevent any sync with tick (4ms) when running tests that can add
    some variances between tests
    Signed-off-by: default avatarVincent Guittot <vincent.guittot@linaro.org>
    Acked-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
    Reviewed-by: default avatarLeo Yan <leo.yan@linaro.org>
    Signed-off-by: default avatarWei Xu <xuwei5@hisilicon.com>
    a5956def
hi3660.dtsi 28.8 KB