flowchart TD
subgraph GPU
slot-0[HW Run Queue]
slot-1[HW Run Queue]
slot-2[HW Run Queue]
end
sched0[drm_gpu_scheduler]
sched1[drm_gpu_scheduler]
sched2[drm_gpu_scheduler]
runq00[drm_sched_rq<br>KERNEL]
runq01[drm_sched_rq<br>HIGH]
runq02[drm_sched_rq<br>NORMAL]
runq03[drm_sched_rq<br>LOW]
runq10[drm_sched_rq<br>KERNEL]
runq11[drm_sched_rq<br>HIGH]
runq20[drm_sched_rq<br>KERNEL]
runq21[drm_sched_rq<br>HIGH]
runq22[drm_sched_rq<br>NORMAL]
entity00@{shape: docs, label: "drm_sched_entity<br>job chain"}
entity01@{shape: docs, label: "drm_sched_entity<br>job chain"}
entity02@{shape: docs, label: "drm_sched_entity<br>job chain"}
entity03@{shape: docs, label: "drm_sched_entity<br>job chain"}
entity10@{shape: docs, label: "drm_sched_entity<br>job chain"}
entity11@{shape: docs, label: "drm_sched_entity<br>job chain"}
entity12@{shape: docs, label: "drm_sched_entity<br>job chain"}
entity20@{shape: docs, label: "drm_sched_entity<br>job chain"}
entity21@{shape: docs, label: "drm_sched_entity<br>job chain"}
entity22@{shape: docs, label: "drm_sched_entity<br>job chain"}
entity00 --> entity01 --> entity02 --> entity03 --> runq00
entity10 --> entity11 --> entity12 --> runq10
entity20 --> entity21 --> entity22 --> runq02
runq00 --> sched0
runq01 --> sched0
runq02 --> sched0
runq03 --> sched0
runq10 --> sched1
runq11 --> sched1
runq20 --> sched2
runq21 --> sched2
runq22 --> sched2
sched0 --> slot-0
sched1 --> slot-1
sched2 --> slot-2