AtsushiSakai / AtsushiSakai/PythonRobotics

[Optimization] Speedup Cubic Spline Planner and Frenet Planner Execution

Open
#1,337 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
30.5k
Forks
7.4k
Avg merge
1d 9h
Merged PRs (30d)
3

Description

By introducing concurrent data-level parallelism in `calc_frenet_paths` and `calc_global_paths` functions, and by using vectorized instructions in `calc`, `calcd`, and `__search_index`, a major speedup is obtained. In my application, execution is up to 5 times faster.

Here are the changes: [cubic_spline_planner.py](https://github.com/mc-cat-tty/paav-assignments/blob/main/6-planning/cubic_spline_planner.py), [frenet_optimal_trajectory.py](https://github.com/mc-cat-tty/paav-assignments/blob/main/6-planning/frenet_optimal_trajectory.py).

[Here](https://github.com/mc-cat-tty/paav-assignments/blob/main/6-planning/results/(3)%20Report%20Planning.pdf) (just section "Preliminary Work: Parallelization") a detailed explanation of the changes and their impact on the execution time.

If @AtsushiSakai is interested in the changes, I am available to integrate them in this repository and perform some further testing.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.