logo separator

[mkgmap-dev] [PATCH v2] make maps in parallel

From Mark Burton markb at ordern.com on Mon May 11 23:12:59 BST 2009

Now defaults to creating a thread per core so without doing anything
you should see a speedup on a SMP box when processing multiple maps.

You can use --num-threads=N to limit the concurrency - you may want to
specify that if you can't increase the VM size to what is required.
However, it occurs to me that if you can afford a box with more than
2 cores, then you can probably afford a reasonable amount of memory
(otherwise, what's the point in having more cores?)

Added help blurb.

--------

OK, let it not be said that I don't listen to others!

The attached patch provides support for making maps in parallel. By
default, the behaviour is the same as before but if you specify
--num-threads=N where N is greater than 1, it will process N maps at
the same time and then combine the results (if required). Don't forget
to increase the heap size appropriately.

A quick test on the big box shows good speedup - specifying
--num-threads=4 and 2GB VM size. I  was seeing better than 380%
utilisation with 8 cores in use.

I suspect the performance limitation here will be VM size and memory
system bandwidth.

BTW - I don't think num-threads is actually the best name for the
option, so please suggest alternatives.

Cheers,

Mark
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mb-parallel-maps-v2.patch
Type: text/x-patch
Size: 3783 bytes
Desc: not available
Url : http://lists.mkgmap.org.uk/pipermail/mkgmap-dev/attachments/20090511/55e6abee/attachment.bin 


More information about the mkgmap-dev mailing list