Install dependencies:
sudo apt-get install libboost-all-dev libgoogle-perftools-dev libtool m4 automake cmake libtbb-dev libgsl0-dev
mkdir compile
cd dev
bash bootstrap.sh
cd ../compile
../dev/configure
make CPPFLAGS="-DUSE_DRAM_ALLOCATOR -DPWB_IS_CLFLUSH -DROMULUS_LR_PTM -O0 -g"
setType: { 0="TransList" , 1="TransSkip", 2="TransMDList", 3="TransMap" }
numThread: Number of Threads
testSize: Test Size
tranSize: Transaction Size
keyRange: Key Range
insertion: Insertion Percent
deletion: Deletion Percent
-v: verbose
cd src/petra/compile
./src/trans <setType> <numThread> <testSize> <tranSize> <keyRange> <insertion> <deletion>
For example, to test TransSkip with 16 threads, test size is 100, transaction size is 4 operations, key range is 1000, insert percent is 50, and delete percent is 25:
./src/trans 1 16 100 4 1000 50 25
TransList with 16 threads, test size is 100, transaction size is 4 operations, key range is 1000, insert percent is 50, and delete percent is 25:
./src/trans 0 16 100 4 1000 50 25
TransSkip with 16 threads, test size is 100, transaction size is 4 operations, key range is 1000, insert percent is 50, and delete percent is 25:
./src/trans 1 16 100 4 1000 50 25
TransMDList with 16 threads, test size is 100, transaction size is 4 operations, key range is 1000, insert percent is 50, and delete percent is 25:
./src/trans 2 16 100 4 1000 50 25
TransMap with 16 threads, test size is 100, transaction size is 4 operations, key range is 1000, insert percent is 50, and delete percent is 25:
./src/trans 3 16 100 4 1000 50 25
TransList with 16 threads, test size is 100, transaction size is 4 operations, key range is 1000, insert percent is 50, and delete percent is 25:
./src/transRomulus 0 16 100 4 1000 50 25
TransSkip with 16 threads, test size is 100, transaction size is 4 operations, key range is 1000, insert percent is 50, and delete percent is 25:
./src/transRomulus 1 16 100 4 1000 50 25
TransMDList with 16 threads, test size is 100, transaction size is 4 operations, key range is 1000, insert percent is 50, and delete percent is 25:
./src/transRomulus 2 16 100 4 1000 50 25
TransMap with 16 threads, test size is 100, transaction size is 4 operations, key range is 1000, insert percent is 50, and delete percent is 25:
./src/transRomulus 3 16 100 4 1000 50 25
TransList with 16 threads, test size is 100, transaction size is 4 operations, key range is 1000, insert percent is 50, and delete percent is 25:
./src/transOneFile 0 16 100 4 1000 50 25
TransSkip with 16 threads, test size is 100, transaction size is 4 operations, key range is 1000, insert percent is 50, and delete percent is 25:
./src/transOneFile 1 16 100 4 1000 50 25
TransMDList with 16 threads, test size is 100, transaction size is 4 operations, key range is 1000, insert percent is 50, and delete percent is 25:
./src/transOneFile 2 16 100 4 1000 50 25
TransMap with 16 threads, test size is 100, transaction size is 4 operations, key range is 1000, insert percent is 50, and delete percent is 25:
./src/transOneFile 3 16 100 4 1000 50 25