visgl / visgl/react-map-gl

[Bug] Massive amount of dropped frames while CPU & GPU are doing nothing

Open
#2,515 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
TypeScript
Stars
8.5k
Forks
1.4k
Avg merge
5d 17h
Merged PRs (30d)
3

Description

Description

When simply dragging the map to pan, I get about 200-250ms worth of dropped frames every 5-10 seconds. The profiler shows that the CPU and GPU are both basically idle. When it recovers the profiler says the GPU is very busy for a few frames and then goes back to barely being used.

Expected Behavior

Simply dragging around the map with nothing on it should be perfectly smooth with no dropped frames.

Steps to Reproduce

Just pan the map around by dragging for 5-10 seconds, huge stutter for about 250ms with all frames dropped. Happens regularly and cosistently.

Environment
  • Framework version: react-map-gl@7.1.7
  • Map library: @mapbox/mapbox-gl-draw@1.5.0
  • Browser: Chrome 134.0.6998.88 (Official Build) (64-bit)
  • OS: Ubuntu 22
Logs

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the stutter by dragging the map for 5–10 seconds with react-map-gl@7.1.7, @mapbox/mapbox-gl-draw@1.5.0, Chrome 134, and Ubuntu 22, then profile the pan interaction when the CPU and GPU appear idle. Done means the recurring 200–250 ms dropped-frame pause is identified and no longer occurs during simple panning.

Written by the indexing model from the issue text.

Assessment

Tech stack
react, typescript
Domain
data-visualization, frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.