There is a HWS, or hardware scheduling mode mentioned for managing compute in the AMD HSA Linux kernel driver. AMD might indicate whether that is coincidental at some point.
Same thing. HWS allows some ACEs to be "more equal than others" as Dave said.
The code operates in one of three modes, selectable via the sched_policy module
parameter :
- sched_policy=0 uses a hardware scheduler running in the MEC block within CP,
and allows oversubscription (more queues than HW slots)
- sched_policy=1 also uses HW scheduling but does not allow oversubscription, so
create_queue requests fail when we run out of HW slots
- sched_policy=2 does not use HW scheduling, so the driver manually assigns
queues to HW slots by programming registers
The "no HW scheduling" option is for debug & new hardware bringup only, so has
less test coverage than the other options. Default in the current code is "HW
scheduling without oversubscription" since that is where we have the most test
coverage but we expect to change the default to "HW scheduling with
oversubscription" after further testing. This effectively removes the HW limit
on the number of work queues available to applications.
http://lists.freedesktop.org/archives/dri-devel/2014-July/064011.html