Skip to content

improve set by 2.5 for simple use cases#39

Merged
danmayer merged 1 commit intomainfrom
improve_set
Feb 3, 2025
Merged

improve set by 2.5 for simple use cases#39
danmayer merged 1 commit intomainfrom
improve_set

Conversation

@danmayer
Copy link
Copy Markdown

@danmayer danmayer commented Feb 3, 2025

This speeds up set calls by over 2X generally because we will avoid copying and extra allocations for large values.


set before:

Warming up --------------------------------------
          client set   304.000 i/100ms
        raw sock set   827.000 i/100ms
Calculating -------------------------------------
          client set      2.998k (± 8.9%) i/s  (333.52 μs/i) -     29.792k in  10.009832s
        raw sock set      8.254k (± 2.8%) i/s  (121.15 μs/i) -     82.700k in  10.027442s

Comparison:
        raw sock set:     8254.3 i/s
          client set:     2998.4 i/s - 2.75x  slower

set now:

Warming up --------------------------------------
          client set   724.000 i/100ms
        raw sock set   828.000 i/100ms
Calculating -------------------------------------
          client set      7.434k (± 2.4%) i/s  (134.51 μs/i) -     74.572k in  10.037368s
        raw sock set      8.209k (± 4.5%) i/s  (121.82 μs/i) -     81.972k in  10.011659s

Comparison:
        raw sock set:     8208.7 i/s
          client set:     7434.2 i/s - 1.10x  slower

@danmayer danmayer merged commit d1ed108 into main Feb 3, 2025
@danmayer danmayer deleted the improve_set branch February 3, 2025 21:40
@danmayer
Copy link
Copy Markdown
Author

diff_example

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.

2 participants