Re: [OSRM-talk] Memory Leak?

2016-02-28 Thread Daniel Hofmann
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 Grant  wrote:
> > 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

2016-02-28 Thread Patrick Niklaus
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 Rabbit
 wrote:
> 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

2016-02-28 Thread Jack Rabbit
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?

2016-02-28 Thread James Grant

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