-
-
Notifications
You must be signed in to change notification settings - Fork 147
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
Test benchmark ci #1163
Test benchmark ci #1163
Conversation
WalkthroughThe pull request updates the benchmark test configuration in the Changes
Suggested reviewers
📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (1)
⏰ Context from checks skipped due to timeout of 90000ms (2)
🔇 Additional comments (1)
✨ Finishing Touches
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #1163 +/- ##
=======================================
Coverage 38.56% 38.56%
=======================================
Files 170 170
Lines 25441 25441
=======================================
Hits 9812 9812
Misses 14808 14808
Partials 821 821 ☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Go Benchmark Analysis 📊
This is a comparison result between the previous(e687d61) and the current commit(8c86057).
Significant Changes (≥20% difference)
Benchmark suite | Previous | Current | Change |
---|---|---|---|
BenchmarkVersionVector/clients_1000/ (4_attach(ms)) | 249.00 ms | 10.00 ms | 🟢 -95.98% |
BenchmarkVersionVector/clients_1000/ (B/op) | 22.07 GB | 6.64 GB | 🟢 -69.91% |
BenchmarkVersionVector/clients_100/ (4_attach(ms)) | 11.00 ms | 6.00 ms | 🟢 -45.45% |
BenchmarkVersionVector/clients_1000/ (ns/op) | 60.97 s | 35.99 s | 🟢 -40.98% |
BenchmarkVersionVector/clients_1000/ (allocs/op) | 111,762,106 allocs | 77,888,894 allocs | 🟢 -30.31% |
BenchmarkSplayTree/random_access_300000/ (ns/op) | 0.04 ns | 0.06 ns | 🔴 +25.35% |
Key Observations 🔍
-
The benchmark data for
BenchmarkVersionVector/clients_1000/
shows a significant improvement in multiple metrics:- Time taken for
4_attach
reduced by 95.98%. - Data size (
B/op
) decreased by 69.91%. - Number of allocations reduced by 30.31%.
- Time for
ns/op
reduced by 40.98%. These improvements indicate a substantial enhancement in performance for this benchmark suite.
- Time taken for
-
In contrast, the
BenchmarkSplayTree/random_access_300000/
benchmark showed an increase in the time taken forns/op
by 25.35%. While this is a notable decrease in performance compared to the other benchmarks, it is the only significant change in this suite. Further analysis may be needed to identify the reason behind this increase. -
Overall, the benchmarks exhibit various performance changes, with some showing improvements while others experienced slight declines. The majority of benchmarks showed relatively minor changes, with a few exceptions. These changes could be indicative of optimizations or potential areas for further investigation.
Clock Analysis
Lamport (v0.5.2)
Metric | 10 clients | 100 clients | 1000 clients |
---|---|---|---|
Total Operation Time | 84.96 ms | 793.94 ms | 34,794.80 ms |
Memory Allocations | 35.11 MB | 219.92 MB | 4.91 GB |
Number of Allocations (allocs/op) | 69,271 | 1,246,728 | 81,485,288 |
ChangePack Size | 138.0 B | 137.0 B | 141.0 B |
Snapshot Size | 379.0 B | 3.08 KB | 30.08 KB |
Push-Pull Time | 2.0 ms | 1.5 ms | 4.0 ms |
Attach Time | 4.5 ms | 11.0 ms | 31.0 ms |
ChangePack After Detach | 138.0 B | 140.0 B | 141.0 B |
Snapshot After Detach | 136.0 B | 137.0 B | 139.0 B |
Push-Pull After Detach | 2.5 ms | 5.0 ms | 9.5 ms |
VV (current)
Metric | 10 clients | 100 clients | 1000 clients |
---|---|---|---|
Total Operation Time | 160.71 ms | 1.40 s | 35.99 s |
Memory Allocations | 20.65 MB | 216.31 MB | 6.64 GB |
Number of Allocations (allocs/op) | 83,626 | 1,358,646 | 77,888,894 |
ChangePack Size | 745.00 B | 6.14 KB | 60.16 KB |
Snapshot Size | 379.00 B | 3.08 KB | 30.08 KB |
Push-Pull Time | 7.00 ms | 11.00 ms | 93.00 ms |
Attach Time | 6.00 ms | 6.00 ms | 10.00 ms |
ChangePack After Detach | 805.00 B | 6.21 KB | 60.22 KB |
Snapshot After Detach | 136.00 B | 137.00 B | 139.00 B |
Push-Pull After Detach | 8.00 ms | 9.00 ms | 21.00 ms |
Summary
- Lamport clock generally outperforms Version Vector in terms of total operation time across different client loads.
- Version Vector consumes more memory compared to Lamport clock as the number of clients increase.
- Lamport clock has lower number of allocations per operation compared to Version Vector.
- Version Vector has larger ChangePack sizes, especially with higher numbers of clients.
- Lamport generally has faster push-pull times compared to Version Vector.
- Version Vector shows faster attach times as the number of clients increases but still has room for improvement.
- Lamport clock maintains more consistent performance with detach operations compared to Version Vector.
- Version Vector has shown significant improvement in total operation time with 1000 clients compared to Lamport clock.
Detailed Test Results
BenchmarkDocument
Benchmark suite | Previous | Current | Change |
---|---|---|---|
constructor_test/ (ns/op) | 1439.00 ns | 1434.00 ns | 🟢 -0.35% |
constructor_test/ (B/op) | 1.39 KB | 1.39 KB | ⚪ 0% |
constructor_test/ (allocs/op) | 24 allocs | 24 allocs | ⚪ 0% |
status_test/ (ns/op) | 1028.00 ns | 1024.00 ns | 🟢 -0.39% |
status_test/ (B/op) | 1.35 KB | 1.35 KB | ⚪ 0% |
status_test/ (allocs/op) | 22 allocs | 22 allocs | ⚪ 0% |
equals_test/ (ns/op) | 7864.00 ns | 7764.00 ns | 🟢 -1.27% |
equals_test/ (B/op) | 7.56 KB | 7.56 KB | ⚪ 0% |
equals_test/ (allocs/op) | 129 allocs | 129 allocs | ⚪ 0% |
nested_update_test/ (ns/op) | 17079.00 ns | 17240.00 ns | 🔴 +0.94% |
nested_update_test/ (B/op) | 12.31 KB | 12.31 KB | ⚪ 0% |
nested_update_test/ (allocs/op) | 258 allocs | 258 allocs | ⚪ 0% |
delete_test/ (ns/op) | 27313.00 ns | 22850.00 ns | 🟢 -16.34% |
delete_test/ (B/op) | 15.79 KB | 15.79 KB | ⚪ 0% |
delete_test/ (allocs/op) | 339 allocs | 339 allocs | ⚪ 0% |
object_test/ (ns/op) | 8546.00 ns | 8863.00 ns | 🔴 +3.71% |
object_test/ (B/op) | 7.03 KB | 7.03 KB | 🔴 +0.01% |
object_test/ (allocs/op) | 118 allocs | 118 allocs | ⚪ 0% |
array_test/ (ns/op) | 28984.00 ns | 30685.00 ns | 🔴 +5.87% |
array_test/ (B/op) | 12.14 KB | 12.14 KB | ⚪ 0% |
array_test/ (allocs/op) | 273 allocs | 273 allocs | ⚪ 0% |
text_test/ (ns/op) | 32155.00 ns | 31952.00 ns | 🟢 -0.63% |
text_test/ (B/op) | 15.19 KB | 15.19 KB | ⚪ 0% |
text_test/ (allocs/op) | 484 allocs | 484 allocs | ⚪ 0% |
text_composition_test/ (ns/op) | 31674.00 ns | 31578.00 ns | 🟢 -0.30% |
text_composition_test/ (B/op) | 18.70 KB | 18.70 KB | ⚪ 0% |
text_composition_test/ (allocs/op) | 501 allocs | 501 allocs | ⚪ 0% |
rich_text_test/ (ns/op) | 87424.00 ns | 85732.00 ns | 🟢 -1.94% |
rich_text_test/ (B/op) | 39.36 KB | 39.36 KB | ⚪ 0% |
rich_text_test/ (allocs/op) | 1,146 allocs | 1,146 allocs | ⚪ 0% |
counter_test/ (ns/op) | 18201.00 ns | 18089.00 ns | 🟢 -0.62% |
counter_test/ (B/op) | 11.81 KB | 11.81 KB | ⚪ 0% |
counter_test/ (allocs/op) | 253 allocs | 253 allocs | ⚪ 0% |
text_edit_gc_100/ (ns/op) | 1.39 ms | 1.40 ms | 🔴 +0.99% |
text_edit_gc_100/ (B/op) | 864.90 KB | 864.86 KB | ⚪ 0% |
text_edit_gc_100/ (allocs/op) | 17,281 allocs | 17,282 allocs | ⚪ 0% |
text_edit_gc_1000/ (ns/op) | 53.39 ms | 52.46 ms | 🟢 -1.74% |
text_edit_gc_1000/ (B/op) | 46.84 MB | 46.84 MB | ⚪ 0% |
text_edit_gc_1000/ (allocs/op) | 185,598 allocs | 185,576 allocs | 🟢 -0.01% |
text_split_gc_100/ (ns/op) | 2.12 ms | 2.13 ms | 🔴 +0.33% |
text_split_gc_100/ (B/op) | 1.58 MB | 1.58 MB | ⚪ 0% |
text_split_gc_100/ (allocs/op) | 15,950 allocs | 15,951 allocs | ⚪ 0% |
text_split_gc_1000/ (ns/op) | 128.25 ms | 126.98 ms | 🟢 -0.99% |
text_split_gc_1000/ (B/op) | 137.79 MB | 137.79 MB | ⚪ 0% |
text_split_gc_1000/ (allocs/op) | 185,000 allocs | 184,989 allocs | ⚪ 0% |
text_delete_all_10000/ (ns/op) | 18.43 ms | 16.45 ms | 🟢 -10.74% |
text_delete_all_10000/ (B/op) | 10.58 MB | 10.58 MB | 🔴 +0.01% |
text_delete_all_10000/ (allocs/op) | 56,134 allocs | 56,139 allocs | ⚪ 0% |
text_delete_all_100000/ (ns/op) | 312.31 ms | 276.13 ms | 🟢 -11.58% |
text_delete_all_100000/ (B/op) | 105.54 MB | 105.53 MB | 🟢 -0.01% |
text_delete_all_100000/ (allocs/op) | 566,133 allocs | 566,062 allocs | 🟢 -0.01% |
text_100/ (ns/op) | 234634.00 ns | 244529.00 ns | 🔴 +4.22% |
text_100/ (B/op) | 120.94 KB | 120.91 KB | 🟢 -0.03% |
text_100/ (allocs/op) | 5,181 allocs | 5,181 allocs | ⚪ 0% |
text_1000/ (ns/op) | 2.46 ms | 2.57 ms | 🔴 +4.46% |
text_1000/ (B/op) | 1.16 MB | 1.16 MB | ⚪ 0% |
text_1000/ (allocs/op) | 51,084 allocs | 51,084 allocs | ⚪ 0% |
array_1000/ (ns/op) | 1.24 ms | 1.30 ms | 🔴 +4.88% |
array_1000/ (B/op) | 1.09 MB | 1.09 MB | 🔴 +0.02% |
array_1000/ (allocs/op) | 11,879 allocs | 11,879 allocs | ⚪ 0% |
array_10000/ (ns/op) | 13.33 ms | 13.60 ms | 🔴 +2.02% |
array_10000/ (B/op) | 9.89 MB | 9.89 MB | ⚪ 0% |
array_10000/ (allocs/op) | 120,735 allocs | 120,737 allocs | ⚪ 0% |
array_gc_100/ (ns/op) | 131750.00 ns | 138249.00 ns | 🔴 +4.93% |
array_gc_100/ (B/op) | 99.89 KB | 99.89 KB | ⚪ 0% |
array_gc_100/ (allocs/op) | 1,266 allocs | 1,266 allocs | ⚪ 0% |
array_gc_1000/ (ns/op) | 1.42 ms | 1.47 ms | 🔴 +3.68% |
array_gc_1000/ (B/op) | 1.14 MB | 1.14 MB | ⚪ 0% |
array_gc_1000/ (allocs/op) | 12,926 allocs | 12,926 allocs | ⚪ 0% |
counter_1000/ (ns/op) | 202098.00 ns | 212418.00 ns | 🔴 +5.11% |
counter_1000/ (B/op) | 178.13 KB | 178.14 KB | ⚪ 0% |
counter_1000/ (allocs/op) | 5,771 allocs | 5,771 allocs | ⚪ 0% |
counter_10000/ (ns/op) | 2.17 ms | 2.24 ms | 🔴 +3.10% |
counter_10000/ (B/op) | 2.07 MB | 2.07 MB | ⚪ 0% |
counter_10000/ (allocs/op) | 59,778 allocs | 59,778 allocs | ⚪ 0% |
object_1000/ (ns/op) | 1.39 ms | 1.50 ms | 🔴 +7.84% |
object_1000/ (B/op) | 1.44 MB | 1.44 MB | ⚪ 0% |
object_1000/ (allocs/op) | 9,925 allocs | 9,925 allocs | ⚪ 0% |
object_10000/ (ns/op) | 14.82 ms | 15.03 ms | 🔴 +1.42% |
object_10000/ (B/op) | 12.35 MB | 12.35 MB | ⚪ 0% |
object_10000/ (allocs/op) | 101,232 allocs | 101,233 allocs | ⚪ 0% |
tree_100/ (ns/op) | 1.02 ms | 1.08 ms | 🔴 +5.57% |
tree_100/ (B/op) | 951.02 KB | 951.03 KB | ⚪ 0% |
tree_100/ (allocs/op) | 6,102 allocs | 6,102 allocs | ⚪ 0% |
tree_1000/ (ns/op) | 74.23 ms | 80.59 ms | 🔴 +8.57% |
tree_1000/ (B/op) | 86.58 MB | 86.58 MB | ⚪ 0% |
tree_1000/ (allocs/op) | 60,111 allocs | 60,112 allocs | ⚪ 0% |
tree_10000/ (ns/op) | 9.68 s | 9.88 s | 🔴 +2.09% |
tree_10000/ (B/op) | 8.58 GB | 8.58 GB | ⚪ 0% |
tree_10000/ (allocs/op) | 600,173 allocs | 600,191 allocs | ⚪ 0% |
tree_delete_all_1000/ (ns/op) | 78.41 ms | 82.15 ms | 🔴 +4.78% |
tree_delete_all_1000/ (B/op) | 87.57 MB | 87.57 MB | ⚪ 0% |
tree_delete_all_1000/ (allocs/op) | 75,289 allocs | 75,289 allocs | ⚪ 0% |
tree_edit_gc_100/ (ns/op) | 3.96 ms | 3.97 ms | 🔴 +0.12% |
tree_edit_gc_100/ (B/op) | 4.15 MB | 4.15 MB | ⚪ 0% |
tree_edit_gc_100/ (allocs/op) | 15,147 allocs | 15,146 allocs | ⚪ 0% |
tree_edit_gc_1000/ (ns/op) | 332.75 ms | 338.05 ms | 🔴 +1.60% |
tree_edit_gc_1000/ (B/op) | 384.04 MB | 384.04 MB | ⚪ 0% |
tree_edit_gc_1000/ (allocs/op) | 154,952 allocs | 154,934 allocs | 🟢 -0.01% |
tree_split_gc_100/ (ns/op) | 2.67 ms | 2.74 ms | 🔴 +2.71% |
tree_split_gc_100/ (B/op) | 2.41 MB | 2.41 MB | ⚪ 0% |
tree_split_gc_100/ (allocs/op) | 11,131 allocs | 11,131 allocs | ⚪ 0% |
tree_split_gc_1000/ (ns/op) | 197.74 ms | 207.84 ms | 🔴 +5.11% |
tree_split_gc_1000/ (B/op) | 222.50 MB | 222.50 MB | ⚪ 0% |
tree_split_gc_1000/ (allocs/op) | 122,053 allocs | 122,071 allocs | 🔴 +0.01% |
BenchmarkRPC
Benchmark suite | Previous | Current | Change |
---|---|---|---|
client_to_server/ (ns/op) | 431.85 ms | 422.43 ms | 🟢 -2.18% |
client_to_server/ (B/op) | 16.13 MB | 16.15 MB | 🔴 +0.09% |
client_to_server/ (allocs/op) | 223,674 allocs | 223,646 allocs | 🟢 -0.01% |
client_to_client_via_server/ (ns/op) | 788.62 ms | 783.72 ms | 🟢 -0.62% |
client_to_client_via_server/ (B/op) | 37.20 MB | 39.42 MB | 🔴 +5.98% |
client_to_client_via_server/ (allocs/op) | 478,656 allocs | 478,414 allocs | 🟢 -0.05% |
attach_large_document/ (ns/op) | 1.32 s | 1.31 s | 🟢 -1.18% |
attach_large_document/ (B/op) | 1.89 GB | 1.89 GB | 🔴 +0.42% |
attach_large_document/ (allocs/op) | 12,321 allocs | 12,088 allocs | 🟢 -1.89% |
adminCli_to_server/ (ns/op) | 542.08 ms | 536.90 ms | 🟢 -0.96% |
adminCli_to_server/ (B/op) | 21.76 MB | 21.65 MB | 🟢 -0.48% |
adminCli_to_server/ (allocs/op) | 291,952 allocs | 291,988 allocs | 🔴 +0.01% |
BenchmarkLocker
Benchmark suite | Previous | Current | Change |
---|---|---|---|
(ns/op) | 82.86 ns | 81.02 ns | 🟢 -2.22% |
(B/op) | 32.00 B | 32.00 B | ⚪ 0% |
(allocs/op) | 1 allocs | 1 allocs | ⚪ 0% |
BenchmarkLockerParallel
Benchmark suite | Previous | Current | Change |
---|---|---|---|
(ns/op) | 45.80 ns | 44.86 ns | 🟢 -2.05% |
(B/op) | 0.00 B | 0.00 B | ⚪ 0% |
(allocs/op) | 0 allocs | 0 allocs | ⚪ 0% |
BenchmarkLockerMoreKeys
Benchmark suite | Previous | Current | Change |
---|---|---|---|
(ns/op) | 180.50 ns | 177.90 ns | 🟢 -1.44% |
(B/op) | 31.00 B | 31.00 B | ⚪ 0% |
(allocs/op) | 0 allocs | 0 allocs | ⚪ 0% |
BenchmarkRWLocker
Benchmark suite | Previous | Current | Change |
---|---|---|---|
RWLock_rate_2/ (ns/op) | 50.25 ns | 49.41 ns | 🟢 -1.67% |
RWLock_rate_2/ (B/op) | 0.00 B | 0.00 B | ⚪ 0% |
RWLock_rate_2/ (allocs/op) | 0 allocs | 0 allocs | ⚪ 0% |
RWLock_rate_10/ (ns/op) | 44.88 ns | 43.47 ns | 🟢 -3.14% |
RWLock_rate_10/ (B/op) | 0.00 B | 0.00 B | ⚪ 0% |
RWLock_rate_10/ (allocs/op) | 0 allocs | 0 allocs | ⚪ 0% |
RWLock_rate_100/ (ns/op) | 63.08 ns | 59.32 ns | 🟢 -5.96% |
RWLock_rate_100/ (B/op) | 2.00 B | 2.00 B | ⚪ 0% |
RWLock_rate_100/ (allocs/op) | 0 allocs | 0 allocs | ⚪ 0% |
RWLock_rate_1000/ (ns/op) | 91.91 ns | 87.91 ns | 🟢 -4.35% |
RWLock_rate_1000/ (B/op) | 8.00 B | 8.00 B | ⚪ 0% |
RWLock_rate_1000/ (allocs/op) | 0 allocs | 0 allocs | ⚪ 0% |
BenchmarkChange
Benchmark suite | Previous | Current | Change |
---|---|---|---|
Push_10_Changes/ (ns/op) | 4.54 ms | 4.58 ms | 🔴 +0.83% |
Push_10_Changes/ (B/op) | 150.42 KB | 150.36 KB | 🟢 -0.04% |
Push_10_Changes/ (allocs/op) | 1,623 allocs | 1,623 allocs | ⚪ 0% |
Push_100_Changes/ (ns/op) | 16.52 ms | 16.64 ms | 🔴 +0.76% |
Push_100_Changes/ (B/op) | 770.59 KB | 770.72 KB | 🔴 +0.02% |
Push_100_Changes/ (allocs/op) | 8,509 allocs | 8,509 allocs | ⚪ 0% |
Push_1000_Changes/ (ns/op) | 129.20 ms | 130.59 ms | 🔴 +1.08% |
Push_1000_Changes/ (B/op) | 7.22 MB | 7.36 MB | 🔴 +1.95% |
Push_1000_Changes/ (allocs/op) | 79,325 allocs | 79,324 allocs | ⚪ 0% |
Pull_10_Changes/ (ns/op) | 3.70 ms | 3.71 ms | 🔴 +0.28% |
Pull_10_Changes/ (B/op) | 124.59 KB | 124.79 KB | 🔴 +0.17% |
Pull_10_Changes/ (allocs/op) | 1,456 allocs | 1,457 allocs | 🔴 +0.07% |
Pull_100_Changes/ (ns/op) | 5.32 ms | 5.31 ms | 🟢 -0.19% |
Pull_100_Changes/ (B/op) | 354.61 KB | 354.48 KB | 🟢 -0.04% |
Pull_100_Changes/ (allocs/op) | 5,182 allocs | 5,181 allocs | 🟢 -0.02% |
Pull_1000_Changes/ (ns/op) | 10.88 ms | 10.93 ms | 🔴 +0.46% |
Pull_1000_Changes/ (B/op) | 2.20 MB | 2.20 MB | 🟢 -0.18% |
Pull_1000_Changes/ (allocs/op) | 44,681 allocs | 44,682 allocs | ⚪ 0% |
BenchmarkSnapshot
Benchmark suite | Previous | Current | Change |
---|---|---|---|
Push_3KB_snapshot/ (ns/op) | 19.55 ms | 19.01 ms | 🟢 -2.78% |
Push_3KB_snapshot/ (B/op) | 905.58 KB | 906.29 KB | 🔴 +0.08% |
Push_3KB_snapshot/ (allocs/op) | 8,516 allocs | 8,512 allocs | 🟢 -0.05% |
Push_30KB_snapshot/ (ns/op) | 132.18 ms | 138.03 ms | 🔴 +4.42% |
Push_30KB_snapshot/ (B/op) | 8.24 MB | 8.33 MB | 🔴 +1.08% |
Push_30KB_snapshot/ (allocs/op) | 89,008 allocs | 90,477 allocs | 🔴 +1.65% |
Pull_3KB_snapshot/ (ns/op) | 7.80 ms | 7.52 ms | 🟢 -3.64% |
Pull_3KB_snapshot/ (B/op) | 1.12 MB | 1.12 MB | 🟢 -0.02% |
Pull_3KB_snapshot/ (allocs/op) | 20,064 allocs | 20,062 allocs | ⚪ 0% |
Pull_30KB_snapshot/ (ns/op) | 19.91 ms | 19.71 ms | 🟢 -0.99% |
Pull_30KB_snapshot/ (B/op) | 9.31 MB | 9.31 MB | 🟢 -0.05% |
Pull_30KB_snapshot/ (allocs/op) | 193,610 allocs | 193,607 allocs | ⚪ 0% |
BenchmarkSplayTree
Benchmark suite | Previous | Current | Change |
---|---|---|---|
stress_test_100000/ (ns/op) | 0.19 ns | 0.19 ns | 🟢 -1.39% |
stress_test_100000/ (B/op) | 0.00 B | 0.00 B | ⚪ 0% |
stress_test_100000/ (allocs/op) | 0 allocs | 0 allocs | ⚪ 0% |
stress_test_200000/ (ns/op) | 0.40 ns | 0.38 ns | 🟢 -4.30% |
stress_test_200000/ (B/op) | 0.00 B | 0.00 B | ⚪ 0% |
stress_test_200000/ (allocs/op) | 0 allocs | 0 allocs | ⚪ 0% |
stress_test_300000/ (ns/op) | 0.57 ns | 0.57 ns | 🟢 -0.04% |
stress_test_300000/ (B/op) | 0.00 B | 0.00 B | ⚪ 0% |
stress_test_300000/ (allocs/op) | 0 allocs | 0 allocs | ⚪ 0% |
random_access_100000/ (ns/op) | 0.01 ns | 0.01 ns | 🔴 +0.16% |
random_access_100000/ (B/op) | 0.00 B | 0.00 B | ⚪ 0% |
random_access_100000/ (allocs/op) | 0 allocs | 0 allocs | ⚪ 0% |
random_access_200000/ (ns/op) | 0.03 ns | 0.03 ns | 🔴 +2.11% |
random_access_200000/ (B/op) | 0.00 B | 0.00 B | ⚪ 0% |
random_access_200000/ (allocs/op) | 0 allocs | 0 allocs | ⚪ 0% |
random_access_300000/ (ns/op) | 0.04 ns | 0.06 ns | 🔴 +25.35% |
random_access_300000/ (B/op) | 0.00 B | 0.00 B | ⚪ 0% |
random_access_300000/ (allocs/op) | 0 allocs | 0 allocs | ⚪ 0% |
editing_trace_bench/ (ns/op) | 0.00 ns | 0.00 ns | 🔴 +1.58% |
editing_trace_bench/ (B/op) | 0.00 B | 0.00 B | ⚪ 0% |
editing_trace_bench/ (allocs/op) | 0 allocs | 0 allocs | ⚪ 0% |
BenchmarkSync
Benchmark suite | Previous | Current | Change |
---|---|---|---|
memory_sync_10_test/ (ns/op) | 7288.00 ns | 7106.00 ns | 🟢 -2.50% |
memory_sync_10_test/ (B/op) | 1.34 KB | 1.34 KB | 🔴 +0.07% |
memory_sync_10_test/ (allocs/op) | 35 allocs | 35 allocs | ⚪ 0% |
memory_sync_100_test/ (ns/op) | 55353.00 ns | 55257.00 ns | 🟢 -0.17% |
memory_sync_100_test/ (B/op) | 9.51 KB | 9.50 KB | 🟢 -0.08% |
memory_sync_100_test/ (allocs/op) | 268 allocs | 268 allocs | ⚪ 0% |
memory_sync_1000_test/ (ns/op) | 616285.00 ns | 619286.00 ns | 🔴 +0.49% |
memory_sync_1000_test/ (B/op) | 75.92 KB | 75.89 KB | 🟢 -0.04% |
memory_sync_1000_test/ (allocs/op) | 2,111 allocs | 2,110 allocs | 🟢 -0.05% |
memory_sync_10000_test/ (ns/op) | 7.47 ms | 7.74 ms | 🔴 +3.59% |
memory_sync_10000_test/ (B/op) | 761.49 KB | 749.88 KB | 🟢 -1.52% |
memory_sync_10000_test/ (allocs/op) | 20,475 allocs | 20,388 allocs | 🟢 -0.42% |
BenchmarkTextEditing
Benchmark suite | Previous | Current | Change |
---|---|---|---|
(ns/op) | 5.18 s | 5.25 s | 🔴 +1.35% |
(B/op) | 3.92 GB | 3.92 GB | ⚪ 0% |
(allocs/op) | 20,619,777 allocs | 20,619,881 allocs | ⚪ 0% |
BenchmarkTree
Benchmark suite | Previous | Current | Change |
---|---|---|---|
10000_vertices_to_protobuf/ (ns/op) | 4.17 ms | 4.35 ms | 🔴 +4.17% |
10000_vertices_to_protobuf/ (B/op) | 6.36 MB | 6.36 MB | ⚪ 0% |
10000_vertices_to_protobuf/ (allocs/op) | 70,025 allocs | 70,025 allocs | ⚪ 0% |
10000_vertices_from_protobuf/ (ns/op) | 217.30 ms | 222.74 ms | 🔴 +2.50% |
10000_vertices_from_protobuf/ (B/op) | 442.30 MB | 442.30 MB | ⚪ 0% |
10000_vertices_from_protobuf/ (allocs/op) | 290,038 allocs | 290,039 allocs | ⚪ 0% |
20000_vertices_to_protobuf/ (ns/op) | 8.84 ms | 9.15 ms | 🔴 +3.56% |
20000_vertices_to_protobuf/ (B/op) | 12.89 MB | 12.89 MB | ⚪ 0% |
20000_vertices_to_protobuf/ (allocs/op) | 140,028 allocs | 140,028 allocs | ⚪ 0% |
20000_vertices_from_protobuf/ (ns/op) | 884.61 ms | 873.50 ms | 🟢 -1.26% |
20000_vertices_from_protobuf/ (B/op) | 1.70 GB | 1.70 GB | ⚪ 0% |
20000_vertices_from_protobuf/ (allocs/op) | 580,043 allocs | 580,043 allocs | ⚪ 0% |
30000_vertices_to_protobuf/ (ns/op) | 14.26 ms | 13.72 ms | 🟢 -3.80% |
30000_vertices_to_protobuf/ (B/op) | 18.98 MB | 18.98 MB | ⚪ 0% |
30000_vertices_to_protobuf/ (allocs/op) | 210,029 allocs | 210,029 allocs | ⚪ 0% |
30000_vertices_from_protobuf/ (ns/op) | 2.00 s | 1.99 s | 🟢 -0.66% |
30000_vertices_from_protobuf/ (B/op) | 3.75 GB | 3.75 GB | ⚪ 0% |
30000_vertices_from_protobuf/ (allocs/op) | 870,147 allocs | 870,143 allocs | ⚪ 0% |
BenchmarkVersionVector
Benchmark suite | Previous | Current | Change |
---|---|---|---|
clients_10/ (ns/op) | 160.21 ms | 160.71 ms | 🔴 +0.31% |
clients_10/ (1_changepack(bytes)) | 745.00 B | 745.00 B | ⚪ 0% |
clients_10/ (2_snapshot(bytes)) | 379.00 B | 379.00 B | ⚪ 0% |
clients_10/ (3_pushpull(ms)) | 8.00 ms | 7.00 ms | 🟢 -12.50% |
clients_10/ (4_attach(ms)) | 6.00 ms | 6.00 ms | ⚪ 0% |
clients_10/ (5_changepack_after_detach(bytes)) | 805.00 B | 805.00 B | ⚪ 0% |
clients_10/ (6_snapshot_after_detach(bytes)) | 136.00 B | 136.00 B | ⚪ 0% |
clients_10/ (7_pushpull_after_detach(ms)) | 8.00 ms | 8.00 ms | ⚪ 0% |
clients_10/ (B/op) | 19.93 MB | 20.65 MB | 🔴 +3.62% |
clients_10/ (allocs/op) | 83,762 allocs | 83,626 allocs | 🟢 -0.16% |
clients_100/ (ns/op) | 1.41 s | 1.40 s | 🟢 -0.82% |
clients_100/ (1_changepack(bytes)) | 6.14 KB | 6.14 KB | ⚪ 0% |
clients_100/ (2_snapshot(bytes)) | 3.08 KB | 3.08 KB | ⚪ 0% |
clients_100/ (3_pushpull(ms)) | 11.00 ms | 11.00 ms | ⚪ 0% |
clients_100/ (4_attach(ms)) | 11.00 ms | 6.00 ms | 🟢 -45.45% |
clients_100/ (5_changepack_after_detach(bytes)) | 6.21 KB | 6.21 KB | ⚪ 0% |
clients_100/ (6_snapshot_after_detach(bytes)) | 137.00 B | 137.00 B | ⚪ 0% |
clients_100/ (7_pushpull_after_detach(ms)) | 9.00 ms | 9.00 ms | ⚪ 0% |
clients_100/ (B/op) | 230.31 MB | 216.31 MB | 🟢 -6.08% |
clients_100/ (allocs/op) | 1,539,768 allocs | 1,358,646 allocs | 🟢 -11.76% |
clients_1000/ (ns/op) | 60.97 s | 35.99 s | 🟢 -40.98% |
clients_1000/ (1_changepack(bytes)) | 60.16 KB | 60.16 KB | ⚪ 0% |
clients_1000/ (2_snapshot(bytes)) | 30.08 KB | 30.08 KB | ⚪ 0% |
clients_1000/ (3_pushpull(ms)) | 95.00 ms | 93.00 ms | 🟢 -2.11% |
clients_1000/ (4_attach(ms)) | 249.00 ms | 10.00 ms | 🟢 -95.98% |
clients_1000/ (5_changepack_after_detach(bytes)) | 60.22 KB | 60.22 KB | ⚪ 0% |
clients_1000/ (6_snapshot_after_detach(bytes)) | 139.00 B | 139.00 B | ⚪ 0% |
clients_1000/ (7_pushpull_after_detach(ms)) | 26.00 ms | 21.00 ms | 🟢 -19.23% |
clients_1000/ (B/op) | 22.07 GB | 6.64 GB | 🟢 -69.91% |
clients_1000/ (allocs/op) | 111,762,106 allocs | 77,888,894 allocs | 🟢 -30.31% |
What this PR does / why we need it:
Test benchmark ci
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:
Additional documentation:
Checklist:
Summary by CodeRabbit