andrew
c46f633dbf
Skip sorting if already sorted for skip list
2024-11-12 13:25:29 -08:00
andrew
400350946c
Point read/write workload for server_bench
2024-11-12 10:50:03 -08:00
andrew
607a4ef6e2
Require musttail and preserve_none for interleaved
2024-11-11 21:40:05 -08:00
andrew
b0750772ec
Don't do hardening check if cross compiling
2024-11-11 16:56:28 -08:00
andrew
86abc02188
Build binaries compatible with cf-protection
2024-11-11 16:17:57 -08:00
andrew
a90e353fcd
Use llvm-objcopy if using clang and it's available
...
This works around a weird error I was getting when trying to link a
translation unit that included Internal.h with libconflict-set-static.a
with clang + gnu objcopy
2024-11-11 12:09:36 -08:00
andrew
f85b92f8db
Improve next{Physical,Logical} codegen
2024-11-09 13:21:36 -08:00
andrew
3c44614311
Allocate from freelist with min/max capacity constraints
2024-11-08 21:35:13 -08:00
andrew
9c1ac3702e
Move index closer to start of Node{3,16}
...
This should slightly improve cache hit rate
2024-11-08 20:54:00 -08:00
andrew
224d21648a
Make server_bench workload point writes of tuple-encoded keys
2024-11-08 20:50:54 -08:00
andrew
33f9c89328
Try reduceLog: true
2024-11-04 17:03:24 -08:00
andrew
12c2d5eb95
Try not logging ctest output to stdout
2024-11-04 15:36:50 -08:00
andrew
db357e747d
Add __mem{cpy,set}_chk to allowed symbol imports
2024-11-04 15:08:25 -08:00
andrew
4494359ca2
Make insert_iterations for interleaved writes more closely match
2024-11-04 14:46:30 -08:00
andrew
f079d84bda
Update README
2024-11-04 14:33:43 -08:00
andrew
724ec09248
Add to corpus
2024-11-04 14:30:12 -08:00
andrew
4eaad39294
Maintain capacity invariant strictly
2024-11-04 13:43:02 -08:00
andrew
891100e649
Add to corpus
2024-11-01 21:32:00 -07:00
andrew
22e55309be
Update benchmarks
2024-11-01 17:50:03 -07:00
andrew
d6269c5b7c
Use interleaved even if preserve_none is missing
2024-11-01 15:12:59 -07:00
andrew
faacdff2d9
Add to corpus
2024-11-01 14:11:43 -07:00
andrew
821179b8de
Remove dead code
2024-11-01 13:48:32 -07:00
andrew
681a961289
Dispatch on type pairs for end iter
2024-11-01 13:45:41 -07:00
andrew
c73a3da14c
Dispatch on type pairs for begin iter
2024-11-01 12:46:36 -07:00
andrew
5153d25cce
Dispatch on type pairs for common prefix iter
2024-11-01 12:06:48 -07:00
andrew
d2ec4e7fae
Fix use of wrong member in endIter
2024-11-01 11:17:26 -07:00
andrew
c7e2358746
Add memcmp to aarch64 imports
2024-10-31 15:36:19 -07:00
andrew
ec1c1cf43f
Run gc less frequently
...
But still run it to account for the version potentially increasing
2024-10-31 15:35:00 -07:00
andrew
eaad0c69a7
Store Result* pointer instead of index
2024-10-31 12:59:36 -07:00
andrew
309e6ab816
Dispatch on pair of types
2024-10-30 22:59:00 -07:00
andrew
12b82c1be5
Fix accidentally-checked-in debug change
2024-10-30 16:44:00 -07:00
andrew
0cce9df8a8
Use constexpr int instead of sizeof
2024-10-30 15:36:46 -07:00
andrew
0df09743da
Don't assign to nextRangeWrite twice
2024-10-30 15:33:40 -07:00
andrew
c4b0aa1085
Skip over point writes in phase 3
2024-10-30 15:08:27 -07:00
andrew
051bfb05fe
Fix up DEBUG_VERBOSE
2024-10-30 14:50:34 -07:00
andrew
7e1bcbf9be
Follow forwarding pointers for end before addWriteRange
2024-10-30 14:26:37 -07:00
andrew
4e685bbc3b
Use deferred release instead of hacky dontInvalidate logic
2024-10-30 14:16:36 -07:00
andrew
b6bfc6f48d
Remove redundant int conversions
2024-10-30 11:48:55 -07:00
andrew
3b858551f3
Switch std::span<const uint8_t> to TrivialSpan
2024-10-30 11:45:56 -07:00
andrew
2c1c26bc88
Enable interleaved range writes
2024-10-30 11:01:23 -07:00
andrew
958ee15cfc
Use forwarding pointers instead of beginIsPrefix
2024-10-29 20:43:58 -07:00
andrew
9015b555de
Allow passing two roots to addWriteRange
2024-10-29 17:24:10 -07:00
andrew
7aac73ee80
Process acceptable subranges interleaved
2024-10-29 14:41:42 -07:00
andrew
c06afeb81e
Add to corpus
2024-10-29 11:59:36 -07:00
andrew
b015711b7c
Fix write metrics for interleaved implementation
2024-10-29 10:42:22 -07:00
andrew
f27ca6d6af
Better support a lack of musttail and preserve_none
2024-10-28 22:40:52 -07:00
andrew
c0bb175b7e
Remove interleaved_insert::begin
2024-10-28 22:17:52 -07:00
andrew
6a6fe5738a
Improve "complete" codegen for interleaved state machines
2024-10-28 22:15:05 -07:00
andrew
dc16eccf06
Use stack allocation for small counts
2024-10-28 21:51:20 -07:00
andrew
3f15db7e82
Avoid longestCommonPrefix if partialKeyLen == 0
2024-10-28 21:44:16 -07:00