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

Improve performance with smarter caching #46

Merged
merged 7 commits into from
Mar 18, 2015
Merged

Improve performance with smarter caching #46

merged 7 commits into from
Mar 18, 2015

Conversation

danvk
Copy link
Collaborator

@danvk danvk commented Mar 18, 2015

Fixes #44

This improves performance enough for the genes + reference genome track to be pleasant to use (~30fps, was ~1fps before).

Highlights:

  • Fetches 2bit data in blocks of 1000 base pairs. Previously w'd request 1200-1700, then 1199-1699, then 1198-1698, etc. This generated a lot of unnecessary network requests.
  • Fetches & caches entire blocks of Ensembl data at once. This data was previously cached by RemoteFile, but it turns out that decompression is expensive.

The second tweak was the big performance win.

Review on Reviewable

@coveralls
Copy link

Coverage Status

Coverage increased (+3.97%) to 67.26% when pulling 9f7d45e on perf into 6a58a5c on master.

danvk added a commit that referenced this pull request Mar 18, 2015
Improve performance with smarter caching
@danvk danvk merged commit a02c908 into master Mar 18, 2015
@coveralls
Copy link

Coverage Status

Coverage increased (+4.19%) to 67.48% when pulling 616c3c1 on perf into 6a58a5c on master.

@danvk danvk mentioned this pull request Mar 18, 2015
danvk added a commit that referenced this pull request Mar 19, 2015
Improve performance with smarter caching
@danvk danvk deleted the perf branch March 19, 2015 22:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Performance improvements
2 participants