Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit af5fa6bf authored by Xiang Wang's avatar Xiang Wang Committed by Android (Google) Code Review
Browse files

Merge "Disable normalization for power hint by default" into tm-dev

parents 5364e036 76236e1e
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -542,7 +542,7 @@ private:
    static constexpr double kAllowedTargetDeviationPercent = 0.05;
    static constexpr double kAllowedTargetDeviationPercent = 0.05;
    // Target used for init and normalization, the actual value does not really matter
    // Target used for init and normalization, the actual value does not really matter
    static constexpr const std::chrono::nanoseconds kDefaultTarget = 50ms;
    static constexpr const std::chrono::nanoseconds kDefaultTarget = 50ms;
    // amount of time after the last message was sent before the session goes stale
    // Amount of time after the last message was sent before the session goes stale
    // actually 100ms but we use 80 here to ideally avoid going stale
    // actually 100ms but we use 80 here to ideally avoid going stale
    static constexpr const std::chrono::nanoseconds kStaleTimeout = 80ms;
    static constexpr const std::chrono::nanoseconds kStaleTimeout = 80ms;
};
};
@@ -551,7 +551,7 @@ const bool AidlPowerHalWrapper::sTraceHintSessionData =
        base::GetBoolProperty(std::string("debug.sf.trace_hint_sessions"), false);
        base::GetBoolProperty(std::string("debug.sf.trace_hint_sessions"), false);


const bool AidlPowerHalWrapper::sNormalizeTarget =
const bool AidlPowerHalWrapper::sNormalizeTarget =
        base::GetBoolProperty(std::string("debug.sf.normalize_hint_session_durations"), true);
        base::GetBoolProperty(std::string("debug.sf.normalize_hint_session_durations"), false);


PowerAdvisor::HalWrapper* PowerAdvisor::getPowerHal() {
PowerAdvisor::HalWrapper* PowerAdvisor::getPowerHal() {
    static std::unique_ptr<HalWrapper> sHalWrapper = nullptr;
    static std::unique_ptr<HalWrapper> sHalWrapper = nullptr;
+11 −11
Original line number Original line Diff line number Diff line
@@ -721,15 +721,15 @@ void SurfaceFlinger::bootFinished() {
        }
        }


        readPersistentProperties();
        readPersistentProperties();
        mPowerAdvisor.onBootFinished();
        mPowerAdvisor.enablePowerHint(mFlagManager->use_adpf_cpu_hint());
        if (mPowerAdvisor.usePowerHintSession()) {
            std::optional<pid_t> renderEngineTid = getRenderEngine().getRenderEngineTid();
            std::optional<pid_t> renderEngineTid = getRenderEngine().getRenderEngineTid();
            std::vector<int32_t> tidList;
            std::vector<int32_t> tidList;
            tidList.emplace_back(gettid());
            tidList.emplace_back(gettid());
            if (renderEngineTid.has_value()) {
            if (renderEngineTid.has_value()) {
                tidList.emplace_back(*renderEngineTid);
                tidList.emplace_back(*renderEngineTid);
            }
            }
        mPowerAdvisor.onBootFinished();
        mPowerAdvisor.enablePowerHint(mFlagManager->use_adpf_cpu_hint());
        if (mPowerAdvisor.usePowerHintSession()) {
            mPowerAdvisor.startPowerHintSession(tidList);
            mPowerAdvisor.startPowerHintSession(tidList);
        }
        }


@@ -3729,8 +3729,8 @@ int SurfaceFlinger::flushPendingTransactionQueues(
                break;
                break;
            }
            }
            transaction.traverseStatesWithBuffers([&](const layer_state_t& state) {
            transaction.traverseStatesWithBuffers([&](const layer_state_t& state) {
                const bool frameNumberChanged = 
                const bool frameNumberChanged = state.bufferData->flags.test(
                    state.bufferData->flags.test(BufferData::BufferDataChange::frameNumberChanged);
                        BufferData::BufferDataChange::frameNumberChanged);
                if (frameNumberChanged) {
                if (frameNumberChanged) {
                    bufferLayersReadyToPresent[state.surface] = state.bufferData->frameNumber;
                    bufferLayersReadyToPresent[state.surface] = state.bufferData->frameNumber;
                } else {
                } else {
@@ -3810,8 +3810,8 @@ bool SurfaceFlinger::flushTransactionQueues(int64_t vsyncId) {
                    mPendingTransactionQueues[transaction.applyToken].push(std::move(transaction));
                    mPendingTransactionQueues[transaction.applyToken].push(std::move(transaction));
                } else {
                } else {
                    transaction.traverseStatesWithBuffers([&](const layer_state_t& state) {
                    transaction.traverseStatesWithBuffers([&](const layer_state_t& state) {
                        const bool frameNumberChanged = 
                        const bool frameNumberChanged = state.bufferData->flags.test(
                            state.bufferData->flags.test(BufferData::BufferDataChange::frameNumberChanged);
                                BufferData::BufferDataChange::frameNumberChanged);
                        if (frameNumberChanged) {
                        if (frameNumberChanged) {
                            bufferLayersReadyToPresent[state.surface] = state.bufferData->frameNumber;
                            bufferLayersReadyToPresent[state.surface] = state.bufferData->frameNumber;
                        } else {
                        } else {