|
01f1d5850f
|
Create a Node0 when splitting existing partial key
|
2024-03-11 18:20:14 -07:00 |
|
|
cd567383c3
|
Only keep the assume's that actually improve codegen
|
2024-03-10 14:34:55 -07:00 |
|
|
53a442abf9
|
Use the assume attribute for gcc
|
2024-03-10 14:22:47 -07:00 |
|
|
6e212847ac
|
Add assume macro
Tests / Release [gcc] total: 827, passed: 827
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Tests / Release [gcc,aarch64] total: 826, passed: 826
Tests / Coverage total: 825, passed: 825
weaselab/conflict-set/pipeline/head This commit looks good
Validated with cachegrind that this reduces instructions executed
|
2024-03-09 19:45:54 -08:00 |
|
|
44a023c2f4
|
Bound individual size of allocation to put in free list
Tests / Release [gcc] total: 827, passed: 827
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Tests / Release [gcc,aarch64] total: 826, passed: 826
Tests / Coverage total: 825, passed: 825
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-03-08 22:41:18 -08:00 |
|
|
e32bea7b29
|
Enforce free list memory bound by tracking bytes directly
|
2024-03-08 22:30:38 -08:00 |
|
|
504a93bb10
|
Track partialKeyCapacity
If we use partialKeyLen, then the difference between partialKeyCapacity
and partialKeyLen will slowly grow. We have 3 padding bytes in Node now.
|
2024-03-08 21:42:26 -08:00 |
|
|
b79d8f71d3
|
Replace destructor call with static assert
Tests / Release [gcc] total: 827, passed: 827
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Tests / Release [gcc,aarch64] total: 826, passed: 826
Tests / Coverage total: 825, passed: 825
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-03-08 17:17:12 -08:00 |
|
|
34430dbbe7
|
Remove longestCommonPrefixPartialKey
|
2024-03-08 17:14:45 -08:00 |
|
|
06fcb2531e
|
Add an analysis on memory usage in static asserts
Tests / Release [gcc] total: 827, passed: 827
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Tests / Release [gcc,aarch64] total: 826, passed: 826
Tests / Coverage total: 825, passed: 825
weaselab/conflict-set/pipeline/head This commit looks good
CC #9
|
2024-03-08 17:04:22 -08:00 |
|
|
bd24a362e3
|
Remove dead code and fix whitespace issue
|
2024-03-08 16:44:42 -08:00 |
|
|
1437280ec7
|
Attempt valgrind fix
Tests / Release [gcc] total: 827, passed: 827
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Tests / Release [gcc,aarch64] total: 826, passed: 826
Tests / Coverage total: 825, passed: 825
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-03-08 15:00:40 -08:00 |
|
|
e5051bac9e
|
Clean up some vestiges of fixed-size partial keys
Tests / Release [gcc] total: 827, passed: 827
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|0|:clap:
Tests / Release [gcc,aarch64] total: 826, passed: 826
Tests / Coverage total: 825, failed: 1, passed: 824
weaselab/conflict-set/pipeline/head There was a failure building this commit
|
2024-03-08 14:56:16 -08:00 |
|
|
3fb8bf7c3b
|
Bring back custom allocator
|
2024-03-08 14:43:18 -08:00 |
|
|
0c8cb8faa5
|
Add specializations for partialKey()
|
2024-03-08 14:01:56 -08:00 |
|
|
93e487c8fb
|
Only track partialKeyCapacity in tests
|
2024-03-08 13:58:40 -08:00 |
|
|
d91538dcad
|
Variable length partial keys
|
2024-03-08 13:50:40 -08:00 |
|
|
43a768d152
|
Reorder some Node fields
|
2024-03-08 13:33:38 -08:00 |
|
|
2989866a6d
|
Move type field to end of Node
|
2024-03-08 13:29:02 -08:00 |
|
|
60df97847c
|
Fix missed memcpy update
Everything should be in terms of kNodeCopyBegin and kNodeCopySize now
|
2024-03-08 13:23:43 -08:00 |
|
|
0038382661
|
Prepare to bitpack node fields if desired
|
2024-03-08 13:11:46 -08:00 |
|
|
782abc70d6
|
Remove custom allocator
To prepare for variable size partial keys
|
2024-03-08 13:02:33 -08:00 |
|
|
8802d17acd
|
Remove Node::Invalid
|
2024-03-08 12:57:06 -08:00 |
|
|
02afd47d8f
|
Node1 -> Node0
|
2024-03-08 12:07:47 -08:00 |
|
|
87dd70c4b6
|
Fix bug introduced in 5e1fb1dac5
Tests / Release [gcc] total: 704, passed: 704
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|1|0|1|0|:zzz:
Tests / Release [gcc,aarch64] total: 703, passed: 703
Tests / Coverage total: 702, passed: 702
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-03-07 17:43:34 -08:00 |
|
|
a8042ab20d
|
Simplify firstGeq - make it not stepwise
Tests / Release [gcc] total: 704, passed: 704
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/66//gcc">weaselab » conflict-set » main #66</a>
Tests / Release [gcc,aarch64] total: 703, passed: 703
Tests / Coverage total: 702, passed: 702
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-03-07 16:05:38 -08:00 |
|
|
1519216d08
|
Replace is_pod_v with is_trivial_v
Tests / Release [gcc] total: 704, passed: 704
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|0|0|0|1|:clap:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/65//gcc">weaselab » conflict-set » main #65</a>
Tests / Release [gcc,aarch64] total: 703, passed: 703
Tests / Coverage total: 702, passed: 702
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-03-07 14:26:01 -08:00 |
|
|
f2cd05c29d
|
Move Node::type to beginning of Node
Tests / Release [gcc] total: 704, passed: 704
GNU C Compiler (gcc) |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|1|1|0|0|:-1:
Reference build: <a href="https://jenkins.weaselab.dev/job/weaselab/job/conflict-set/job/main/64//gcc">weaselab » conflict-set » main #64</a>
Tests / Release [gcc,aarch64] total: 703, passed: 703
Tests / Coverage total: 702, passed: 702
weaselab/conflict-set/pipeline/head This commit looks good
This prepares us to have a variable size leaf type
|
2024-03-07 14:17:14 -08:00 |
|
|
5e1fb1dac5
|
Use entry bytes in partial key if entry not present
Closes #8
|
2024-03-07 13:47:37 -08:00 |
|
|
d1a6b293e9
|
Revert "Add getChildNodeGeq, use in nextLogical"
Tests / Release [gcc] total: 704, passed: 704
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/63//gcc">weaselab » conflict-set » main #63</a>
Tests / Release [gcc,aarch64] total: 703, passed: 703
Tests / Coverage total: 702, passed: 702
weaselab/conflict-set/pipeline/head This commit looks good
This reverts commit 53bc36f628 .
Apparently this used more instructions. Not sure I understand.
|
2024-03-07 12:41:34 -08:00 |
|
|
be43143891
|
Tidying
Tests / Release [gcc] total: 704, passed: 704
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/62//gcc">weaselab » conflict-set » main #62</a>
Tests / Release [gcc,aarch64] total: 703, passed: 703
Tests / Coverage total: 702, passed: 702
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-03-07 12:33:34 -08:00 |
|
|
53bc36f628
|
Add getChildNodeGeq, use in nextLogical
|
2024-03-07 12:12:02 -08:00 |
|
|
be5f1b67c8
|
Interface change! addWrites now takes a single write version
Tests / Release [gcc] total: 704, passed: 704
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/57//gcc">weaselab » conflict-set » main #57</a>
Tests / Release [gcc,aarch64] total: 703, passed: 703
Tests / Coverage total: 702, passed: 702
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-03-05 16:55:27 -08:00 |
|
|
ec3aec4dff
|
Assume writeVersion highest-ever to avoid max calculation
This is measurably faster
|
2024-03-05 16:06:50 -08:00 |
|
|
760a99098a
|
Improve coverage slightly
Tests / Release [gcc] total: 704, passed: 704
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/48//gcc">weaselab » conflict-set » main #48</a>
Tests / Coverage total: 702, passed: 702
weaselab/conflict-set/pipeline/head This commit looks good
By moving test-only code to a test-only region. Also the skip_list
shared lib can depend on libstdc++ etc.
|
2024-03-04 17:04:06 -08:00 |
|
|
e6a88852b3
|
Add comment explaining interface of maxBetweenExclusive
Tests / Release [gcc] total: 704, passed: 704
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/47//gcc">weaselab » conflict-set » main #47</a>
Tests / Coverage total: 702, passed: 702
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-03-04 16:47:30 -08:00 |
|
|
a4b03bc216
|
Add example augmented radix tree figure
Tests / Release [gcc] total: 704, passed: 704
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/45//gcc">weaselab » conflict-set » main #45</a>
Tests / Coverage total: 702, passed: 702
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-29 16:35:07 -08:00 |
|
|
68bd39e130
|
Put skip list in its own shared lib
weaselab/conflict-set/pipeline/head There was a failure building this commit
Now we can right benchmarks against one api, and just change the library
path
|
2024-02-27 12:02:01 -08:00 |
|
|
25a1226667
|
Fix setOldestVersion bug
We should update the oldest version even if we don't have enough
keyUpdates to do
|
2024-02-27 10:59:59 -08:00 |
|
|
f38198a39d
|
Amortize cost of pausing gc in setOldestVersion
|
2024-02-26 19:23:29 -08:00 |
|
|
3f45535f89
|
Fix setOldestVersion
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/40//gcc">weaselab » conflict-set » main #40</a>
Tests / Coverage total: 469, passed: 469
weaselab/conflict-set/pipeline/head This commit looks good
We were not accumulating keyUpdates strictly faster than we were
spending them for a monotonically increasing workload.
|
2024-02-26 13:51:03 -08:00 |
|
|
2b0dbabb5c
|
Add public showMemory symbol (when SHOW_MEMORY=1)
|
2024-02-26 13:48:20 -08:00 |
|
|
be7f643f14
|
Add Node1 and SHOW_MEMORY
|
2024-02-26 12:25:06 -08:00 |
|
|
6a08bdd40e
|
Add bitSet asserts for Node256 paths
|
2024-02-26 10:58:16 -08:00 |
|
|
333ac74d91
|
Use forEachInRange for overfill for Node48
|
2024-02-26 10:55:50 -08:00 |
|
|
17ac9b38fb
|
Use forEachInRange in setChildrenParents
|
2024-02-26 10:37:28 -08:00 |
|
|
172dd40648
|
Check for full words on boundaries
|
2024-02-26 10:36:45 -08:00 |
|
|
c97c7eee8e
|
Speed up sparse queries
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/39//gcc">weaselab » conflict-set » main #39</a>
Tests / Coverage total: 469, passed: 469
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-25 23:08:01 -08:00 |
|
|
9fcfc44dc3
|
Add forEachInRange
|
2024-02-25 21:04:39 -08:00 |
|
|
0d3475e229
|
Use uint64_t array and fewer branches in BitSet
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/38//gcc">weaselab » conflict-set » main #38</a>
Tests / Coverage total: 469, passed: 469
weaselab/conflict-set/pipeline/head This commit looks good
|
2024-02-24 18:20:00 -08:00 |
|