descartes_light
descartes_light copied to clipboard
Running out of memory!
This can quickly become an issue when you have more than a few free degrees of freedom. A quick way to address this, if you cannot limit the search space of the free degree of freedom is increase your swap space. This can easily be done now on Ubuntu 18.04 and newer shown here.
We should consider using Eigen's half float definition per your comment here
Some interesting heap profiling results from gperftools
heap profiler using the benchmark executable
10 DOF, 1000 waypoints, 100 samples/waypoint
Ladder Graph (double) (168 MB)
Ladder Graph (float) (89 MB)
10 DoF, 2000 waypoints, 100 samples/waypoint
Ladder Graph (double) (337 MB)
Ladder Graph (float) (177 MB)
10 DoF, 100 waypoints, 1000 samples/waypoint
Ladder Graph (float) (767 MB)
BGL Dijkstra Static Vertex Dynamic Edge (float) (8069 MB)
BGL Dijkstra Static Vertex Static Edge (float) (8368 MB)
BGL is consuming a significant amount of memory compared to the Ladder Graph implementation.
BGL is consuming a significant amount of memory compared to the Ladder Graph implementation.
Yeah; pretty surprising. That implementation is also only supposed to allocate edges when the Dijkstra search chooses to open a node, so theoretically it could allocate fewer edges than the ladder graph
BGL is consuming a significant amount of memory compared to the Ladder Graph implementation.
Yeah; pretty surprising. That implementation is also only supposed to allocate edges when the Dijkstra search chooses to open a node, so theoretically it could allocate fewer edges than the ladder graph
I just ran a profile of the BGL static vertex static edge (SVSE) solver which adds all vertices and edges, and it only uses ~300MB more (~3.5%) memory than the supposedly more efficient SVDE solver