[mapguide-users] Idea for making MgCooker faster

Zac Spitzer zac.spitzer at gmail.com
Wed Jun 3 05:34:20 EDT 2009


yep, I have raised this over on internals a few times, all really comes
down to how much you want it :) and if you can either find some one
to code it up for free or as a paid gig.

I ended up getting a client to fund some of the work for RFC 60
which is the PNG8 palette stuff (doing this on the mapguide server)

Uv who did the work spent a long time getting up to speed on the
guts of mapguide.

We have discussed this exact approach several times. I'm sure he'd be
interested in being sponsored to implement this as a RFC.

Back to 'meta tiling' It's a really simple but highly effective approach.

The current approach is like doing lots of inserts without wrapping
them up in a transaction, you end up with lots of IO contention.

(Especially when you are using SDF's or SHP files)

Considering a tile is normally rendered with a 30% overlap, you end up
doing everything almost twice. The bigger the tiles the smaller
the effective overlapped areas.

Mapguide can do up to 50k by 50k tiles from memory.

I also did a similiar test with GD and meta tiling, using some php
work really well and it's quite efficient.

It would be far better to have this in the server itself, logically there's
not much to it, as all the required stuff is already present in mapguide

z

On Wed, Jun 3, 2009 at 7:13 PM, Bruno Scott <bscott at geomapgis.com> wrote:
>
> Motivation:
> We are using tiling, with the little patch we made for httptiling
> Displaying is incredely fast, and it is using the client browser cache.
> The real problem now is to pre generate all tiles.
> For scale 1000 there is 3425920 256x256 tiles
> With the previous MgCooker(3706) we had a average of 3 tile / sec so 13 days
> for processing a single scale
> With MgCooker(3911) using 2 simultaneous process is almost twice as fast so
> we are aroud 7 days
> We have 15 scales to process
> We have to refresh the tiles every 30 days.
> Full processing is still more than 30 days.
>
> Here an idea, why not try to make Mapguide generate bigger tiles and split
> them in a post process
> Here is some interesting bench we made using the old 3706 mgcooker (single
> process)
>
> 1024x1024 Tiles:
>    32h for 214120 tiles
>    1.85 tiles(1024)/sec ~=  29.6 tiles(256)/sec
>
> 2048x2048 Tiles:
>    18h30 for 54180 tiles
>    0.81 tiles(2048) /sec ~= 52 tiles(256) /sec
>
> 3072x3072 Tiles:
>    14h50 for 24192 tuiles
>    0.45 tiles(3072) /sec ~= 65 tiles(256) /sec
>
> I've made a little aspx program using GD to bench tile splitting
>  Splitting a 1024x1024 tile : 0.218 sec
>       0.0136 sec per 256x256 tile
>
>  Splitting a 2048 x2048  tile : 0.691 sec
>       0.0108 sec per 256x256 tile
>
>  Splitting a 3072x3072  tile : 1.804 sec
>       0.0125 sec per 256x256 tile
>  So it's around 4 days of post process, i'm trying to make it faster
>
> Bruno
>
>
>
>
>
>
> --
> View this message in context: http://n2.nabble.com/Idea-for-making-MgCooker-faster-tp3017103p3017103.html
> Sent from the MapGuide Users mailing list archive at Nabble.com.
>
> _______________________________________________
> mapguide-users mailing list
> mapguide-users at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/mapguide-users
>



-- 
Zac Spitzer -
http://zacster.blogspot.com
+61 405 847 168


More information about the mapguide-users mailing list