Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove JSON generation step in key #1095

Open
sjg-wdw opened this issue May 1, 2023 · 3 comments
Open

Remove JSON generation step in key #1095

sjg-wdw opened this issue May 1, 2023 · 3 comments
Labels

Comments

@sjg-wdw
Copy link
Collaborator

sjg-wdw commented May 1, 2023

To generate a layoutKey when parsing geometry for a tile, the toolkit constructs JSON to use, presumably in the comparison.

https://github.com/maplibre/maplibre-gl-native/blob/0058c3307285c4116270848de9b4c8d182a2c345/src/mbgl/tile/geometry_tile_worker.cpp#L354
https://github.com/maplibre/maplibre-gl-native/blob/main/src/mbgl/renderer/group_by_layout.cpp

Very inefficient, requires a JSON writer for no good reason and is slow.
Looks like Javascript thinking to me. Should be replaced with a sort key from the structure itself.

@sjg-wdw sjg-wdw converted this from a draft issue May 1, 2023
@louwers
Copy link
Collaborator

louwers commented May 2, 2023

@sjg-wdw Would you like to try to put a bounty on this, in the hope that someone from outside the Metal team picks it up?

@sjg-wdw
Copy link
Collaborator Author

sjg-wdw commented May 2, 2023

That's a great idea! @mwilsnd might want to chime in with some more detail.

@sjg-wdw sjg-wdw moved this to Tangential in MapLibre Native Project Jun 19, 2023
@louwers louwers added the 💰 bounty M Medium Bounty, USD 250 label Jan 20, 2024
@louwers
Copy link
Collaborator

louwers commented Jan 20, 2024

For someone that wants to pick this up, the bounty applies to making a design proposal / plan to fix this, not the implementation itself.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: Tangential
Development

No branches or pull requests

2 participants