HAT-trie benchmark

June 21, 2017 · View on GitHub

CXX=g++ CXXFLAGS=-lcityhash -std=c++11 -march=native -DNDEBUG -O3 WORDS_INSERT_FILE="./enwiki-20170320-all-titles-in-ns0" WORDS_READ_FILE="./enwiki-20170320-all-titles-in-ns0"

QP_TRIE_LIB_PATH="./qp/"

all: compile run run_peak

compile: (CXX)(CXX) (CXXFLAGS) -o std_unordered_map -DBENCH_STD_UNORDERED_MAP bench.cpp (CXX)(CXX) (CXXFLAGS) -o std_unordered_map_reserve -DBENCH_STD_UNORDERED_MAP -DBENCH_RESERVE bench.cpp (CXX)(CXX) (CXXFLAGS) -o tsl_hopscotch_map -DBENCH_TSL_HOPSCOTCH_MAP bench.cpp (CXX)(CXX) (CXXFLAGS) -o tsl_hopscotch_map_reserve -DBENCH_TSL_HOPSCOTCH_MAP -DBENCH_RESERVE bench.cpp (CXX)(CXX) (CXXFLAGS) -o google_dense_map -DBENCH_GOOGLE_DENSE_MAP bench.cpp (CXX)(CXX) (CXXFLAGS) -o google_dense_map_reserve -DBENCH_GOOGLE_DENSE_MAP -DBENCH_RESERVE bench.cpp (CXX)(CXX) (CXXFLAGS) -o spp_sparsepp -DBENCH_SPP_SPARSE_HASH_MAP bench.cpp (CXX)(CXX) (CXXFLAGS) -o spp_sparsepp_reserve -DBENCH_SPP_SPARSE_HASH_MAP -DBENCH_RESERVE bench.cpp (CXX)(CXX) (CXXFLAGS) -o tsl_array_hash -DBENCH_TSL_ARRAY_MAP bench.cpp (CXX)(CXX) (CXXFLAGS) -o tsl_array_hash_reserve -DBENCH_TSL_ARRAY_MAP -DBENCH_RESERVE bench.cpp (CXX)(CXX) (CXXFLAGS) -o tsl_htrie_map -DBENCH_TSL_HTRIE_MAP bench.cpp (CXX)(CXX) (CXXFLAGS) -o tsl_htrie_map_lf_4 -DBENCH_TSL_HTRIE_MAP_LF_4 bench.cpp (CXX)(CXX) (CXXFLAGS) -o tsl_htrie_map_lf_2 -DBENCH_TSL_HTRIE_MAP_LF_2 bench.cpp (CXX)(CXX) (CXXFLAGS) -o tsl_htrie_map_lf_1 -DBENCH_TSL_HTRIE_MAP_LF_1 bench.cpp (CXX)(CXX) (CXXFLAGS) -o judy_sl -DBENCH_JUDY_SL -fpermissive -lJudy bench.cpp (CXX)(CXX) (CXXFLAGS) -o judy_hs -DBENCH_JUDY_HS -fpermissive -lJudy bench.cpp (CXX)(CXX) (CXXFLAGS) -o dc_hat_trie -DBENCH_DC_HAT_TRIE -fpermissive -lhat-trie bench.cpp (CXX)(CXX) (CXXFLAGS) -o cedar -DBENCH_CEDAR bench.cpp (CXX)(CXX) (CXXFLAGS) -o cedar_unordered -DBENCH_CEDAR_UNORDERED bench.cpp (CXX)(CXX) (CXXFLAGS) -o cedar_reduced -DBENCH_CEDAR -DUSE_REDUCED_TRIE bench.cpp (CXX)(CXX) (CXXFLAGS) -o cedar_unordered_reduced -DBENCH_CEDAR_UNORDERED -DUSE_REDUCED_TRIE bench.cpp (CXX)(CXX) (CXXFLAGS) -o cedarpp -DBENCH_CEDARPP bench.cpp (CXX)(CXX) (CXXFLAGS) -o cedarpp_unordered -DBENCH_CEDARPP_UNORDERED bench.cpp (CXX)(CXX) (CXXFLAGS) -o qp_trie -DBENCH_QP_TRIE -fpermissive (QPTRIELIBPATH)/qp.c(QP_TRIE_LIB_PATH)/qp.c (QP_TRIE_LIB_PATH)/Tbl.c bench.cpp (CXX)(CXX) (CXXFLAGS) -o critbit_trie -DBENCH_CRITBIT_TRIE -fpermissive (QPTRIELIBPATH)/cb.c(QP_TRIE_LIB_PATH)/cb.c (QP_TRIE_LIB_PATH)/Tbl.c bench.cpp

run: ./std_unordered_map (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./std_unordered_map_reserve (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./tsl_hopscotch_map (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./tsl_hopscotch_map_reserve (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./google_dense_map (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./google_dense_map_reserve (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./spp_sparsepp (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./spp_sparsepp_reserve (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./tsl_array_hash (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./tsl_array_hash_reserve (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./tsl_htrie_map (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./tsl_htrie_map_lf_4 (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./tsl_htrie_map_lf_2 (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./tsl_htrie_map_lf_1 (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./judy_sl (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./judy_hs (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./dc_hat_trie (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./cedar (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./cedar_unordered (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./cedar_reduced (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./cedar_unordered_reduced (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./cedarpp (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./cedarpp_unordered (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./qp_trie (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE) ./critbit_trie (WORDSINSERTFILE)(WORDS_INSERT_FILE) (WORDS_READ_FILE)

run_peak: /usr/bin/time -f "%M" ./std_unordered_map (WORDSINSERTFILE)/usr/bin/timef"(WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./std_unordered_map_reserve (WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./tsl_hopscotch_map (WORDSINSERTFILE)/usr/bin/timef"(WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./tsl_hopscotch_map_reserve (WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./google_dense_map (WORDSINSERTFILE)/usr/bin/timef"(WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./google_dense_map_reserve (WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./spp_sparsepp (WORDSINSERTFILE)/usr/bin/timef"(WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./spp_sparsepp_reserve (WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./tsl_array_hash (WORDSINSERTFILE)/usr/bin/timef"(WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./tsl_array_hash_reserve (WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./tsl_htrie_map (WORDSINSERTFILE)/usr/bin/timef"(WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./tsl_htrie_map_lf_4 (WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./tsl_htrie_map_lf_2 (WORDSINSERTFILE)/usr/bin/timef"(WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./tsl_htrie_map_lf_1 (WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./judy_sl (WORDSINSERTFILE)/usr/bin/timef"(WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./judy_hs (WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./dc_hat_trie (WORDSINSERTFILE)/usr/bin/timef"(WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./cedar (WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./cedar_unordered (WORDSINSERTFILE)/usr/bin/timef"(WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./cedar_reduced (WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./cedar_unordered_reduced (WORDSINSERTFILE)/usr/bin/timef"(WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./cedarpp (WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./cedarpp_unordered (WORDSINSERTFILE)/usr/bin/timef"(WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./qp_trie (WORDS_INSERT_FILE) /usr/bin/time -f "%M" ./critbit_trie $(WORDS_INSERT_FILE)