andrew
|
394f09f9fb
|
WIP adding metrics to skiplist
|
2024-08-30 16:06:43 -07:00 |
|
andrew
|
5e06a30357
|
Add optional microbenchmarks for rezero/scan avx512
|
2024-08-29 12:12:24 -07:00 |
|
andrew
|
cb6e4292f2
|
Add to corpus
|
2024-08-26 14:33:16 -07:00 |
|
andrew
|
154a48ded0
|
Bump version
|
2024-08-26 14:25:13 -07:00 |
|
andrew
|
c11b4714b5
|
Check more preconditions in Debug mode
v0.0.13
|
2024-08-26 12:43:07 -07:00 |
|
andrew
|
bc13094406
|
Don't violate precondition in test_conflict_set.py
|
2024-08-26 11:13:16 -07:00 |
|
andrew
|
c9d742b696
|
Make explicit the precondition that versions must be <= latest version
|
2024-08-24 13:43:39 -07:00 |
|
andrew
|
795ae7cb01
|
Internal.h doesn't need to include <vector>
|
2024-08-24 10:38:07 -07:00 |
|
andrew
|
849e2d3e5c
|
Remove unused code
|
2024-08-22 22:31:36 -07:00 |
|
andrew
|
1560037680
|
Remove unused struct
|
2024-08-22 17:55:54 -07:00 |
|
andrew
|
764c31bbc8
|
Run skip list gc at 200% entry insertion rate
|
2024-08-22 17:26:08 -07:00 |
|
andrew
|
ee3361952a
|
Use better rng in skip list
low bits of lcg have low periods
|
2024-08-22 17:00:15 -07:00 |
|
andrew
|
8a04e57353
|
Add to corpus
|
2024-08-22 16:52:33 -07:00 |
|
andrew
|
7f86fdee66
|
Test 64 bit versions
Keep 32 bit versions the default though
|
2024-08-21 14:00:00 -07:00 |
|
andrew
|
442755d0a6
|
Update implementation notes
This doesn't really capture the complexity, but at least it's more
accurate
|
2024-08-21 14:00:00 -07:00 |
|
andrew
|
e15b3bb137
|
Bump version
|
2024-08-20 16:58:39 -07:00 |
|
andrew
|
311794c37e
|
Update GCOVR annotations now that jenkins agent has avx512
v0.0.12
|
2024-08-20 16:34:27 -07:00 |
|
andrew
|
dfa178ba19
|
Add to corpus (from fuzzing on macos)
|
2024-08-20 13:32:04 -07:00 |
|
andrew
|
a16d18edfe
|
Update README.md
|
2024-08-20 12:03:27 -07:00 |
|
andrew
|
2b60287448
|
Partition valgrind into tests of size at most 100
|
2024-08-20 11:35:20 -07:00 |
|
andrew
|
0a9ac59676
|
Commit to non-simd Node3 implementations
|
2024-08-20 10:36:04 -07:00 |
|
andrew
|
e3a77ed773
|
Remove unnecessary casts
|
2024-08-20 10:30:27 -07:00 |
|
andrew
|
cdf9a8a7b0
|
Save 8 bytes in Node3
|
2024-08-20 10:30:07 -07:00 |
|
andrew
|
305dfdd52f
|
Change whitespace in node structs for consistency
|
2024-08-20 09:57:44 -07:00 |
|
andrew
|
7261c91492
|
Remove Node48::nextFree, and improve padding to save 8 bytes
|
2024-08-20 09:51:29 -07:00 |
|
andrew
|
f11720f5ae
|
Add to corpus
|
2024-08-19 21:52:47 -07:00 |
|
andrew
|
e2b7298af5
|
Instrument setOldestVersion for callgrind too
|
2024-08-19 21:32:04 -07:00 |
|
andrew
|
8e1e344f4b
|
Fix clang-18 warning about std::basic_string<uint8_t>
|
2024-08-17 16:40:32 -07:00 |
|
andrew
|
3634b6a59b
|
Simplify slightly in checkMaxBetweenExclusive
|
2024-08-17 14:34:13 -07:00 |
|
andrew
|
a3cc14c807
|
Fix double counting of remove node in showMemory mode
|
2024-08-17 13:43:47 -07:00 |
|
andrew
|
55b3275434
|
ifdef linux specific stuff
|
2024-08-16 16:23:46 -07:00 |
|
andrew
|
3a5b86ed9e
|
Ignore itlb in grafana instead
|
2024-08-16 16:02:01 -07:00 |
|
andrew
|
159f2eef74
|
Use group leader fd
Events in the same group should be associated with the same set of
instructions
|
2024-08-16 15:35:35 -07:00 |
|
andrew
|
2952abe811
|
Reorg headers and only print unexpected errno's
|
2024-08-16 14:25:41 -07:00 |
|
andrew
|
ce54746a4a
|
Add several new cache events to metrics
|
2024-08-16 12:48:22 -07:00 |
|
andrew
|
b15959d62c
|
Add more perf counters
|
2024-08-16 10:57:00 -07:00 |
|
andrew
|
b009de1c2b
|
Avoid branching on type twice in erase
|
2024-08-16 09:29:22 -07:00 |
|
andrew
|
55a230c75e
|
Remove dontInvalidate arg from erase
Use a new node member "endOfRange" instead
|
2024-08-16 09:08:56 -07:00 |
|
andrew
|
0711ec3831
|
Remove dead code
|
2024-08-15 20:19:00 -07:00 |
|
andrew
|
0280bd77e5
|
Skip "dontInvalidate" check in erase from gc
|
2024-08-15 19:07:53 -07:00 |
|
andrew
|
359f6f0042
|
Update README benchmarks
|
2024-08-15 18:53:42 -07:00 |
|
andrew
|
aa8504ddba
|
Add to corpus
|
2024-08-15 18:47:47 -07:00 |
|
andrew
|
fb7cf18f9b
|
Add some comments about safety of calling maxVersion
|
2024-08-15 17:35:55 -07:00 |
|
andrew
|
b808b97940
|
Remove a bunch of impl plumbing
By making it a precondition that nodes aren't the root for certain
functions
|
2024-08-15 17:15:37 -07:00 |
|
andrew
|
e480f66846
|
Have caller ensure root max version for insert
|
2024-08-15 17:05:10 -07:00 |
|
andrew
|
d5bc9221a0
|
Simplify addWriteRange slightly
|
2024-08-15 16:59:28 -07:00 |
|
andrew
|
9d23b81d6f
|
Bring in some of the changes from erase-between branch
|
2024-08-15 16:55:26 -07:00 |
|
andrew
|
0740dcad43
|
Strengthen checkMemoryBoundInvariants check for Node0
I think this is probably checked elsewhere, but let's check here too for
consistency
|
2024-08-14 14:28:28 -07:00 |
|
andrew
|
176df61321
|
Simplify handling of beginNode invalidation if begin is prefix of end
|
2024-08-14 14:26:13 -07:00 |
|
andrew
|
0a850f22e9
|
Update README benchmarks
|
2024-08-12 17:33:45 -07:00 |
|