FAST_FAIR 项目使用教程
1. 项目的目录结构及介绍
FAST_FAIR 项目的目录结构如下:
FAST_FAIR/
├── concurrent/
│ ├── Makefile
│ └── btree_concurrent
├── single/
│ ├── Makefile
│ └── btree
├── .gitignore
├── LICENSE
├── README.md
└── sample_input.txt
目录介绍
concurrent/
: 包含多线程版本的 B+-Tree 实现。Makefile
: 用于编译多线程版本的 Makefile。btree_concurrent
: 多线程版本的 B+-Tree 可执行文件。
single/
: 包含单线程版本的 B+-Tree 实现。Makefile
: 用于编译单线程版本的 Makefile。btree
: 单线程版本的 B+-Tree 可执行文件。
.gitignore
: Git 忽略文件配置。LICENSE
: 项目许可证文件。README.md
: 项目说明文档。sample_input.txt
: 示例输入文件。
2. 项目的启动文件介绍
单线程版本启动文件
单线程版本的启动文件是 single/btree
,可以通过以下命令运行:
cd single
make
./btree -n [数据数量] -w [NVM写延迟] -i [输入文件路径]
例如:
./btree -n 10000 -w 300 -i ~/input.txt
多线程版本启动文件
多线程版本的启动文件是 concurrent/btree_concurrent
,可以通过以下命令运行:
cd concurrent
make
./btree_concurrent -n [数据数量] -w [NVM写延迟] -i [输入文件路径] -t [线程数量]
例如:
./btree_concurrent -n 10000 -w 300 -i ~/input.txt -t 16
3. 项目的配置文件介绍
FAST_FAIR 项目没有显式的配置文件,所有的配置都是通过命令行参数传递的。以下是常用的命令行参数:
-n [数据数量]
: 指定数据的数量。-w [NVM写延迟]
: 指定 NVM 的写延迟。-i [输入文件路径]
: 指定输入文件的路径。-t [线程数量]
: 指定线程的数量(仅适用于多线程版本)。
通过这些参数,可以灵活地配置和运行 FAST_FAIR 项目。