summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorJorim Jaggi <jjaggi@google.com>2023-11-20 12:47:11 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2023-11-20 12:47:27 +0000
commit3dff8c2adfc8bd12bb034b6274d9b5f0d336288e (patch)
tree4391459f988a9dfd9b093a4f72b26329d02a0a32 /include
parent31fab3e1ef4554cf3f9a708b514c3d5f2bc2d502 (diff)
downloadnative-3dff8c2adfc8bd12bb034b6274d9b5f0d336288e.tar.gz
Revert "Add API support for GPU work duration report in ADPF."
Revert submission 24997733-adpf-gpu-plumbing Reason for revert: b/311102554 Reverted changes: /q/submissionid:24997733-adpf-gpu-plumbing Change-Id: Ifd3973cc97b7be525c5e936ab6764b727de1804d
Diffstat (limited to 'include')
-rw-r--r--include/android/performance_hint.h126
1 files changed, 12 insertions, 114 deletions
diff --git a/include/android/performance_hint.h b/include/android/performance_hint.h
index 9d2c79139f..ba8b02d597 100644
--- a/include/android/performance_hint.h
+++ b/include/android/performance_hint.h
@@ -60,27 +60,6 @@ __BEGIN_DECLS
struct APerformanceHintManager;
struct APerformanceHintSession;
-struct AWorkDuration;
-
-/**
- * {@link AWorkDuration} is an opaque type that represents the breakdown of the
- * actual workload duration in each component internally.
- *
- * A new {@link AWorkDuration} can be obtained using
- * {@link AWorkDuration_create()}, when the client finishes using
- * {@link AWorkDuration}, {@link AWorkDuration_release()} must be
- * called to destroy and free up the resources associated with
- * {@link AWorkDuration}.
- *
- * This file provides a set of functions to allow clients to set the measured
- * work duration of each component on {@link AWorkDuration}.
- *
- * - AWorkDuration_setWorkPeriodStartTimestampNanos()
- * - AWorkDuration_setActualTotalDurationNanos()
- * - AWorkDuration_setActualCpuDurationNanos()
- * - AWorkDuration_setActualGpuDurationNanos()
- */
-typedef struct AWorkDuration AWorkDuration;
/**
* An opaque type representing a handle to a performance hint manager.
@@ -123,7 +102,7 @@ typedef struct APerformanceHintSession APerformanceHintSession;
*
* @return APerformanceHintManager instance on success, nullptr on failure.
*/
-APerformanceHintManager* _Nullable APerformanceHint_getManager() __INTRODUCED_IN(__ANDROID_API_T__);
+APerformanceHintManager* APerformanceHint_getManager() __INTRODUCED_IN(__ANDROID_API_T__);
/**
* Creates a session for the given set of threads and sets their initial target work
@@ -137,9 +116,9 @@ APerformanceHintManager* _Nullable APerformanceHint_getManager() __INTRODUCED_IN
* This must be positive if using the work duration API, or 0 otherwise.
* @return APerformanceHintManager instance on success, nullptr on failure.
*/
-APerformanceHintSession* _Nullable APerformanceHint_createSession(
- APerformanceHintManager* _Nonnull manager,
- const int32_t* _Nonnull threadIds, size_t size,
+APerformanceHintSession* APerformanceHint_createSession(
+ APerformanceHintManager* manager,
+ const int32_t* threadIds, size_t size,
int64_t initialTargetWorkDurationNanos) __INTRODUCED_IN(__ANDROID_API_T__);
/**
@@ -149,7 +128,7 @@ APerformanceHintSession* _Nullable APerformanceHint_createSession(
* @return the preferred update rate supported by device software.
*/
int64_t APerformanceHint_getPreferredUpdateRateNanos(
- APerformanceHintManager* _Nonnull manager) __INTRODUCED_IN(__ANDROID_API_T__);
+ APerformanceHintManager* manager) __INTRODUCED_IN(__ANDROID_API_T__);
/**
* Updates this session's target duration for each cycle of work.
@@ -161,7 +140,7 @@ int64_t APerformanceHint_getPreferredUpdateRateNanos(
* EPIPE if communication with the system service has failed.
*/
int APerformanceHint_updateTargetWorkDuration(
- APerformanceHintSession* _Nonnull session,
+ APerformanceHintSession* session,
int64_t targetDurationNanos) __INTRODUCED_IN(__ANDROID_API_T__);
/**
@@ -178,7 +157,7 @@ int APerformanceHint_updateTargetWorkDuration(
* EPIPE if communication with the system service has failed.
*/
int APerformanceHint_reportActualWorkDuration(
- APerformanceHintSession* _Nonnull session,
+ APerformanceHintSession* session,
int64_t actualDurationNanos) __INTRODUCED_IN(__ANDROID_API_T__);
/**
@@ -188,7 +167,7 @@ int APerformanceHint_reportActualWorkDuration(
* @param session The performance hint session instance to release.
*/
void APerformanceHint_closeSession(
- APerformanceHintSession* _Nonnull session) __INTRODUCED_IN(__ANDROID_API_T__);
+ APerformanceHintSession* session) __INTRODUCED_IN(__ANDROID_API_T__);
/**
* Set a list of threads to the performance hint session. This operation will replace
@@ -205,8 +184,8 @@ void APerformanceHint_closeSession(
* EPERM if any thread id doesn't belong to the application.
*/
int APerformanceHint_setThreads(
- APerformanceHintSession* _Nonnull session,
- const pid_t* _Nonnull threadIds,
+ APerformanceHintSession* session,
+ const pid_t* threadIds,
size_t size) __INTRODUCED_IN(__ANDROID_API_U__);
/**
@@ -219,92 +198,11 @@ int APerformanceHint_setThreads(
* EPIPE if communication with the system service has failed.
*/
int APerformanceHint_setPreferPowerEfficiency(
- APerformanceHintSession* _Nonnull session,
+ APerformanceHintSession* session,
bool enabled) __INTRODUCED_IN(__ANDROID_API_V__);
-/**
- * Reports the durations for the last cycle of work.
- *
- * The system will attempt to adjust the scheduling and performance of the
- * threads within the thread group to bring the actual duration close to the target duration.
- *
- * @param session The {@link APerformanceHintSession} instance to update.
- * @param workDuration The {@link AWorkDuration} structure of times the thread group took to
- * complete its last task in nanoseconds breaking down into different components.
- *
- * The work period start timestamp, actual total duration and actual CPU duration must be
- * positive.
- *
- * The actual GPU duration must be non-negative. If the actual GPU duration is 0, it means
- * the actual GPU duration is not measured.
- *
- * @return 0 on success.
- * EINVAL if session is nullptr or any duration is an invalid number.
- * EPIPE if communication with the system service has failed.
- */
-int APerformanceHint_reportActualWorkDuration2(
- APerformanceHintSession* _Nonnull session,
- AWorkDuration* _Nonnull workDuration) __INTRODUCED_IN(__ANDROID_API_V__);
-
-/**
- * Creates a new AWorkDuration. When the client finishes using {@link AWorkDuration}, it should
- * call {@link AWorkDuration_release()} to destroy {@link AWorkDuration} and release all resources
- * associated with it.
- *
- * @return AWorkDuration on success and nullptr otherwise.
- */
-AWorkDuration* _Nonnull AWorkDuration_create() __INTRODUCED_IN(__ANDROID_API_V__);
-
-/**
- * Destroys {@link AWorkDuration} and free all resources associated to it.
- *
- * @param aWorkDuration The {@link AWorkDuration} created by calling {@link AWorkDuration_create()}
- */
-void AWorkDuration_release(AWorkDuration* _Nonnull WorkDuration) __INTRODUCED_IN(__ANDROID_API_V__);
-
-/**
- * Sets the work period start timestamp in nanoseconds.
- *
- * @param aWorkDuration The {@link AWorkDuration} created by calling {@link AWorkDuration_create()}
- * @param workPeriodStartTimestampNanos The work period start timestamp in nanoseconds based on
- * CLOCK_MONOTONIC about when the work starts, the timestamp must be positive.
- */
-void AWorkDuration_setWorkPeriodStartTimestampNanos(AWorkDuration* _Nonnull aWorkDuration,
- int64_t workPeriodStartTimestampNanos) __INTRODUCED_IN(__ANDROID_API_V__);
-
-/**
- * Sets the actual total work duration in nanoseconds.
- *
- * @param aWorkDuration The {@link AWorkDuration} created by calling {@link AWorkDuration_create()}
- * @param actualTotalDurationNanos The actual total work duration in nanoseconds, the number must be
- * positive.
- */
-void AWorkDuration_setActualTotalDurationNanos(AWorkDuration* _Nonnull aWorkDuration,
- int64_t actualTotalDurationNanos) __INTRODUCED_IN(__ANDROID_API_V__);
-
-/**
- * Sets the actual CPU work duration in nanoseconds.
- *
- * @param aWorkDuration The {@link AWorkDuration} created by calling {@link AWorkDuration_create()}
- * @param actualCpuDurationNanos The actual CPU work duration in nanoseconds, the number must be
- * positive.
- */
-void AWorkDuration_setActualCpuDurationNanos(AWorkDuration* _Nonnull aWorkDuration,
- int64_t actualCpuDurationNanos) __INTRODUCED_IN(__ANDROID_API_V__);
-
-/**
- * Sets the actual GPU work duration in nanoseconds.
- *
- * @param aWorkDuration The {@link AWorkDuration} created by calling {@link AWorkDuration_create()}.
- * @param actualGpuDurationNanos The actual GPU work duration in nanoseconds, the number must be
- * non-negative. If the actual GPU duration is 0, it means the actual GPU duration is
- * measured.
- */
-void AWorkDuration_setActualGpuDurationNanos(AWorkDuration* _Nonnull aWorkDuration,
- int64_t actualGpuDurationNanos) __INTRODUCED_IN(__ANDROID_API_V__);
-
__END_DECLS
#endif // ANDROID_NATIVE_PERFORMANCE_HINT_H
-/** @} */
+/** @} */ \ No newline at end of file