# hint\_low\_cpuutil
Source: [https://docs.qualcomm.com/doc/80-PK177-134/topic/qape_hint_low_cpu_util.html](https://docs.qualcomm.com/doc/80-PK177-134/topic/qape_hint_low_cpu_util.html)
Informs the system about a specific low
CPU utilization thread that does not require the high-performance core. For example, threads
doing background work, and not requiring high performance cores even if the load can go
sporadically high. It does not set the frequency of the core where the thread is scheduled
runs, but instead, the choice is left to the scheduler-DCVS directly or indirectly via the
boost\_cpu API.
hint_low_cpuutil()Copy to clipboard
Caution:
This API needs to be used carefully as any thread that is marked as low
util will not get to run on a big core. Any thread hints, such as high\_cpuutil, low\_cpuutil,
and thread\_pipeline, remains for the lifetime of the thread, unless it is explicitly released
by the app using release\_thread\_hints API or through the auto-release mechanism when the app
goes to the background or gets killed.
Note: hint\_low\_cpuutil / hint\_high\_cpuutil is different to thread affinity. With thread CPU affinity,
developers need to identify the cluster configuration and core where the thread can run. In the
case of hint\_high\_cpuutil, thread can run on any core on Gold/Prime whereas with CPU affinity,
when core is busy with other threads, the high util thread may wait in queue and affinity can be
counterproductive. Similar behavior is seen for hint\_low\_cpuutil.
## Parameters
| Parameters | API type | Data type | Description |
| --- | --- | --- | --- |
| tid | Java | long | TID if the thread that needs to be set for low CPU
utilization |
| tid | Native | uint32 | TID if the thread that needs to be set for low CPU
utilization |
| ret\_val | Native | int8\_t& | On success this is the actual return value from the API. |
| | | | |
## Returns
| Return | API type | Data type | Description |
| --- | --- | --- | --- |
| response | Java | int |