Implementation of core scheduling#125
Implementation of core scheduling#125alessiomana wants to merge 3 commits intoscheduler-tools:masterfrom
Conversation
|
Hi @alessiomana, Had a very quick pass at your work, thanks for implementing this feature! However, I have the feeling that a better/cleaner organization and presentation of the changes will make the review process better. Could you please clean up the series by, for example, removing intermediate debug/fix commits and consolidate the changes in less commits? Ideally every commit should make sense in itself (i.e. it introduces a basic building block or a feature or maybe documentation and/or examples). Thanks! |
|
+1 for squashing the series in a smaller number of patches. This will help to review and comment Few comments:
Besides the comments above, I have successfully tested your branch on my dev board |
b28f083 to
c5d1218
Compare
We are working on it. You may see intermediate commits, please ignore them until we will be done.
Yes, will do.
To address these comments, we are considering two different implementations:
We prefer the first option as it allows simpler implementation of the per-phase scheduling. Still we welcome very much any suggestion. |
c5d1218 to
4799c4b
Compare
rt-app_types: added core_scheduling_families_count and core_scheduling_family options rt-app_parse_config: added core_scheduling_families_count and core_scheduling_family parser from config file The basic idea behind core scheduling is that two thread with different core scheduling cookie cannot run simultaneously on different cpu that are physically on the same core. So when two or more threads have the same core_scheduling_family it will result having the same cookie, otherwise they will have different core scheduling cookie. It has been implemented for the moment by maintaining a list of the first thread pid for every family. When a new thread with same family will be launched, it will copy the cookie from the saved pid in the list. We intend to change this implementation in future commits to allow core_scheduling_family changes in phases.
4799c4b to
26c466f
Compare
Now if count is not defined it will be set automatically
bed2eca to
8c9d231
Compare
Dear maintainers,
please find attached my tentative implementation of core scheduling in rt-app.
This project is part of my master thesis which I developed under the supervision of prof. Enrico Bini, at University of Turin.
We previously contacted Juri Lelli who recommended us to submit this pull request.
We look forward for your comments and we are happy to modify our code as needed.
Best regards,
Alessio Mana
Enrico Bini