Page 1 of 1

Performance issue calculateRouteInfo with XMLSnippet

Posted: Tue Sep 02, 2014 4:24 pm
by metin.kahraman
Dear forum members,

I recognized that in my environment (1.18.1.0) calling calculateRouteInfo with the additional CallerContextProperty ProfileXMLSnippet lead to an increase of server time compared to specifiying no snippet at all. On the average it took twice as long.

The XMLSnippet I used (see attachment) should not cause a difference in the routing process though. I consider the two request equivalent.

Has anyone ever experienced a similar behavior ?

Regards

Metin

Re: Performance issue calculateRouteInfo with XMLSnippet

Posted: Wed Sep 03, 2014 8:18 am
by Bernd Welter
Hello Metin,

thanks for your requests... I made some tests with it using 100 routings and the XServerRequestRunner tool.
The sequence with the snippet based requests took about 1:01 / 0:57 and the one without the snippet 0:17 / 0:16 on xRoute 1.18.0.0. I'll now try the same on a 1.18.1.2 version.

The question is:
did the snippet activate the same parameters as the default profile?

My first impression is: NO.
For example your snippet tries to avoid high level roads which forces the algorithms to evaluate much more data than the default...

I then prepared a snipped based request template and sent it to the tool... my response times are now based on 1.18.1.2:
  • 0:15 / 0:15 / 0:15 with TEMPLATE.calculateRouteInfoDefaultSnippet.xml
  • 0:15 / 0:15 / 0:15 with TEMPLATE.calculateRouteInfoNOSnippet.xml
  • 0:48 / 0:48 / 0:48 with TEMPLATE.calculateRouteInfoWithSnippet.xml
Let's have a look at your parameters:

Code: Select all

<Network>
	<MalusByNetworkClass malus="2500" />
	<MalusByNetworkClass malus="2500" />
	<MalusByNetworkClass malus="0" />
	<MalusByNetworkClass malus="10" />
	<MalusByNetworkClass malus="20" />
	<MalusByNetworkClass malus="50" />
	<MalusByNetworkClass malus="100" />
	<MalusByNetworkClass malus="100" />
</Network>
while the default snippet is covering the same "area" with

Code: Select all

<Network rampMalus="10">
	<MalusByNetworkClass malus="0"/>
	<MalusByNetworkClass malus="0"/>
	<MalusByNetworkClass malus="0"/>
	<MalusByNetworkClass malus="10"/>
	<MalusByNetworkClass malus="20"/>
	<MalusByNetworkClass malus="50"/>
	<MalusByNetworkClass malus="100"/>
	<MalusByNetworkClass malus="100"/>
</Network>
So from my point of view no further issue... it's up to you!

Regards Bernd

PS: feel free to check it on your own... you need to merge a file with template coordinates (MERCATOR) with the files I attached