|
116c79d3de
|
Optimize getOrCreateChild
Add fast path for if it exists
Avoid some unnecessary branches
Try to simplify some
|
2024-02-23 12:34:28 -08:00 |
|
|
aaf0283f66
|
Prefer getChild to getChildGeq in happy path
Saves instructions according to cachegrind
|
2024-02-23 12:12:01 -08:00 |
|
|
259f47664a
|
Save some instructions in getOrCreateChild
Tests / Release [gcc] total: 471, passed: 471
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/35//gcc">weaselab » conflict-set » main #35</a>
Tests / Coverage total: 469, passed: 469
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-22 22:46:08 -08:00 |
|
|
9a47f2d03a
|
Fixed missed usages of longestCommonPrefixPartialKey
Tests / Release [gcc] total: 471, passed: 471
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/34//gcc">weaselab » conflict-set » main #34</a>
Tests / Coverage total: 469, passed: 469
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-22 16:24:26 -08:00 |
|
|
b5d5085fd5
|
Add precondition back to firstNeqStride
|
2024-02-22 16:16:42 -08:00 |
|
|
40dca168ba
|
Add precondition to longestCommonPrefixPartialKey
Tests / Release [gcc] total: 471, passed: 471
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/33//gcc">weaselab » conflict-set » main #33</a>
Tests / Coverage total: 469, passed: 469
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-22 16:07:20 -08:00 |
|
|
7a8233ac61
|
More unnesting
|
2024-02-22 15:50:54 -08:00 |
|
|
3c93b9a3ce
|
Unnest some in checkPointRead
|
2024-02-22 15:43:13 -08:00 |
|
|
c16feda9f8
|
Use longestCommonPrefixPartialKey in SearchStepWise
|
2024-02-22 15:41:39 -08:00 |
|
|
4c3e7aef30
|
Save a few instructions in SearchStepWise
|
2024-02-22 15:30:24 -08:00 |
|
|
7f5598af2b
|
Save a few instructions in addWriteRange
|
2024-02-22 15:25:50 -08:00 |
|
|
8016d44c04
|
Use simple loop for longestCommonPrefixPartialKey
The benchmark has this as faster
|
2024-02-22 14:49:04 -08:00 |
|
|
505c060a28
|
Use longestCommonPrefixPartialKey in insert
|
2024-02-22 14:46:52 -08:00 |
|
|
608b4fb6c7
|
Remove some branches
|
2024-02-22 14:29:24 -08:00 |
|
|
0fbc8b0190
|
Use longestCommonPrefix on partial keys
|
2024-02-22 13:57:00 -08:00 |
|
|
3a5db2d2ac
|
Share some Node4/16 and Node48/256 implementations
This cuts down on the number of instructions (confirmed with
cachegrind). Also avoid initializing some memory unnecessarily.
|
2024-02-22 12:31:10 -08:00 |
|
|
09782ba833
|
Fix O(k^2) behavior when begin is a prefix of end
Tests / Release [gcc] total: 583, passed: 583
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/32//gcc">weaselab » conflict-set » main #32</a>
Tests / Coverage total: 581, passed: 581
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-21 20:11:37 -08:00 |
|
|
3750aa7b5b
|
Vendor valgrind headers
Tests / Release [gcc] total: 583, passed: 583
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/31//gcc">weaselab » conflict-set » main #31</a>
Tests / Coverage total: 581, passed: 581
weaselab/conflict-set/pipeline/head This commit looks good
This is encouraged according to https://valgrind.org/docs/manual/manual-core-adv.html#manual-core-adv.clientreq
|
2024-02-21 16:15:40 -08:00 |
|
|
28e61340f4
|
Add valgrind annotations
Tests / Release [gcc] total: 583, passed: 583
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/30//gcc">weaselab » conflict-set » main #30</a>
Tests / Coverage total: 581, passed: 581
weaselab/conflict-set/pipeline/head This commit looks good
This appears to affect the binary (how else could it possibly work??),
but the microbenchmarks don't show a difference
|
2024-02-21 15:58:01 -08:00 |
|
|
07839b4687
|
Fix class-memaccess warning
Tests / Release [gcc] total: 583, passed: 583
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|4|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/29//gcc">weaselab » conflict-set » main #29</a>
Tests / Coverage total: 581, passed: 581
weaselab/conflict-set/pipeline/head This commit looks good
The lifetime of T ended, so it's appropriate to treat it as a void*
|
2024-02-21 15:27:46 -08:00 |
|
|
af269ff208
|
Use a free list
Tests / Release [gcc] total: 583, passed: 583
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|4|4|0|0|:-1:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/27//gcc">weaselab » conflict-set » main #27</a>
Tests / Coverage total: 581, passed: 581
weaselab/conflict-set/pipeline/head This commit looks good
malloc and free were showing up in profiles of fdbserver
|
2024-02-21 13:51:02 -08:00 |
|
|
7e6652003b
|
Remove vestigial arena
|
2024-02-21 12:06:57 -08:00 |
|
|
48d96ac79a
|
Only pass key to addPointWrite
Tests / Release [gcc] total: 583, passed: 583
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/26//gcc">weaselab » conflict-set » main #26</a>
Tests / Coverage total: 581, passed: 581
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-20 23:16:03 -08:00 |
|
|
a341b36f63
|
Detect singleton key ranges
Tests / Release [gcc] total: 583, passed: 583
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/25//gcc">weaselab » conflict-set » main #25</a>
Tests / Coverage total: 581, passed: 581
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-20 23:09:03 -08:00 |
|
|
4cbbeab55d
|
Remove dead code
Tests / Release [gcc] total: 583, passed: 583
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/23//gcc">weaselab » conflict-set » main #23</a>
Tests / Coverage total: 581, passed: 581
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-20 15:30:07 -08:00 |
|
|
06f92722f0
|
Add license
Tests / Release [gcc] total: 583, passed: 583
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/22//gcc">weaselab » conflict-set » main #22</a>
Tests / Coverage total: 581, passed: 581
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-20 13:22:22 -08:00 |
|
|
ae5277bf78
|
Interleave checking left and right side
Tests / Release [gcc] total: 583, passed: 583
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/20//gcc">weaselab » conflict-set » main #20</a>
Tests / Coverage total: 581, passed: 581
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-20 11:28:58 -08:00 |
|
|
c4e18d71a2
|
CheckRangeRightSide struct
|
2024-02-20 11:12:10 -08:00 |
|
|
33390af817
|
CheckRangeLeftSide struct
|
2024-02-20 11:04:12 -08:00 |
|
|
01a29b69b1
|
Explain assert
|
2024-02-19 16:25:15 -08:00 |
|
|
cb2f66b4b7
|
Remove a check from setOldestVersion
|
2024-02-19 16:20:04 -08:00 |
|
|
c9baa80212
|
Implement setOldestVersion
|
2024-02-19 15:58:59 -08:00 |
|
|
79390b806c
|
Don't repeat common prefix search in addWriteRange
Tests / Release [gcc] total: 423, passed: 423
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/18//gcc">weaselab » conflict-set » main #18</a>
Tests / Coverage total: 421, passed: 421
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-18 10:43:41 -08:00 |
|
|
cb31f4c25b
|
Fix bugs
Tests / Release [gcc] total: 423, passed: 423
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/17//gcc">weaselab » conflict-set » main #17</a>
Tests / Coverage total: 421, passed: 421
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-17 22:09:00 -08:00 |
|
|
0799aea3e8
|
Move newly test-only code
|
2024-02-16 18:35:28 -08:00 |
|
|
69a1b9099d
|
Share common prefix search in addWriteRange
|
2024-02-16 17:50:21 -08:00 |
|
|
c20d0c5581
|
Move addWriteRange into its own function
|
2024-02-16 17:15:35 -08:00 |
|
|
eb96833eb0
|
Use sparse scan under a threshold
Tests / Release [gcc] total: 375, passed: 375
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/16//gcc">weaselab » conflict-set » main #16</a>
Tests / Coverage total: 373, passed: 373
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-15 17:20:25 -08:00 |
|
|
4506b460eb
|
Speed up maxBetweenExclusive
|
2024-02-15 17:03:19 -08:00 |
|
|
642003fe4f
|
Remove dead code
Tests / Release [gcc] total: 363, passed: 363
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/15//gcc">weaselab » conflict-set » main #15</a>
Tests / Coverage total: 361, passed: 361
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-15 15:03:33 -08:00 |
|
|
4325d89cf2
|
Implement checkRangeRightSide
|
2024-02-15 15:00:16 -08:00 |
|
|
ab9c9a57fa
|
Implement checkRangeLeftSide
|
2024-02-15 14:33:12 -08:00 |
|
|
d565f75e0e
|
Share search of common prefix
Tests / Release [gcc] total: 363, passed: 363
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/14//gcc">weaselab » conflict-set » main #14</a>
Tests / Coverage total: 361, passed: 361
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-15 11:54:34 -08:00 |
|
|
5a2b734d16
|
Match planned order better
|
2024-02-15 11:47:01 -08:00 |
|
|
c2193fdba0
|
Implement new checkRangeRead idea
|
2024-02-15 11:37:08 -08:00 |
|
|
98dccf5c23
|
WIP checkLeftOfPyramid seems to be correct
|
2024-02-14 17:01:00 -08:00 |
|
|
838d08c70b
|
WIP checkRightOfPyramid seems to be correct
|
2024-02-14 16:11:57 -08:00 |
|
|
c9b35241e1
|
Factor out "maxRightOf"
|
2024-02-14 12:05:33 -08:00 |
|
|
c131398af6
|
Remove dead code
|
2024-02-14 11:37:11 -08:00 |
|
|
0d9e184bac
|
Prepare to skip right of c in "left side of pyramid"
|
2024-02-13 18:49:24 -08:00 |
|