Re: [OSRM-talk] Memory Leak?
We're currently re-writing the API to make user's life easier :) I would love if you could test the "rewrite/new-api" branch and the adapted example code > https://github.com/Project-OSRM/osrm-backend/blob/rewrite/new-api/example/example.cpp and report back if you can reproduce memory issues with this. (Disclaimer: the route service in this branch should work without problems, but it's still all in flux at this point in time) On Mon, Feb 29, 2016 at 7:10 AM, Patrick Niklaus < patrick.nikl...@student.kit.edu> wrote: > Hey James, > which version of OSRM are you running on? > > I would move the json_result object to the scope of the inner loop. It > is expected to empty when the function is called - might be there is a > vector filling up in there. > > Cheers, > Patrick > > On Sun, Feb 28, 2016 at 9:44 PM, James Grantwrote: > > Hi there. > > > > I've currently implemented some code based upon "simpleclient.cpp" which > is > > very basic. However, when running through a loop to generate a number of > > routes, the memory decreases with each pass resulting in swap file > > eventually being brought into the equation. Once that happens, everything > > slows down! > > > > The basic bones of my code is shown below: > > > > // Set up the parameters required. > > RouteParameters route_parameters; > > route_parameters.zoom_level = 18; // no > > generalization > > route_parameters.print_instructions = false; // turn by > turn > > instructions > > route_parameters.alternate_route = false;// get an > > alternate route, too > > route_parameters.geometry = false; // retrieve > > geometry of route > > route_parameters.compression = false;// polyline > > encoding > > route_parameters.check_sum = -1;// see wiki > > route_parameters.service = "viaroute"; // that's > > routing > > route_parameters.output_format = "json"; > > route_parameters.jsonp_parameter = ""; // set for jsonp > > wrapping > > > > // Start the outer loop. > > for(int oLoop = 0; oLoop < 1; oLoop++) > > { > > // Start the inner loop. > > for(int iLoop = 0; iLoop < 1; iLoop++) > > { > > // Clear down the route parameters. > > route_parameters.coordinates.clear(); > > > > // Start_coordinate > > > > route_parameters.coordinates.emplace_back(latlonPC[oLoop][0] * > > COORDINATE_PRECISION, latlonPC[oLoop][1] * COORDINATE_PRECISION); > > > > // Target_coordinate > > > > route_parameters.coordinates.emplace_back(latlonPC[iLoop][0] * > > COORDINATE_PRECISION, latlonPC[iLoop][1] * COORDINATE_PRECISION); > > > > // Run the required query. > > > routing_machine.RunQuery(route_parameters, > > json_result); > > } > > > > } > > > > Not a lot to it, therefore I'm wondering if the memory leak is in the > > RunQuery function and if so, how can I minimise the issue. > > > > Kind Regards > > James > > > > ___ > > OSRM-talk mailing list > > OSRM-talk@openstreetmap.org > > https://lists.openstreetmap.org/listinfo/osrm-talk > > > > ___ > OSRM-talk mailing list > OSRM-talk@openstreetmap.org > https://lists.openstreetmap.org/listinfo/osrm-talk > ___ OSRM-talk mailing list OSRM-talk@openstreetmap.org https://lists.openstreetmap.org/listinfo/osrm-talk
Re: [OSRM-talk] Feature broken down
Hey Jack, we no longer support GPX. I would suggest you try to generate a GeoJSON from the response geometry with polyline.decode [1] and togpx [2]. Best of luck, Patrick [1] https://github.com/mapbox/polyline [2] https://github.com/tyrasd/togpx On Sun, Feb 28, 2016 at 10:45 PM, Jack Rabbitwrote: > A few months ago, I was using the feature to create a route between two > latitudes/longitudes and exporting them in a GPX format. That way I could > plan a route and download it to my GPS before doing a ride. This no longer > works, it just creates an empty GPX file, without any track: > > > http://router.project-osrm.org/viaroute?loc=44.129,-79.3206=43.99257,-79.04079=gpx > > > Is this a bug or it is because this feature is no longer supported? > > > Jack > > > ___ > OSRM-talk mailing list > OSRM-talk@openstreetmap.org > https://lists.openstreetmap.org/listinfo/osrm-talk > ___ OSRM-talk mailing list OSRM-talk@openstreetmap.org https://lists.openstreetmap.org/listinfo/osrm-talk
[OSRM-talk] Feature broken down
A few months ago, I was using the feature to create a route between two latitudes/longitudes and exporting them in a GPX format. That way I could plan a route and download it to my GPS before doing a ride. This no longer works, it just creates an empty GPX file, without any track: http://router.project-osrm.org/viaroute?loc=44.129,-79.3206=43.99257,-79.04079=gpx Is this a bug or it is because this feature is no longer supported? Jack ___ OSRM-talk mailing list OSRM-talk@openstreetmap.org https://lists.openstreetmap.org/listinfo/osrm-talk
[OSRM-talk] Memory Leak?
Hi there. I've currently implemented some code based upon "simpleclient.cpp" which is very basic. However, when running through a loop to generate a number of routes, the memory decreases with each pass resulting in swap file eventually being brought into the equation. Once that happens, everything slows down! The basic bones of my code is shown below: // Set up the parameters required. RouteParameters route_parameters; route_parameters.zoom_level = 18; // no generalization route_parameters.print_instructions = false; // turn by turn instructions route_parameters.alternate_route = false;// get an alternate route, too route_parameters.geometry = false; // retrieve geometry of route route_parameters.compression = false;// polyline encoding route_parameters.check_sum = -1;// see wiki route_parameters.service = "viaroute"; // that's routing route_parameters.output_format = "json"; route_parameters.jsonp_parameter = ""; // set for jsonp wrapping // Start the outer loop. for(int oLoop = 0; oLoop < 1; oLoop++) { // Start the inner loop. for(int iLoop = 0; iLoop < 1; iLoop++) { // Clear down the route parameters. route_parameters.coordinates.clear(); // Start_coordinate route_parameters.coordinates.emplace_back(latlonPC[oLoop][0] * COORDINATE_PRECISION, latlonPC[oLoop][1] * COORDINATE_PRECISION); // Target_coordinate route_parameters.coordinates.emplace_back(latlonPC[iLoop][0] * COORDINATE_PRECISION, latlonPC[iLoop][1] * COORDINATE_PRECISION); // Run the required query. routing_machine.RunQuery(route_parameters, json_result); } } Not a lot to it, therefore I'm wondering if the memory leak is in the RunQuery function and if so, how can I minimise the issue. Kind Regards James ___ OSRM-talk mailing list OSRM-talk@openstreetmap.org https://lists.openstreetmap.org/listinfo/osrm-talk