~/talk

Cache-friendly Design in Robot Path Planning with C++

links:none on file
slides:none on file

Implements Dijkstra/A style point-to-point planning in C++ and measures real cache behavior with cachegrind and perf/vtune, replacing std::map/multimap with unordered_map then packed std::vector-of-vectors and finally a single edge array exposed via subranges. Uses reserve and spatially sorts vertex IDs so adjacency accesses become contiguous. Reports instruction count roughly halved, L1 miss rate dropping by about 60%*, and wall‑clock search time cut substantially; code and benchmarks live on the provided GitHub.

AI-written summary · about

  1. 0:00Cache-friendly robot path planning
  2. 5:53Motivating problem
  3. 10:09Shortest path search algorithms
  4. 14:23Implementing D* in C++
  5. 21:23First implementation with std::map and std::multimap
  6. 28:07Measuring cache performance
  7. 32:42Cache-friendly design principles
  8. 35:11Problems with std::map and std::multimap
  9. 37:20Switching to unordered containers
  10. 41:53Adjacency lists with std::vector
  11. 44:41Memory layout with subranges
  12. 47:52Performance improvements
  13. 50:23Q&A: Subranges and locality
  14. 51:26Q&A: Boost Graph vs STL
  15. 52:08Q&A: Detecting cache misses
  16. 54:19Q&A: Multiple pathfinding agents
  17. 57:37Q&A: Early stopping in D*
  18. 59:01Q&A: Multithreading and cache
  19. 1:00:24Q&A: Dynamic graphs and memory
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.