Skip to content

Create a Priority Controlled Binding scheduler#423

Draft
therault wants to merge 1 commit into
ICLDisco:masterfrom
therault:scheduler-priority-controlled-binding
Draft

Create a Priority Controlled Binding scheduler#423
therault wants to merge 1 commit into
ICLDisco:masterfrom
therault:scheduler-priority-controlled-binding

Conversation

@therault

Copy link
Copy Markdown
Contributor

This PCB scheduler uses some bits (MCA defined) of the priority word to define which 'group' of threads can schedule a task with this priority.

There is additional documentation in sched_pcb.h for more details.

The PR also includes a test that prints where tasks are executed, to check if the policy works.

@therault therault requested a review from a team as a code owner August 17, 2022 20:31
@omor1

omor1 commented Aug 22, 2022

Copy link
Copy Markdown
Contributor

I feel like the problem with this approach is that priorities are (generally) an aspect of the algorithm that is to be used by the scheduler to make scheduling decisions, while the scheduling groups are essentially an aspect of the hardware. It's really hard then to create portable priorities, since the priorities might need to be aware of the hardware details. The current limitation that priorities are 32-bit is also problematic for stealing any of those bits for hardware scheduling groups; we already run into overflow problems with e.g. large potrf problems with small tiles.

@bosilca bosilca marked this pull request as draft September 23, 2022 15:31
@bosilca

bosilca commented Mar 31, 2023

Copy link
Copy Markdown
Contributor

As discussed on 03/31/23 we need to add a property to the PTG tasks to indicate the core/device they want to be executed on.

…CA defined) of the priority word to define which 'group' of threads can schedule a task with this priority. See documentation in sched_pcb.h for more details
@therault therault force-pushed the scheduler-priority-controlled-binding branch from d52064f to b6cd547 Compare May 8, 2023 22:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants