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

generate_pull_response optimization #11597

Merged
merged 1 commit into from
Aug 13, 2020

Conversation

sakridge
Copy link
Member

@sakridge sakridge commented Aug 12, 2020

Problem

Lots of duplicate work done in the inner loop of generate_pull_responses.

Summary of Changes

Hoist work related to mask generation out of the O(N*M) loop. Keep a separate cache-friendly table for item masks.

Gives 4-6x speedup.

Fixes #

@sakridge sakridge removed the request for review from carllin August 12, 2020 23:12
aeyakovenko
aeyakovenko previously approved these changes Aug 12, 2020
@mergify mergify bot dismissed aeyakovenko’s stale review August 12, 2020 23:20

Pull request has been modified.

@codecov
Copy link

codecov bot commented Aug 13, 2020

Codecov Report

Merging #11597 into master will increase coverage by 0.0%.
The diff coverage is 88.8%.

@@           Coverage Diff           @@
##           master   #11597   +/-   ##
=======================================
  Coverage    82.0%    82.0%           
=======================================
  Files         330      330           
  Lines       75886    75905   +19     
=======================================
+ Hits        62283    62305   +22     
+ Misses      13603    13600    -3     

@sakridge sakridge merged commit f519fde into solana-labs:master Aug 13, 2020
@sakridge sakridge added the v1.3 label Aug 13, 2020
@sakridge sakridge deleted the generate_pull_opt branch August 13, 2020 05:45
mergify bot pushed a commit that referenced this pull request Aug 13, 2020
mergify bot added a commit that referenced this pull request Aug 13, 2020
(cherry picked from commit f519fde)

Co-authored-by: sakridge <sakridge@gmail.com>
@carllin carllin added the v1.2 label Aug 31, 2020
mergify bot pushed a commit that referenced this pull request Aug 31, 2020
(cherry picked from commit f519fde)

# Conflicts:
#	core/src/crds_gossip_pull.rs
mergify bot added a commit that referenced this pull request Sep 1, 2020
* generate_pull_response optimization (#11597)

(cherry picked from commit f519fde)

# Conflicts:
#	core/src/crds_gossip_pull.rs

* Fix merge conflicts

Co-authored-by: sakridge <sakridge@gmail.com>
Co-authored-by: Carl <carl@solana.com>
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.

3 participants