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

Commit cf81acc2 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Trace session hints and target/actual work durations" into main

parents 8443b19b 3bfdad45
Loading
Loading
Loading
Loading
+8 −7
Original line number Diff line number Diff line
@@ -200,7 +200,7 @@ void PowerAdvisor::sendHintSessionHint(hal::SessionHint hint) {
        return;
    }
    SFTRACE_CALL();
    if (sTraceHintSessionData) SFTRACE_INT("Session hint", static_cast<int>(hint));
    SFTRACE_INT("Session hint", static_cast<int>(hint));
    {
        std::scoped_lock lock(mHintSessionMutex);
        if (!ensurePowerHintSessionRunning()) {
@@ -288,7 +288,7 @@ void PowerAdvisor::updateTargetWorkDuration(Duration targetDuration) {
    SFTRACE_CALL();
    {
        mTargetDuration = targetDuration;
        if (sTraceHintSessionData) SFTRACE_INT64("Time target", targetDuration.ns());
        SFTRACE_INT64("Target Work Duration", targetDuration.ns());
        if (targetDuration == mLastTargetDurationSent) return;
        std::scoped_lock lock(mHintSessionMutex);
        if (!ensurePowerHintSessionRunning()) {
@@ -321,14 +321,15 @@ void PowerAdvisor::reportActualWorkDuration() {
        return;
    }
    actualDuration->durationNanos += sTargetSafetyMargin.ns();
    if (sTraceHintSessionData) {
        SFTRACE_INT64("Measured duration", actualDuration->durationNanos);
        SFTRACE_INT64("Target error term", actualDuration->durationNanos - mTargetDuration.ns());
        SFTRACE_INT64("Reported duration", actualDuration->durationNanos);
    SFTRACE_INT64("Reported Work Duration", actualDuration->durationNanos);
    if (supportsGpuReporting()) {
        SFTRACE_INT64("Reported cpu duration", actualDuration->cpuDurationNanos);
        SFTRACE_INT64("Reported gpu duration", actualDuration->gpuDurationNanos);
    }

    if (sTraceHintSessionData) {
        SFTRACE_INT64("Measured duration", actualDuration->durationNanos);
        SFTRACE_INT64("Target error term", actualDuration->durationNanos - mTargetDuration.ns());
        SFTRACE_INT64("Reported target", mLastTargetDurationSent.ns());
        SFTRACE_INT64("Reported target error term",
                      actualDuration->durationNanos - mLastTargetDurationSent.ns());