Opened 13 years ago

Last modified 13 years ago

#7914 closed enhancement

[PATCH] Concurrent fetching of primitives — at Version 1

Reported by: Don-vip Owned by: team
Priority: major Milestone:
Component: Core Version:
Keywords: performance, multithread, multicore Cc:

Description (last modified by Don-vip)

The OSM API usage policy allows us to use 2 download threads:

http://wiki.openstreetmap.org/wiki/API_usage_policy#Technical_Usage_Requirements

I have achieved to improve dramatically the performances in fetching a large number of primitives (I used as example the multipolygon 1155338 which contains more than 12k nodes). With this patch, download time fell from 3min50s to 1min42s on my machine !

However, I'd like to have some code review and some testing before committing.
I am particularly afraid of the handling of ProgressMonitor. I was expecting to get some ConcurrentModificationExceptions. I did not get any problem, but I don't know if I was lucky or if the code is OK :)

Change History (2)

by Don-vip, 13 years ago

Attachment: 7914.patch added

comment:1 by Don-vip, 13 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.