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

Optimization: avoid generating data-driven fill-outline-color buffers if fill-antialias is false #12353

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

mourner
Copy link
Member

@mourner mourner commented Nov 2, 2022

A quick proof of concept to improve performance of styles that use data-driven fill-color in combination with fill-antialias: false: avoid generating fill-outline-color paint buffers since they would duplicate fill-color (with notable GPU memory footprint on heavy layers like hillshade) but are not used in practice. Let's see if this makes a difference in benchmarks. Related: #10579

Launch Checklist

  • briefly describe the changes in this PR
  • write tests for all new functionality
  • document any changes to public APIs
  • post benchmark scores
  • manually test the debug page
  • tagged @mapbox/map-design-team @mapbox/static-apis if this PR includes style spec API or visual changes
  • tagged @mapbox/gl-native if this PR includes shader changes or needs a native port
  • apply changelog label ('bug', 'feature', 'docs', etc) or use the label 'skip changelog'
  • add an entry inside this element for inclusion in the mapbox-gl-js changelog: <changelog>Improve performance for fill layers with data-driven color and antialias: false</changelog>

@mourner mourner added the performance ⚡ Speed, stability, CPU usage, memory usage, or power usage label Nov 2, 2022
@mourner mourner requested a review from ansis November 2, 2022 15:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
performance ⚡ Speed, stability, CPU usage, memory usage, or power usage
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant