Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add documentation for task scheduling #293

Open
3 tasks done
xmfcx opened this issue Jan 6, 2023 · 3 comments
Open
3 tasks done

Add documentation for task scheduling #293

xmfcx opened this issue Jan 6, 2023 · 3 comments
Assignees
Labels
status:stale Inactive or outdated issues. (auto-assigned)

Comments

@xmfcx
Copy link
Contributor

xmfcx commented Jan 6, 2023

Checklist

  • I've read the contribution guidelines.
  • I've searched other issues and no duplicate issues were found.
  • I've agreed with the maintainers that I can plan this task.

Description

Following these comments from @sykwer in the #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.

@xmfcx
Copy link
Contributor Author

xmfcx commented Jan 6, 2023

#282 can be used as a guide when this issue is being worked on.

@kenji-miyake
Copy link
Contributor

@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.

@stale
Copy link

stale bot commented Mar 8, 2023

This pull request has been automatically marked as stale because it has not had recent activity.

@stale stale bot added the status:stale Inactive or outdated issues. (auto-assigned) label Mar 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status:stale Inactive or outdated issues. (auto-assigned)
Projects
None yet
Development

No branches or pull requests

3 participants