andrew
04ac41a7e7
Add memory usage and some "check" metrics
2024-07-12 14:22:16 -07:00
andrew
354920f86f
Add newly-imported symbol for arm64 build
2024-07-12 13:55:41 -07:00
andrew
bfd02503e7
Remove duplicate clang compiler warning action
2024-07-12 13:44:51 -07:00
andrew
d0bd293f8d
Try to fix Jenkins
2024-07-12 13:38:11 -07:00
andrew
41e887c358
Try to fix symbol tests in CI
2024-07-12 13:34:00 -07:00
andrew
e394e3d96a
Adapt comments from prometheus data model better
2024-07-12 13:29:10 -07:00
andrew
3288c583e4
Make metrics thread-safe
...
Even concurrently with calling non-const methods on the associated
ConflictSet
2024-07-12 13:22:02 -07:00
andrew
ef14003781
Try to fix symbol tests in CI
2024-07-12 12:24:23 -07:00
andrew
3ac16bc966
Propose a metrics interface
2024-07-12 12:00:46 -07:00
andrew
1e82f7fe22
Fix compiler warnings
2024-07-11 19:33:57 -07:00
andrew
4182d904c5
Fix an issue where gc wasn't outpacing writes
2024-07-11 16:40:18 -07:00
andrew
bd8ed4e7bd
Bump version
2024-07-10 18:57:44 -07:00
andrew
60cb274a15
Update corpus
v0.0.8
2024-07-10 18:49:41 -07:00
andrew
687bc9c935
Explicitly say that begin must be < end in interface
2024-07-10 17:05:08 -07:00
andrew
d50bb8bc80
Add missing header
2024-07-10 16:59:31 -07:00
andrew
f19b403f19
Remove "writes are canonical" precondition from addWrites
2024-07-10 16:42:53 -07:00
andrew
34cd210907
Update README benchmarks
2024-07-09 16:06:44 -07:00
andrew
1a5da9e899
Bump version
2024-07-08 16:12:23 -07:00
andrew
8ba9b04d8c
Remove "32-bit versions" jenkins stage
...
This is the default now
2024-07-08 15:45:10 -07:00
andrew
d895be36d2
Declare dependency on version.txt in Makefile
v0.0.7
2024-07-08 15:41:51 -07:00
andrew
65f8462e88
Remove dead code
2024-07-08 11:14:30 -07:00
andrew
46e01af027
Specialize scan16 for Node16 in checkMaxBetweenExclusive
2024-07-08 11:01:17 -07:00
andrew
c9d0d72684
Remove some branches for Node3 in checkMaxBetweenExclusive
2024-07-07 20:45:20 -07:00
andrew
9046dc5a8f
Only switch on type once in checkMaxBetweenExclusive
2024-07-07 17:28:45 -07:00
andrew
e2927bf0fa
Simplify condition for TooOld in check
2024-07-03 16:39:22 -07:00
andrew
75a2b8d06c
Remove bogus assert
...
It's bogus since we mess with oldestVersionFullPrecision in addWrites
2024-07-03 14:47:50 -07:00
andrew
76df63a9d7
Allow writeVersion, oldestVersion, and readVersion to span 2e9
2024-07-03 14:19:50 -07:00
andrew
9c5b38b09a
Revert setOldestVersion interface change
2024-07-03 11:27:09 -07:00
andrew
7142dab7ae
Update c api documentation for ConflictSet_setOldestVersion
2024-07-03 10:53:45 -07:00
andrew
3db3d975fc
Interface change! Allow decreasing setOldestVersion
2024-07-03 10:31:57 -07:00
andrew
982b31af34
Explicitly convert uint32x4_t to int32x4_t
2024-07-03 10:01:00 -07:00
andrew
cc716ef16b
Attempt to fix memory leak
2024-07-03 09:48:02 -07:00
andrew
88bcc7b75c
Update corpus
2024-07-03 09:36:03 -07:00
andrew
3e6be6bd83
Allow write version to jump by more than 2e9
2024-07-03 09:07:09 -07:00
andrew
e59fee39c7
Start versions at zero in fuzz test for now
2024-07-03 07:55:07 -07:00
andrew
3e2c8310bb
Fix several bugs related to extant versions too old
2024-07-03 07:53:03 -07:00
andrew
8264f1342d
Fix some precision issues
2024-07-02 13:55:05 -07:00
andrew
5d7e9c6f85
Compare against oldestVersionFullPrecision at full precision
2024-07-02 13:53:56 -07:00
andrew
cdf42fcb34
Add gcScanStep
...
Also remove oldestVersion arg in write call tree
2024-07-02 13:06:53 -07:00
andrew
cbe40b5dba
Fix missing debug verbose guard
2024-07-02 12:48:00 -07:00
andrew
a04e81b3ff
Add version window constants
2024-07-02 12:45:35 -07:00
andrew
0be97a34b6
Add new version window requirement to reference impl
2024-07-02 12:42:03 -07:00
andrew
68ab9a9f08
Commit to 32-bit versions
2024-07-02 10:30:22 -07:00
andrew
01488880ef
Fix outdated comment
2024-07-01 17:27:04 -07:00
andrew
bb84792cff
Use avx512f across entire checkRangeRead call tree
...
Keeping the avx fallback
2024-07-01 13:07:34 -07:00
andrew
1f421e95ff
Resuppress coverage
2024-06-30 21:48:43 -07:00
andrew
66bd799f05
Fix hasty change about end invariants
...
`end` is allowed to be <= 0 at the beginning of
checkMaxBetweenExclusive, but not later after checking for the first
range version.
2024-06-30 21:20:05 -07:00
andrew
2646d5eaf1
Get back to 100% coverage
...
Closes #30
This is achieved by running libfuzzer with USE_32_BIT_VERSIONS={OFF,ON},
and then combining the corpora. I suspect that the problem earlier was
that we only had the 32 bit corpus but were measuring coverage for 64
bit in jenkins.
2024-06-30 21:15:42 -07:00
andrew
0367ba9856
Fast path for prefix reads
2024-06-30 20:33:54 -07:00
andrew
9dec45317e
Try to fix code coverage in Jenkins
2024-06-30 15:38:06 -07:00