Skip to content

Commit

Permalink
task-scheduling
Browse files Browse the repository at this point in the history
Signed-off-by: jack.song <[email protected]>
  • Loading branch information
shulanbushangshu committed Dec 15, 2022
1 parent 3527d25 commit c222d70
Showing 1 changed file with 11 additions and 11 deletions.
22 changes: 11 additions & 11 deletions docs/contributing/coding-guidelines/ros-nodes/task-scheduling.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,46 +36,46 @@ For example:

The type of MutuallyExclusive ensure that callbacks of this group must not be executed in parallel.You can see more information about scheduling of ROS2 in theses links:

- <https://docs.ros.org/en/humble/Concepts/About-Executors.html>
- <https://docs.ros.org/en/humble/Concepts/About-Executors.html>
- <https://docs.ros.org/en/humble/How-To-Guides/Using-callback-groups.html>

## Analyse of data flow and running time

In autoware,there are many topics used by different nodes.You can analyse the data flow and running time of multiple nodes in the whole software. By the analyse,you can intuitively understand the nodes operation path and input/output flow.You can use CARET or TILDE of autoware to finish the analyse.

### CARET

By using caret,you can trace the application without changing codes of application.You can analyse the latency and the running time of nodes.
You can install TIDLE by following steps:
You can install TIDLE by following steps:

1. Clone caret and enter the directory.
1. Clone caret and enter the directory.

```bash
git clone https://github.com/tier4/caret.git ros2_caret_ws
cd ros2_caret_ws
```

2. Create the src directory and clone repositories into it.
2. Create the src directory and clone repositories into it.

```bash
mkdir src
vcs import src < caret.repos --recursive
```

3. Run setup_caret.sh.
3. Run setup_caret.sh.

```bash
./setup_caret.sh
```

4. Build the workspace.
4. Build the workspace.

```bash
source /opt/ros/galactic/setup.bash(or source /opt/ros/humble/setup.bash)
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
```

5. Check whether CARET (ros2-tracing) is enabled.
5. Check whether CARET (ros2-tracing) is enabled.

```bash
source ~/ros2_caret_ws/install/local_setup.bash
Expand All @@ -91,21 +91,21 @@ You can get more information in the link:
TILDE is a framework for latency measurement and deadline detection across multiple nodes. TILDE can track the topic output from the node and identify the original input topic. Latency measurement and deadline detection are possible to trace from input to output.By using the TILDE,you need change the codes of application and add the apis of TILDE in the application.
You can install TIDLE by following steps:

1. Clone TILDE and enter the directory.
1. Clone TILDE and enter the directory.

```bash
git clone https://github.com/tier4/TILDE.git ros2_TILDE_ws
cd ros2_TILDE_ws
```

2. Create the src directory and clone repositories into it.
2. Create the src directory and clone repositories into it.

```bash
mkdir src
vcs import src < build_depends.repos
```

3. Build the workspace.
3. Build the workspace.

```bash
source /opt/ros/galactic/setup.bash(or source /opt/ros/humble/setup.bash)
Expand Down

0 comments on commit c222d70

Please sign in to comment.