Skip to content

PauliusVal/ComposeGridPerformance

Repository files navigation

ComposeGridPerformance

The goal of this project is to demonstrate performance issues related to Compose grid.

To achieve best possible performance examples are kept as simple as possible, also:

  • verified in R8 release mode
  • contains baseline profile for scrolling
  • stable Compose parameters used
  • unique and stable item keys applied for grid items

Currently these examples are implemented:

  • network images grid with Coil AsyncImage loading
  • paginated network images grid with Coil AsyncImage loading
  • network images grid with Glide AsyncImage loading
  • boxes with random colors grid
  • paginated boxes with random colors grid
  • modularized (2 static horizontal lists + paginated vertical list) boxes with random colors grid

Images grid with Coil loading issues

Simple grid which instantly demonstrates that jank appears while scrolling the grid. Noticeable both by human eye and in profiler: jank_1

jank_2

jank_3

Paginated images grid with Coil loading issues

Same issues as with simple image grid without pagination: jank_4

Images grid with Glide loading issues

No noticeable performance issues though few janky frames are visible in profiler: jank_5

Colors grid issues

No performance issues visible even without a baseline profile.

Paginated colors grid issues

No noticeable performance issues though janky frames are visible in profiler: jank_6

Modularized colors grid issues

Same janky frames as with regular paginated grid.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages