# \[Nav2\] Major run-time improvement on Smac Planners (10-30%)!

**URL:** <https://discourse.openrobotics.org/t/nav2-major-run-time-improvement-on-smac-planners-10-30/27396>\
**Category:** Navigation\
**Tags:** ros2\
**Created:** [September 20, 2022, 1:28am UTC](https://discourse.openrobotics.org/t/nav2-major-run-time-improvement-on-smac-planners-10-30/27396 "2022-09-20T01:28:37Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![smac](https://sea2.discourse-cdn.com/flex022/user_avatar/discourse.openrobotics.org/smac/32/6763_2.png) [@smac](https://discourse.openrobotics.org/u/smac)\
**Post date:** [September 20, 2022, 1:28am UTC](https://discourse.openrobotics.org/t/nav2-major-run-time-improvement-on-smac-planners-10-30/27396/1 "2022-09-20T01:28:37Z")

</div>

Hi all, your friendly neighborhood navigator here.

I just wanted to make an annoucement about a hot-hot-hot change that just dropped in Nav2. The **Smac Planners** were carefully designed and tested against a number of standard template library implementations of data structures before selecting those that we used for the graph, node, and data representations. However, from recent work by **[mangoschorle](https://github.com/mangoschorle)**, we’ve found that there are some other implementations of these STL containers that are far superior for our search-based planning needs.

[https://github.com/ros-planning/navigation2/pull/3201](https://github.com/ros-planning/navigation2/pull/3201)

Thus, I’m happy to announce that in Nav2’s `main` branch, all of the Smac Planners are now between **10-30% faster** on planning requests, making them now generally faster than the non-feasible counterparts in most every situation. The larger impacts on run-time can be seen for more complex planning requests where the data structure has to do additional re-hashing, but even on some minimal benchmarking experiments, I was able to see between 10-15% reduction in modest sized environments.

Also shout out to @jwallace for his great work on the [Planner Benchmarking](https://github.com/ros-planning/navigation2/tree/main/tools/planner_benchmarking) utilities also in Nav2 to help in doing objective comparisons between planners and versions.

Happy hashing,

Steve
