# hint\_low\_latency

Source: [https://docs.qualcomm.com/doc/80-PK177-134/topic/qape_hint_low_latency.html](https://docs.qualcomm.com/doc/80-PK177-134/topic/qape_hint_low_latency.html)

Informs the system about a short-running critical application thread that must be
    scheduled immediately on a CPU. The system marks the thread specified by the application as a
    low latency thread. This hint does not impact thread placement on power vs. performance cores.
    Also, if any thread is hinted at as low latency thread, the kernel scheduler will try to
    immediately allocate CPU and hence avoid scheduling delay. This hint is beneficial for the
    threads for any critical task (low-latency requirements) that needs to finish at the earliest on
    a CPU, like for Async I/O thread, which may need immediate attention as soon as their waiting
    time is done. The expectation is that the thread CPU workload is small in nature; but needs to
    run at the earliest as soon as it is ready to run.

hint_low_latency() Copy to clipboard

Caution:

Suppose many application threads are identified as low latency. In that
        case, the overall hinting benefit reduces, as the system scheduler does not differentiate any
        further among these groups of low-latency threads. 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.

## Parameters

| Parameters | API type | Data type | Description |
| --- | --- | --- | --- |
| tid | Java | long | TID if the thread that needs to be set for low<br>              latency |
| tid | Native | uint32 | TID if the thread that needs to be set for low<br>              latency |
| ret\_val | Native | int8\_t& | On success this is the actual return value from the API.<br><br><br>                <br><ul class="ul"><br>                    <li class="li">0: Success</li><br><br>                    <li class="li">-1: Fail to apply Hint</li><br><br>                    <li class="li">-2: Failed to establish session, check that <a href="https://docs.qualcomm.com/doc/80-PK177-134/topic/qape_set_pkg.html">set_pkg</a> was called before this API</li><br><br>                  </ul> |
|  |  |  |  |

## Returns

| Return | API type | Data type | Description |
| --- | --- | --- | --- |
| response | Java | int | <ul class="ul"><br>                  <li class="li">0: Success</li><br><br>                  <li class="li">-1: Fail to apply Hint</li><br><br>                  <li class="li">-2: Failed to establish session, check that <a href="https://docs.qualcomm.com/doc/80-PK177-134/topic/qape_set_pkg.html">set_pkg</a> was called before this API</li><br><br>                </ul> |
| response | Native | qesdk\_transaction\_status | See [QESDK transaction status for Native APIs](https://docs.qualcomm.com/doc/80-PK177-134/topic/native_qesdk_class.html) for usage details. Use qesdk\_transaction\_status to confirm API call invocation. If successful, use the `ret` value for the actual API return value object. |
|  |  |  |  |

**Parent Topic:** [QAPE subsystem APIs](https://docs.qualcomm.com/doc/80-PK177-134/topic/qape_apis.html)

Last Published: Nov 14, 2024

[Previous Topic
get\_gpu\_headroom](https://docs.qualcomm.com/bundle/publicresource/80-PK177-134/topics/qape_get_gpu_headroom.md) [Next Topic
hint\_high\_cpuutil](https://docs.qualcomm.com/bundle/publicresource/80-PK177-134/topics/qape_hint_high_cpu_util.md)