SOSD 项目使用教程
SOSD A Benchmark for Learned Indexes 项目地址: https://gitcode.com/gh_mirrors/so/SOSD
1. 项目目录结构及介绍
SOSD 项目的目录结构如下:
SOSD/
├── benchmarks/
├── competitors/
├── dtl/
├── experiments/
├── fast64/
├── results/
├── robin-map/
├── scripts/
├── searches/
├── utils/
├── clang-format
├── drone.yml
├── .gitignore
├── .gitmodules
├── CMakeLists.txt
├── COPYING
├── LICENSE
├── README.md
├── benchmark.cc
├── benchmark.h
├── config.h
├── downsample.py
├── downsample_50.py
├── gen_norm.py
├── gen_uniform.py
├── generate.cc
├── reproduce.sh
└── util.h
目录介绍
- benchmarks/: 包含基准测试的相关文件。
- competitors/: 包含与其他竞争性项目的比较文件。
- dtl/: 包含数据转换层的相关文件。
- experiments/: 包含实验的相关文件。
- fast64/: 包含64位快速处理的相关文件。
- results/: 包含测试结果的文件。
- robin-map/: 包含Robin Map数据结构的相关文件。
- scripts/: 包含自动化脚本,用于下载数据、构建和执行基准测试。
- searches/: 包含搜索算法的相关文件。
- utils/: 包含通用工具和实用程序的文件。
- clang-format: 用于代码格式化的配置文件。
- drone.yml: Drone CI 的配置文件。
- .gitignore: Git 忽略文件列表。
- .gitmodules: Git 子模块配置文件。
- CMakeLists.txt: CMake 构建配置文件。
- COPYING: 许可证副本。
- LICENSE: 项目许可证文件。
- README.md: 项目介绍和使用说明。
- benchmark.cc: 基准测试的源文件。
- benchmark.h: 基准测试的头文件。
- config.h: 项目配置文件。
- downsample.py: 数据降采样脚本。
- downsample_50.py: 50% 数据降采样脚本。
- gen_norm.py: 生成正态分布数据的脚本。
- gen_uniform.py: 生成均匀分布数据的脚本。
- generate.cc: 数据生成的源文件。
- reproduce.sh: 重现实验的脚本。
- util.h: 通用工具的头文件。
2. 项目启动文件介绍
项目的启动文件主要是 scripts/
目录下的脚本文件,用于自动化项目的构建和执行。以下是主要的启动脚本:
- scripts/download.sh: 下载和存储所需的网络数据。
- scripts/build_rmis.sh: 编译和构建每个数据集的 RMIs(递归模型索引)。
- scripts/download_rmis.sh: 下载预构建的 RMIs,可能会更快。
- scripts/prepare.sh: 构建查询工作负载并编译基准测试。
- scripts/execute.sh: 在每个工作负载上执行基准测试,并将结果存储在
results/
目录中。
3. 项目的配置文件介绍
项目的配置文件主要是 config.h
,它包含了项目的各种配置选项。以下是一些关键配置项的介绍:
- USE_FAST_MODE: 用于在开发过程中禁用某些功能以加快构建时间。
- 其他配置项: 根据具体需求,
config.h
中可能还包含其他配置项,用于控制基准测试的行为和性能。
通过这些配置项,用户可以根据自己的需求调整项目的运行方式。
SOSD A Benchmark for Learned Indexes 项目地址: https://gitcode.com/gh_mirrors/so/SOSD
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考