diff options
| author | Felix Kuehling <[email protected]> | 2022-03-01 20:40:45 -0500 |
|---|---|---|
| committer | Alex Deucher <[email protected]> | 2022-04-07 16:34:24 -0400 |
| commit | 5273e82c5f47fff94058ff8ee002650476e24719 (patch) | |
| tree | b68b3966c57db97d7fefcb88089fca891b3f307d /tools/perf/scripts/python/sctop.py | |
| parent | 8d2aad983de2a332bf8c22798ab6799f06864fed (diff) | |
drm/amdkfd: Improve concurrency of event handling
Use rcu_read_lock to read p->event_idr concurrently with other readers
and writers. Use p->event_mutex only for creating and destroying events
and in kfd_wait_on_events.
Protect the contents of the kfd_event structure with a per-event
spinlock that can be taken inside the rcu_read_lock critical section.
This eliminates contention of p->event_mutex in set_event, which tends
to be on the critical path for dispatch latency even when busy waiting
is used. It also eliminates lock contention in event interrupt handlers.
Since the p->event_mutex is now used much less, the impact of requiring
it in kfd_wait_on_events should also be much smaller.
This should improve event handling latency for processes using multiple
GPUs concurrently.
v2: Reschedule the worker periodically to avoid soft lockup warnings
Signed-off-by: Felix Kuehling <[email protected]>
Reviewed-by: Sean Keely <[email protected]> # v1
Tested-by: Sanjay Tripathi <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/sctop.py')
0 files changed, 0 insertions, 0 deletions