CesiumGS / CesiumGS/cesium

Causes OOM on devices with low memory

Open
#13,485 2 comments 0 reactions 0 assignees View on GitHub
needs triage type - bug
Dominant language
JavaScript
Stars
15.7k
Forks
3.9k
Avg merge
4d 6h
Merged PRs (30d)
34

Description

### What happened?

On devices with limited memory, such as Android phones. The memory space is usually only around 8GB. If the perspective is set parallel to the horizon, it will result in excessive tile loading, which in turn causes an OutOfMemoryError (OOM).

After code reading and testing, the original "maximumCachedBytes" interface could only control the unused tiles. For scenarios where there is excessive loading of tiles, there was a lack of an interface to limit the total memory usage globally.

Contributor guide

Open the contributing guide

Research direction

Start by tracing the implementation and callers of the existing maximumCachedBytes interface, then reproduce the horizon-parallel perspective on a low-memory device or equivalent constrained environment. Done means excessive tile loading is bounded by a global memory limit and the scenario no longer causes an OutOfMemoryError.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.