Replies: 1 comment 3 replies
-
Absolutely - very happy to hear ideas and get PRs. I'm far from the best C++ programmer in the world so I'm pretty relaxed about contributions. Reducing tilemaker's execution time and memory usage are the two things I'd like to see most, so any PRs or ideas towards that are great. It might be helpful to have a bit of a braindump on what I see next for tilemaker: refactor_geometriesThe basic idea here is to make it possible to serialise geometries to disk, segmented by area (typically the area of a z6 tile), so that they can be read back in one-by-one. This would have two benefits when not working entirely in-memory:
So the process becomes:
This supersedes mapsplit support so we can remove that. I would suggest we just integrate it into It will require further refactoring to make sure all serialise/deserialise methods are in a sensible place. Perhaps something like
where, when running with This is all "I'll do it when I have a spare minute" stuff, so don't be worried about stepping on my toes - if you want to implement any of it, or something in a similar but better way, go for it. I'd like to merge refactor_geometries into master sooner rather than later, to avoid the hassle of repeatedly merging in new features, and because it already has memory improvements and cleaner code. The current blocker to doing that is that Geometry clipping issuesI've done a separate issue about this - #594. pmtiles supportpmtiles is deservedly getting a lot of traction and we should support it. There's already C++ reference code and the docs are good. |
Beta Was this translation helpful? Give feedback.
-
I love Tilemaker's Lua-scripting approach. It's super accessible to a broad class of users.
I also like Tilemaker's internals. There's room for optimization in the implementation, but the overall architecture makes spelunking and tweaking things a joy.
Over the past few weeks, some ideas to improve Tilemaker's performance on large PBFs have been gelling in my mind. Do they fit your vision for the project, or your future code changes in
refactor_geometries
? That's where I'd need your feedback.Would you be interested in hearing them?
I'm also mindful that Tilemaker is a passion project, not your job, and I'm just some rando who has shown up and is now generating a flood of work for you in the form of PRs and discussions, and possibly stepping on your toes with your intended code changes. It's totally fine to tell me thanks, but no thanks.
The ideas are in service of achieving these goals:
Beta Was this translation helpful? Give feedback.
All reactions