autoware-documentation
autoware-documentation copied to clipboard
Add documentation for task scheduling
Checklist
- [X] I've read the contribution guidelines.
- [X] I've searched other issues and no duplicate issues were found.
- [X] I've agreed with the maintainers that I can plan this task.
Description
Following these comments from @sykwer in the https://github.com/autowarefoundation/autoware-documentation/pull/282
We TIER Ⅳ members are now working on scheduling issues on Linux platforms. Our opinion is that the task scheduling document should be about how to configure the settings of a kernel scheduler to run Autoware in a predictable way. Based on workload analysis and detailed analysis of the implementation of the Linux kernel, we plan to publish a specialized functionality for the task scheduling of Autoware on Linux and the documentation about it.
Additionally, we need to deal with double scheduling problems (ROS2 executer and kernel scheduler) and scheduler settings for specialized operating systems. We are also struggling with these problems. User-defined and centralized task scheduler will be developed specialized for Autoware.
As a result, we’d like to keep this document blank until the functionality as explained above become fixed.
And this comment from @takam5f2
To my understanding, Autoware is not implemented without considering task scheduling so far. Autoware relies on task scheduling which is managed by ROS 2 and Linux. Task scheduling is one of the issue to be tackled in the future.
It is better, I think, that this section honestly tells that task scheduling is not designed and Autoware runs on a task scheduling by combination of ROS 2 and Linux kernel. "Introducing task optimized task scheduling mechanism and applying it to Autoware are one of our future work" is required statement here.
Purpose
Fill in the documentation for task scheduling.
Possible approaches
Fill in the documentation for task scheduling.
Definition of done
Fill in the documentation for task scheduling.
https://github.com/autowarefoundation/autoware-documentation/pull/282 can be used as a guide when this issue is being worked on.
@xmfcx Thank you for creating this issue! I think how we design callback functions should be documented in the page. For example as follows:
- When should we use multiple callback groups?
- What kind of callbacks are there?
- Just subscribing data and buffering it.
- Subscribing data and applying some preprocessing.
- Trigger the main process.
- etc.
This pull request has been automatically marked as stale because it has not had recent activity.