| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| | | * | ISAMTree: added comment explaining the compiler fence | Douglas Rumbaugh | 2024-02-08 | 1 | -0/+4 | |
| | | | | ||||||
| | | * | Added compiler fence to block reordering | Douglas Rumbaugh | 2024-02-08 | 2 | -2/+4 | |
| | | | | | | | | | | | | | I'm reasonably certain that this is a compiler bug... | |||||
| | * | | Added compiler fence to block reordering | Douglas Rumbaugh | 2024-02-08 | 2 | -2/+8 | |
| | |/ | | | | | | | I'm reasonably certain that this is a compiler bug... | |||||
| | * | Fixed a slight synchronization bug in Epoch retirement "properly" | Douglas Rumbaugh | 2024-02-08 | 1 | -10/+27 | |
| | | | ||||||
| | * | Fixed benchmark memory leak | Douglas Rumbaugh | 2024-02-08 | 1 | -0/+2 | |
| | | | ||||||
| | * | Cleaned up shard files (except VPTree) | Douglas Rumbaugh | 2024-02-07 | 28 | -1674/+859 | |
| | | | | | | | | | | | | | Cleaned up shard implementations, fixed a few bugs, and set up some tests. There's still some work to be done in creating tests for the weighted sampling operations for the alias and aug btree shards. | |||||
| | * | Fully realized shard concept interface | Douglas Rumbaugh | 2024-02-07 | 33 | -686/+77 | |
| | | | ||||||
| | * | Fully implemented Query concept and adjusted queries to use it | Douglas Rumbaugh | 2024-02-07 | 13 | -56/+54 | |
| | | | ||||||
| | * | BufferView: Adjusted BV to avoid repeated modulus operations | Douglas Rumbaugh | 2024-02-05 | 3 | -15/+190 | |
| | | | ||||||
| | * | Set up tombstone deletes properly | Douglas Rumbaugh | 2024-02-05 | 8 | -56/+72 | |
| | | | ||||||
| | * | updated btree benchmark | Douglas Rumbaugh | 2024-01-31 | 1 | -0/+4 | |
| | | | ||||||
| | * | IRS bench (replication of existing one) | Douglas Rumbaugh | 2024-01-31 | 1 | -0/+125 | |
| | | | ||||||
| | * | BTree benchmark | Douglas Rumbaugh | 2024-01-31 | 3 | -6/+128 | |
| | | | ||||||
| | * | Updated throughput bench to use SOSD | Douglas Rumbaugh | 2024-01-31 | 2 | -21/+39 | |
| | | | ||||||
| | * | temporary hack to get working | Douglas Rumbaugh | 2024-01-31 | 1 | -6/+12 | |
| | | | ||||||
| | * | Adjusted epoch transition methodology | Douglas Rumbaugh | 2024-01-31 | 4 | -153/+121 | |
| | | | ||||||
| | * | More locking! | Douglas Rumbaugh | 2024-01-31 | 1 | -0/+2 | |
| | | | ||||||
| | * | Updated insert query throughput to use IRS queries | Douglas Rumbaugh | 2024-01-31 | 4 | -123/+25 | |
| | | | ||||||
| | * | insert query tput updates | Douglas Rumbaugh | 2024-01-31 | 1 | -2/+7 | |
| | | | ||||||
| | * | Possibly fixed epoch retirement sync error | Douglas Rumbaugh | 2024-01-31 | 1 | -1/+5 | |
| | | | ||||||
| | * | Insert throughput benchmark | Douglas Rumbaugh | 2024-01-31 | 3 | -46/+220 | |
| | | | ||||||
| | * | Query/Insert intermix benchmarks | Douglas Rumbaugh | 2024-01-31 | 4 | -41/+162 | |
| | | | ||||||
| | * | Temporary thread affinity for reconstruction | Douglas Rumbaugh | 2024-01-31 | 3 | -7/+40 | |
| | | | ||||||
| | * | TrieSpline + tests | Douglas Rumbaugh | 2024-01-30 | 4 | -301/+117 | |
| | | | ||||||
| | * | Benchmarking updates | Douglas Rumbaugh | 2024-01-30 | 9 | -30/+495 | |
| | | | ||||||
| | * | Multithreaded Insertion Benchmark | Douglas Rumbaugh | 2024-01-24 | 1 | -11/+37 | |
| | | | ||||||
| | * | DynamicExtension: Fixed reconstruction trigger data race | Douglas Rumbaugh | 2024-01-24 | 1 | -4/+7 | |
| | | | | | | | | | | | Tweak the reconstruction trigger code to ensure that multiple reconstructions won't be triggered at the same time. | |||||
| | * | Added watermark testing to CMake | Douglas Rumbaugh | 2024-01-22 | 1 | -0/+6 | |
| | | | ||||||
| | * | WAtermark testing benchmark | Douglas Rumbaugh | 2024-01-22 | 1 | -0/+53 | |
| | | | ||||||
| | * | Adjusted recon_benchmark and properly shutdown FIFOScheduler | Douglas Rumbaugh | 2024-01-22 | 2 | -12/+25 | |
| | | | ||||||
| | * | Benchmarking: updated insert_query_tput to use better rng | Douglas Rumbaugh | 2024-01-22 | 1 | -3/+14 | |
| | | | ||||||
| | * | FIFOScheduler: added automake wakeup | Douglas Rumbaugh | 2024-01-22 | 1 | -1/+12 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes, when the max thread count is exceeded, it is possible for the scheduler to lock up. This is because the scheduler is only run when a new job is put into the queue, and so it is possible for a job to be blocked by thread limitations and be left sitting in the queue. If the main program is waiting on this job to finish before scheduling a new one, then the system deadlocks. I added a second background thread to the scheduler that wakes the scheduler up every 20us to resolve this and prevent these deadlocks. | |||||
| | * | Moved some benchmarks over to range count | Douglas Rumbaugh | 2024-01-22 | 2 | -6/+6 | |
| | | | ||||||
| | * | Added RangeCount query | Douglas Rumbaugh | 2024-01-22 | 4 | -0/+386 | |
| | | | ||||||
| | * | Initial rough-out of internal statistics tracker | Douglas Rumbaugh | 2024-01-19 | 8 | -36/+160 | |
| | | | | | | | | | | | | | Need to figure out the best way to do the detailed tracking in a concurrent manner. I was thinking just an event log, with parsing routines for extracting statistics. But that'll be pretty slow. | |||||
| | * | Multiple concurrency bug fixes | Douglas Rumbaugh | 2024-01-17 | 14 | -185/+246 | |
| | | | | | | | | | | | | | | | | | A poorly organized commit with fixes for a variety of bugs that were causing missing records. The core problems all appear to be fixed, though there is an outstanding problem with tombstones not being completely canceled. A very small number are appearing in the wrong order during the static structure test. | |||||
| | * | Concurrency testing and bug fixes | Douglas B. Rumbaugh | 2024-01-15 | 6 | -8/+467 | |
| | | | ||||||
| | * | Benchmarking programs | Douglas B. Rumbaugh | 2024-01-15 | 18 | -12/+132 | |
| | | | ||||||
| | * | Use 16-byte CAS to control buffer head | Douglas B. Rumbaugh | 2024-01-15 | 2 | -70/+77 | |
| | | | ||||||
| | * | Various single-threaded bug fixes | Douglas B. Rumbaugh | 2024-01-15 | 4 | -15/+55 | |
| | | | ||||||
| | * | Initial integration of new buffering scheme into framework | Douglas Rumbaugh | 2024-01-12 | 9 | -289/+158 | |
| | | | | | | | | | | | It isn't working right now (lotsa test failures), but we're to the debugging phase now. | |||||
| | * | Initial pass at unit test refactoring | Douglas Rumbaugh | 2024-01-12 | 12 | -468/+757 | |
| | | | | | | | | | | | | | Restructured unit tests to be a bit more modular. I have some further plans to expand on this, particular for the query tests (including both shard and framework level test functions that can be injected at will). | |||||
| | * | BufferView.h: Hopefully the last necessary tweak to the move semantics stuff | Douglas Rumbaugh | 2024-01-12 | 1 | -24/+2 | |
| | | | | | | | | | | | | | | | | | You can't move assign an std::Bind, but you can move construct it. So I had to disable the move assignment operator. This means that when you change the BufferView ownership over to, say, a QueryBufferState object, you need to do it by passing std::move(buffview) into a constructor call only--you cannot assign it. | |||||
| | * | InternalLevel update and tests | Douglas Rumbaugh | 2024-01-11 | 4 | -51/+76 | |
| | | | | | | | | | | | Plus some assorted fixes for move semantics stuff in BufferView that accompanied these changes. | |||||
| | * | Ported ISAMTree over to new buffer setup | Douglas Rumbaugh | 2024-01-11 | 4 | -125/+137 | |
| | | | | | | | | | | | I may still play with the shard from shards constructor, and queries need some work yet too. | |||||
| | * | BufferView: enforce move semantics | Douglas Rumbaugh | 2024-01-11 | 1 | -2/+19 | |
| | | | | | | | | | | | | | Because a BufferView's lifetime is so tightly linked to the lifetime of regions of the buffer, it can't be copied without potentially breaking things. | |||||
| | * | Fixed some potential buffer-related concurrency bugs | Douglas Rumbaugh | 2024-01-11 | 3 | -58/+95 | |
| | | | ||||||
| | * | MutableBuffer: multithreaded insert test + bugfixes | Douglas Rumbaugh | 2024-01-10 | 2 | -16/+29 | |
| | | | ||||||
| | * | MutableBuffer+View: Implementation with unit tests | Douglas Rumbaugh | 2024-01-10 | 3 | -190/+229 | |
| | | | ||||||
| | * | Initial update of buffer to new specifications | Douglas B. Rumbaugh | 2024-01-09 | 2 | -152/+62 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are a few minor issues that this introduces, however. Global tracking of a lot of secondary information, such as weights for WIRS/WSS, or the exact number of tombstones will need to be approached differently than they have been historically with this new approach. I've also removed most of the tombstone capacity related code. We had decided not to bother enforcing this at the buffer level anyway, and it would greatly increase the complexity of the problem of predicting when the next compaction will be. On the whole this new approach seems like it'll simplify a lot. This commit actually removes significantly more code than it adds. One minor issue: the currently implementation will have problems in the circular array indexes once more than 2^64 records have been inserted. This doesn't seem like a realistic problem at the moment. | |||||