[Tile-serving] Improving Render Times

Christian Quest cquest at openstreetmap.fr
Tue Jun 18 13:30:13 UTC 2019


16GB of RAM does not allow postgres to keep much index in RAM. How much
shared_memory has been allocated to PG ?

The main polygon, line and point geo index take 38GB, 21GB and 6.5GB on
OSM-FR tile servers. Additionnal index can also help.
At each zoom level, they are read from the SSD to read the required data
(again from the SSD).
With 64GB of RAM you have more chance to keep index pages in RAM from one
zoom level to the next... but this may not be enough.
I patched renderd_list a long time ago to generate tiles recursively to use
the cache more efficiently. Maybe it is time to finalize that and make a
pull request ;)

OSM data volume has increased a lot over the past years and setup up a full
planet tile server now requires more ressources than what is described in
many quite old howto.

That's why we're currently upgrading OSM-FR servers from 64 to 192GB of
RAM, and to 5TB of SSD (mix of nvme and SATA).
One of these server generates the humanitarian tiles you can see on osm.org
The other serves the "FR" style.

In our case, a 128GB RAM server (FR style) hits a CPU bottleneck:
http://munin.openstreetmap.fr/openstreetmap.fr/osm25.openstreetmap.fr/cpu.html

Orange = renderd (niced)
Blue = postgres
IOwait is quite low (full SSD server).
Most of the RAM (100GB) is use by linux i/o cache.

The stylesheet has also a lot to do with the renderding speed...

Here is the 64GB RAM server for the humanitarian tiles:
http://munin.openstreetmap.fr/openstreetmap.fr/osm13.openstreetmap.fr/cpu.html
No bottleneck !


Le dim. 16 juin 2019 à 21:39, JunkMail <junkmail at scd31.com> a écrit :

> Hello all,
>
> I set up a osm tile server a week ago but am not satisfied with the
> performance. The server has an 8 core processor, 16GB of RAM, and a
> single 1TB SSD. It took about 2 days to import the full planet.
>
> Here are some benchmarks:
>
> Total for all tiles rendered
> Meta tiles rendered: Rendered 349391 tiles in 420199.62 seconds (0.83
> tiles/s)
> Total tiles rendered: Rendered 22361024 tiles in 420199.62 seconds
> (53.22 tiles/s)
> Total tiles handled: Rendered 349504 tiles in 420199.62 seconds (0.83
> tiles/s)
> *****************************************************
> Zoom 06: min:  0.3    avg: 47.4     max: 1932.3     over a total of
> 2702.3s in 57 requests
> Zoom 07: min:  0.3    avg: 13.7     max: 1806.6     over a total of
> 3373.8s in 247 requests
> Zoom 08: min:  0.4    avg:  4.2     max: 652.1     over a total of
> 4293.0s in 1010 requests
> Zoom 09: min:  0.4    avg:  1.7     max: 425.8     over a total of
> 6737.1s in 4079 requests
> Zoom 10: min:  0.4    avg:  4.2     max: 1353.2     over a total of
> 69453.8s in 16368 requests
> Zoom 11: min:  0.4    avg:  1.5     max: 636.8     over a total of
> 100399.6s in 65506 requests
> Zoom 12: min:  0.4    avg:  0.9     max: 214.0     over a total of
> 233220.1s in 262124 requests
> *****************************************************
>
> As you can see, it's quite slow at times. Even generating the cache took
> much longer than I would like.
>
> Is there anything I can do to get some more speed out of it? It seems to
> be SSD bottlenecked, not CPU bottlenecked.
>
>
> _______________________________________________
> Tile-serving mailing list
> Tile-serving at openstreetmap.org
> https://lists.openstreetmap.org/listinfo/tile-serving
>


-- 
Christian Quest - OpenStreetMap France
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/tile-serving/attachments/20190618/b57782db/attachment.html>


More information about the Tile-serving mailing list