diff options
| author | Douglas B. Rumbaugh <dbr4@psu.edu> | 2024-05-14 16:31:05 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-05-14 16:31:05 -0400 |
| commit | 47916da2ba5ed5bee2dda3cbcc58d39e1e931bfc (patch) | |
| tree | ee5613ce182b2c9caa228d3abeb65dc27fef2db3 /README.md | |
| parent | 4a834497d5f82c817d634925250158d85ca825c2 (diff) | |
| parent | 8643fe194dec05b4e3f3ea31e162ac0b2b00e162 (diff) | |
| download | dynamic-extension-47916da2ba5ed5bee2dda3cbcc58d39e1e931bfc.tar.gz | |
Merge pull request #4 from dbrumbaugh/master
Updates for VLDB revision
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 31 |
1 files changed, 22 insertions, 9 deletions
@@ -12,8 +12,8 @@ The project is built using cmake. CMakeLists contains several flags that can be used to customize the build. In particular, setting `debug` to true will build without optimization, and with asan and ubsan enabled. The `tests` and `benchmarks` flag can be used to toggle the construction of unit tests -and benchmarks respectively. `old_bench` should be ignored--most of these won't -build anymore anyway. Eventually that will be removed. +and benchmarks respectively. The benchmarks specific to the VLDB 2024 +submission are built using the `vldb_bench` flag. After configuring the build to your liking, make sure that you initialized the git sub-modules first if you've just cloned the repository. @@ -33,11 +33,19 @@ The unit test binaries will appear in `bin/tests/` and the benchmarks in `bin/benchmarks/`. ## Available Benchmarks -At present there are several benchmarks available in `benchmarks/`. Not every -benchmark has been updated to build with the current version; these can be -found in `benchmarks/old-bench/`. Most of the benchmarks will display a help -message, showing what arguments they expect, if you run them without any -arguments, or with the wrong number of arguments. +The benchmarks relevant to the 2024 VLDB submission are located in +`benchmarks/vldb`, and various other benchmarks are in `benchmarks`. The +majority of the benchmark suite used for creating the figures in the VLDB +submission can be run using the `bin/scripts/run_benchmarks.sh` script, which +should be updated first with the locations of the desired data and query files. +The main benchmark not automatically run by this script is +`bin/benchmarks/ts_parmsweep`, which should be updated (by editing +`benchmarks/vldb/ts_parmsweep`) to reflect the parameter values to test, and +then run manually as desired. + +Most of the benchmarks will display a help message, showing what arguments they +expect, if you run them without any arguments, or with the wrong number of +arguments. ## Unit Tests While test coverage is not perfect yet, there are some basic unit tests in @@ -48,6 +56,11 @@ unit](https://libcheck.github.io/check/) test framework. This is still an active research project, and so the interfaces are not yet stable. Proper documentation will come when these interfaces stabilize a little. In the meantime, the code will have to serve as the documentation. -There are also a lot of comments in most of the files, though several are a bit -light in that regard. + +Some of the most important files are `include/framework/DynamicExtension`, +which contains the external interface of the framework, and +`include/framework/interface/*`, which contains the necessary C++20 +concepts/interfaces for developing your own shards and queries. Any class +implementing the appropriate interfaces can be used as template arguments to +the DynamicExtension itself. |