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

reduce LGV block rerenders to speed up scrolling #434

Closed
rbuels opened this issue Aug 1, 2019 · 3 comments
Closed

reduce LGV block rerenders to speed up scrolling #434

rbuels opened this issue Aug 1, 2019 · 3 comments
Labels
scalability related to speed and/or scalability

Comments

@rbuels
Copy link
Contributor

rbuels commented Aug 1, 2019

Right now, the Block and Ruler elements updating as you scroll is starting to have a real performance impact.

It's due to code like this:

https://github.com/GMOD/jbrowse-components/blob/master/packages/linear-genome-view/src/LinearGenomeView/components/ScaleBar.js#L59

and this:

https://github.com/GMOD/jbrowse-components/blob/master/packages/linear-genome-view/src/BasicTrack/components/TrackBlocks.js#L56

Need to reduce the rerenders of these blocks, using the techniques in https://mobx.js.org/best/react-performance.html

@rbuels rbuels added the scalability related to speed and/or scalability label Aug 1, 2019
@rbuels
Copy link
Contributor Author

rbuels commented Aug 1, 2019

A good 50% of the scrolling frame runtime is taken up by these block updates, which could probably be mostly eliminated:

image

@cmdcolin
Copy link
Collaborator

Might be related to facebook/react#8669 since Block uses {props.children}

@cmdcolin
Copy link
Collaborator

This is done to some extent. Further profiling could be done

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
scalability related to speed and/or scalability
Projects
None yet
Development

No branches or pull requests

2 participants