Skip to content

Demonstrating performance regressions in React Native

Notifications You must be signed in to change notification settings

tj-mc/rn-perf-repro

Repository files navigation

React Native Performance Regression Reproducer

This is a reproducer for performance regressions in React Native, as described by Issue #36296.

The main branch is at .68.7.

The intention is to simulate the complexity of a real-world app. To achieve this, 1000 views are rendered, each of which contains a timer that runs a state update an animation for that view. The view in the white box is animated using the JS driver, which we use to observe the performance of the JS thread.

Note that smoothness is highest in .68.7, very poor in .70.12, and somewhere in between for .72.3. If a difference is not seen, increase the number of views in the Array.map.

All demos were recorded in Release mode.

Video Demos

Very smooth animation, with no noticeable frame drops.

Very poor animation, with many noticeable frame drops.

Much improved over 70.12, but not as smooth as 68.7.

About

Demonstrating performance regressions in React Native

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published