Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,13 @@ target_link_libraries(client
${_PROTOBUF_LIBPROTOBUF})
target_include_directories(client PUBLIC ${utils_srcs})

# check for BENCHMARK
if(BENCHMARK_MACRO)
target_compile_definitions(shard_master PUBLIC BENCHMARK)
target_compile_definitions(volume_server PUBLIC BENCHMARK)
target_compile_definitions(client PUBLIC BENCHMARK)
endif(BENCHMARK_MACRO)

# tests
if(BUILD_TESTS)
file(GLOB TEST_SOURCES tests/*/*.cc)
Expand Down
8 changes: 7 additions & 1 deletion build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,20 @@ if [[ $* == *T* ]]; then
echo "* Build tests detected..."
BUILD_TESTS="ON"
fi
## flag "B" provided -> build with preprocessor macro BENCHMARK
BENCHMARK_MACRO="OFF"
if [[ $* == *B* ]]; then
echo "* BENCHMARK_MACRO detected..."
BENCHMARK_MACRO="ON"
fi
echo "-------------"

# Create build directory
mkdir -p cmake/build
pushd cmake/build

# build
cmake -DCMAKE_PREFIX_PATH=$HOME/src/builds/gRPC -DLEVELDB_PREFIX=$HOME/src/builds/leveldb -DBUILD_TESTS=$BUILD_TESTS ../..
cmake -DCMAKE_PREFIX_PATH=$HOME/src/builds/gRPC -DLEVELDB_PREFIX=$HOME/src/builds/leveldb -DBUILD_TESTS=$BUILD_TESTS -DBENCHMARK_MACRO=$BENCHMARK_MACRO ../..
make

popd
8 changes: 6 additions & 2 deletions client/client.cc
Original file line number Diff line number Diff line change
Expand Up @@ -200,8 +200,10 @@ int main(int argc, char* argv[]) {
std::string shard_master_addr = (argc > 1) ? argv[1] : SHARD_MASTER_ADDR;
Client client(grpc::CreateChannel(shard_master_addr, grpc::InsecureChannelCredentials()));

// simple non-exhaustive sanity check

// simple non-exhaustive sanity check
#if BENCHMARK
std::cout << "* BENCHMARK detected" << std::endl;
#else
// key not found
std::cout << "Response:-\n"
<< client.Get("key1") << '\n'
Expand Down Expand Up @@ -240,5 +242,7 @@ int main(int argc, char* argv[]) {
<< std::endl;

std::cout << std::endl;
#endif

return 0;
}
4 changes: 4 additions & 0 deletions server/shard_master/shard_master.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,10 @@ class ShardMaster final : public ShardMasterService::Service {
// config
this->config_num = 0; // INITIAL CONFIGURATION IS 0
this->sm_config.clear();

#ifdef BENCHMARK
std::cout << "* BENCHMARK detected" << std::endl;
#endif
}

~ShardMaster() { delete this->db; }
Expand Down
4 changes: 4 additions & 0 deletions server/volume_server/volume_server.h
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,10 @@ class VolumeServer final : public VolumeServerService::Service {
std::thread([this]() -> void {
this->moveKeys();
}).detach();

#ifdef BENCHMARK
std::cout << "* BENCHMARK detected" << std::endl;
#endif
}

~VolumeServer() { delete this->db; }
Expand Down