logo separator

[mkgmap-dev] Performance with large files

From Bernhard Hiller bhil at gmx.de on Sun Mar 19 18:46:32 GMT 2017

Eventually I updated Java and tried the latest version of mkgmap 3847 
(and also splitter 580).
The extracts were retrieved from Geofabrik on Saturday 18.
Germany: 2.93 GB
plus additional countries: 5.62 GB (incl. Germany) which were combined 
to a 7.57 GB o5m file.
splitter: Germany 14 minutes - Central Europe 20 minutes
mkgmap: Germany 30 minutes - Central Europe 133 minutes
While splitter performed better than O(n) (more like O(sqrt(n))),
mkgmap performed worse than O(n^2).

Am 19.03.2017 um 12:06 schrieb Bernhard Hiller:
> How is mkgmap expected to behave when input files grow in size? Is a 
> linear inrease in calculation time - i.e. O(n) - expected, or an 
> increase beyond linearity?
> E.g. when I create a map with routable lines for bicycle, mkgmap takes 
> some 30 minutes for Germany alone (3 GB pbf file resulting in 850 MB 
> img file), but more than  2 hours for Germany and some neighboring 
> countries (7 GB o5m file, resulting 1.4 GB img).
> Are there many calculations at O(n^2) or beyond in mkgmap, or is this 
> due to other factors, e.g. memory limitation?
> Notes:
> mkgmap is called by
> %JAVA% -Xmx6800M -ea -jar %MKGMAP% ....
> on 64bit Win 7;
> swapping to disc does not occur.
> But I am more interested in a general rule than in some hints for 
> improving the performance in this concrete case. E.g. how I could 
> estimate the duration if I add some further countries...
> Thanks for your hints.

More information about the mkgmap-dev mailing list