AtsushiSakai / AtsushiSakai/PythonRobotics
[Optimization] Speedup Cubic Spline Planner and Frenet Planner Execution
- 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
Assessment
This issue has not been assessed yet.