Before running this project, ensure you have the following:
- liburcu: Clone and build the liburcu repository according to its installation instructions.
(Optional) To run benchmark:
- GNU Make
- C++ (we used version 11)
- PMDK (we used version 1.8)
- external libraries: pthreads, pmemobj, vmem, memkind
To build and run the code, follow these steps:
-
Clone the Repository
git clone https://github.com/SemilJain/AdvDB-Project.git
-
Navigate to the Respective Folders
cd folder-name- Build the Code
Run the following command to compile the code:
- RWLock, DistributedRWLocks and OCC
g++ -o run main.cpp b+tree.cpp lock.h lock.c -lpthread -g- NoLocks
g++ -o run main.cpp b+tree.cpp -lpthread -g- RCU
g++ -o run main.cpp b+tree.cpp spinlock.h spinlock.c -lurcu -lpthread -g- Run the Application
After successfully building the code, execute the generated executable:
./run 1000 100 10000 100 64