Serialization Unit Testing
This commit is contained in:
parent
0a9cc3d1b4
commit
879c32ffa5
@ -42,7 +42,7 @@ set(ENV{PKG_CONFIG_PATH} "/usr/local/lib/pkgconfig")
|
||||
find_package(PkgConfig REQUIRED)
|
||||
find_package(PostgreSQL REQUIRED)
|
||||
find_package(OpenMP)
|
||||
find_package(MPI)
|
||||
find_package(MPI REQUIRED)
|
||||
|
||||
find_package(BISON 2.4 REQUIRED)
|
||||
find_package(FLEX REQUIRED)
|
||||
@ -50,7 +50,6 @@ find_package(FLEX REQUIRED)
|
||||
find_package(Boost REQUIRED mpi serialization graph)
|
||||
include_directories(${Boost_INCLUDE_DIR})
|
||||
|
||||
|
||||
find_package(OpenSSL)
|
||||
find_package(Doxygen)
|
||||
|
||||
@ -134,11 +133,11 @@ add_executable(ag_gen "${CMAKE_SOURCE_DIR}/src/main.cpp"
|
||||
${FLEX_nm_scanner_OUTPUTS} ${BISON_nm_parser_OUTPUTS}
|
||||
${FLEX_xp_scanner_OUTPUTS} ${BISON_xp_parser_OUTPUTS}
|
||||
${ag_gen_src} ${utils_src} ${mpi_src})
|
||||
target_link_libraries(ag_gen ${PostgreSQL_LIBRARIES} Boost::serialization Boost::mpi ${MPI_C_LIBRARIES})
|
||||
target_link_libraries(ag_gen ${PostgreSQL_LIBRARIES} Boost::serialization Boost::mpi ${MPI_CXX_LIBRARIES})
|
||||
|
||||
add_executable(decode "${CMAKE_SOURCE_DIR}/src/tools/decode.cpp"
|
||||
${ag_gen_src} ${utils_src})
|
||||
target_link_libraries(decode ${PostgreSQL_LIBRARIES})
|
||||
#add_executable(decode "${CMAKE_SOURCE_DIR}/src/tools/decode.cpp"
|
||||
# ${ag_gen_src} ${utils_src})
|
||||
#target_link_libraries(decode ${PostgreSQL_LIBRARIES})
|
||||
|
||||
#add_executable(serialize "${CMAKE_SOURCE_DIR}/src/tests/serialize.cpp"
|
||||
# ${FLEX_nm_scanner_OUTPUTS} ${BISON_nm_parser_OUTPUTS}
|
||||
@ -153,7 +152,7 @@ if(CPPREDIS_FOUND)
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DREDIS")
|
||||
|
||||
target_link_libraries(ag_gen cpp_redis tacopie)
|
||||
target_link_libraries(decode cpp_redis tacopie)
|
||||
#target_link_libraries(decode cpp_redis tacopie)
|
||||
#target_link_libraries(serialize cpp_redis tacopie)
|
||||
endif()
|
||||
|
||||
|
||||
@ -142,19 +142,6 @@ ag_gen/fast:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/build
|
||||
.PHONY : ag_gen/fast
|
||||
|
||||
#=============================================================================
|
||||
# Target rules for targets named decode
|
||||
|
||||
# Build rule for target.
|
||||
decode: cmake_check_build_system
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 decode
|
||||
.PHONY : decode
|
||||
|
||||
# fast build rule for target.
|
||||
decode/fast:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/build
|
||||
.PHONY : decode/fast
|
||||
|
||||
#=============================================================================
|
||||
# Target rules for targets named dynstr_test
|
||||
|
||||
@ -222,7 +209,6 @@ src/ag_gen/ag_gen.o: src/ag_gen/ag_gen.cpp.o
|
||||
# target to build an object file
|
||||
src/ag_gen/ag_gen.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/ag_gen.cpp.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/ag_gen.cpp.o
|
||||
.PHONY : src/ag_gen/ag_gen.cpp.o
|
||||
|
||||
src/ag_gen/ag_gen.i: src/ag_gen/ag_gen.cpp.i
|
||||
@ -231,7 +217,6 @@ src/ag_gen/ag_gen.i: src/ag_gen/ag_gen.cpp.i
|
||||
# target to preprocess a source file
|
||||
src/ag_gen/ag_gen.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/ag_gen.cpp.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/ag_gen.cpp.i
|
||||
.PHONY : src/ag_gen/ag_gen.cpp.i
|
||||
|
||||
src/ag_gen/ag_gen.s: src/ag_gen/ag_gen.cpp.s
|
||||
@ -240,7 +225,6 @@ src/ag_gen/ag_gen.s: src/ag_gen/ag_gen.cpp.s
|
||||
# target to generate assembly for a file
|
||||
src/ag_gen/ag_gen.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/ag_gen.cpp.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/ag_gen.cpp.s
|
||||
.PHONY : src/ag_gen/ag_gen.cpp.s
|
||||
|
||||
src/ag_gen/asset.o: src/ag_gen/asset.cpp.o
|
||||
@ -249,7 +233,6 @@ src/ag_gen/asset.o: src/ag_gen/asset.cpp.o
|
||||
# target to build an object file
|
||||
src/ag_gen/asset.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/asset.cpp.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/asset.cpp.o
|
||||
.PHONY : src/ag_gen/asset.cpp.o
|
||||
|
||||
src/ag_gen/asset.i: src/ag_gen/asset.cpp.i
|
||||
@ -258,7 +241,6 @@ src/ag_gen/asset.i: src/ag_gen/asset.cpp.i
|
||||
# target to preprocess a source file
|
||||
src/ag_gen/asset.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/asset.cpp.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/asset.cpp.i
|
||||
.PHONY : src/ag_gen/asset.cpp.i
|
||||
|
||||
src/ag_gen/asset.s: src/ag_gen/asset.cpp.s
|
||||
@ -267,7 +249,6 @@ src/ag_gen/asset.s: src/ag_gen/asset.cpp.s
|
||||
# target to generate assembly for a file
|
||||
src/ag_gen/asset.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/asset.cpp.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/asset.cpp.s
|
||||
.PHONY : src/ag_gen/asset.cpp.s
|
||||
|
||||
src/ag_gen/assetgroup.o: src/ag_gen/assetgroup.cpp.o
|
||||
@ -276,7 +257,6 @@ src/ag_gen/assetgroup.o: src/ag_gen/assetgroup.cpp.o
|
||||
# target to build an object file
|
||||
src/ag_gen/assetgroup.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/assetgroup.cpp.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/assetgroup.cpp.o
|
||||
.PHONY : src/ag_gen/assetgroup.cpp.o
|
||||
|
||||
src/ag_gen/assetgroup.i: src/ag_gen/assetgroup.cpp.i
|
||||
@ -285,7 +265,6 @@ src/ag_gen/assetgroup.i: src/ag_gen/assetgroup.cpp.i
|
||||
# target to preprocess a source file
|
||||
src/ag_gen/assetgroup.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/assetgroup.cpp.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/assetgroup.cpp.i
|
||||
.PHONY : src/ag_gen/assetgroup.cpp.i
|
||||
|
||||
src/ag_gen/assetgroup.s: src/ag_gen/assetgroup.cpp.s
|
||||
@ -294,7 +273,6 @@ src/ag_gen/assetgroup.s: src/ag_gen/assetgroup.cpp.s
|
||||
# target to generate assembly for a file
|
||||
src/ag_gen/assetgroup.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/assetgroup.cpp.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/assetgroup.cpp.s
|
||||
.PHONY : src/ag_gen/assetgroup.cpp.s
|
||||
|
||||
src/ag_gen/edge.o: src/ag_gen/edge.cpp.o
|
||||
@ -303,7 +281,6 @@ src/ag_gen/edge.o: src/ag_gen/edge.cpp.o
|
||||
# target to build an object file
|
||||
src/ag_gen/edge.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/edge.cpp.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/edge.cpp.o
|
||||
.PHONY : src/ag_gen/edge.cpp.o
|
||||
|
||||
src/ag_gen/edge.i: src/ag_gen/edge.cpp.i
|
||||
@ -312,7 +289,6 @@ src/ag_gen/edge.i: src/ag_gen/edge.cpp.i
|
||||
# target to preprocess a source file
|
||||
src/ag_gen/edge.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/edge.cpp.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/edge.cpp.i
|
||||
.PHONY : src/ag_gen/edge.cpp.i
|
||||
|
||||
src/ag_gen/edge.s: src/ag_gen/edge.cpp.s
|
||||
@ -321,7 +297,6 @@ src/ag_gen/edge.s: src/ag_gen/edge.cpp.s
|
||||
# target to generate assembly for a file
|
||||
src/ag_gen/edge.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/edge.cpp.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/edge.cpp.s
|
||||
.PHONY : src/ag_gen/edge.cpp.s
|
||||
|
||||
src/ag_gen/exploit.o: src/ag_gen/exploit.cpp.o
|
||||
@ -330,7 +305,6 @@ src/ag_gen/exploit.o: src/ag_gen/exploit.cpp.o
|
||||
# target to build an object file
|
||||
src/ag_gen/exploit.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/exploit.cpp.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/exploit.cpp.o
|
||||
.PHONY : src/ag_gen/exploit.cpp.o
|
||||
|
||||
src/ag_gen/exploit.i: src/ag_gen/exploit.cpp.i
|
||||
@ -339,7 +313,6 @@ src/ag_gen/exploit.i: src/ag_gen/exploit.cpp.i
|
||||
# target to preprocess a source file
|
||||
src/ag_gen/exploit.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/exploit.cpp.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/exploit.cpp.i
|
||||
.PHONY : src/ag_gen/exploit.cpp.i
|
||||
|
||||
src/ag_gen/exploit.s: src/ag_gen/exploit.cpp.s
|
||||
@ -348,7 +321,6 @@ src/ag_gen/exploit.s: src/ag_gen/exploit.cpp.s
|
||||
# target to generate assembly for a file
|
||||
src/ag_gen/exploit.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/exploit.cpp.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/exploit.cpp.s
|
||||
.PHONY : src/ag_gen/exploit.cpp.s
|
||||
|
||||
src/ag_gen/factbase.o: src/ag_gen/factbase.cpp.o
|
||||
@ -357,7 +329,6 @@ src/ag_gen/factbase.o: src/ag_gen/factbase.cpp.o
|
||||
# target to build an object file
|
||||
src/ag_gen/factbase.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/factbase.cpp.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/factbase.cpp.o
|
||||
.PHONY : src/ag_gen/factbase.cpp.o
|
||||
|
||||
src/ag_gen/factbase.i: src/ag_gen/factbase.cpp.i
|
||||
@ -366,7 +337,6 @@ src/ag_gen/factbase.i: src/ag_gen/factbase.cpp.i
|
||||
# target to preprocess a source file
|
||||
src/ag_gen/factbase.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/factbase.cpp.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/factbase.cpp.i
|
||||
.PHONY : src/ag_gen/factbase.cpp.i
|
||||
|
||||
src/ag_gen/factbase.s: src/ag_gen/factbase.cpp.s
|
||||
@ -375,7 +345,6 @@ src/ag_gen/factbase.s: src/ag_gen/factbase.cpp.s
|
||||
# target to generate assembly for a file
|
||||
src/ag_gen/factbase.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/factbase.cpp.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/factbase.cpp.s
|
||||
.PHONY : src/ag_gen/factbase.cpp.s
|
||||
|
||||
src/ag_gen/network_state.o: src/ag_gen/network_state.cpp.o
|
||||
@ -384,7 +353,6 @@ src/ag_gen/network_state.o: src/ag_gen/network_state.cpp.o
|
||||
# target to build an object file
|
||||
src/ag_gen/network_state.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/network_state.cpp.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/network_state.cpp.o
|
||||
.PHONY : src/ag_gen/network_state.cpp.o
|
||||
|
||||
src/ag_gen/network_state.i: src/ag_gen/network_state.cpp.i
|
||||
@ -393,7 +361,6 @@ src/ag_gen/network_state.i: src/ag_gen/network_state.cpp.i
|
||||
# target to preprocess a source file
|
||||
src/ag_gen/network_state.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/network_state.cpp.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/network_state.cpp.i
|
||||
.PHONY : src/ag_gen/network_state.cpp.i
|
||||
|
||||
src/ag_gen/network_state.s: src/ag_gen/network_state.cpp.s
|
||||
@ -402,7 +369,6 @@ src/ag_gen/network_state.s: src/ag_gen/network_state.cpp.s
|
||||
# target to generate assembly for a file
|
||||
src/ag_gen/network_state.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/network_state.cpp.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/network_state.cpp.s
|
||||
.PHONY : src/ag_gen/network_state.cpp.s
|
||||
|
||||
src/ag_gen/quality.o: src/ag_gen/quality.cpp.o
|
||||
@ -411,7 +377,6 @@ src/ag_gen/quality.o: src/ag_gen/quality.cpp.o
|
||||
# target to build an object file
|
||||
src/ag_gen/quality.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/quality.cpp.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/quality.cpp.o
|
||||
.PHONY : src/ag_gen/quality.cpp.o
|
||||
|
||||
src/ag_gen/quality.i: src/ag_gen/quality.cpp.i
|
||||
@ -420,7 +385,6 @@ src/ag_gen/quality.i: src/ag_gen/quality.cpp.i
|
||||
# target to preprocess a source file
|
||||
src/ag_gen/quality.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/quality.cpp.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/quality.cpp.i
|
||||
.PHONY : src/ag_gen/quality.cpp.i
|
||||
|
||||
src/ag_gen/quality.s: src/ag_gen/quality.cpp.s
|
||||
@ -429,7 +393,6 @@ src/ag_gen/quality.s: src/ag_gen/quality.cpp.s
|
||||
# target to generate assembly for a file
|
||||
src/ag_gen/quality.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/quality.cpp.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/quality.cpp.s
|
||||
.PHONY : src/ag_gen/quality.cpp.s
|
||||
|
||||
src/ag_gen/topology.o: src/ag_gen/topology.cpp.o
|
||||
@ -438,7 +401,6 @@ src/ag_gen/topology.o: src/ag_gen/topology.cpp.o
|
||||
# target to build an object file
|
||||
src/ag_gen/topology.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/topology.cpp.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/topology.cpp.o
|
||||
.PHONY : src/ag_gen/topology.cpp.o
|
||||
|
||||
src/ag_gen/topology.i: src/ag_gen/topology.cpp.i
|
||||
@ -447,7 +409,6 @@ src/ag_gen/topology.i: src/ag_gen/topology.cpp.i
|
||||
# target to preprocess a source file
|
||||
src/ag_gen/topology.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/topology.cpp.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/topology.cpp.i
|
||||
.PHONY : src/ag_gen/topology.cpp.i
|
||||
|
||||
src/ag_gen/topology.s: src/ag_gen/topology.cpp.s
|
||||
@ -456,7 +417,6 @@ src/ag_gen/topology.s: src/ag_gen/topology.cpp.s
|
||||
# target to generate assembly for a file
|
||||
src/ag_gen/topology.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/ag_gen/topology.cpp.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/ag_gen/topology.cpp.s
|
||||
.PHONY : src/ag_gen/topology.cpp.s
|
||||
|
||||
src/main.o: src/main.cpp.o
|
||||
@ -555,37 +515,12 @@ src/tests/mem_test.c.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/dynstr_test.dir/build.make CMakeFiles/dynstr_test.dir/src/tests/mem_test.c.s
|
||||
.PHONY : src/tests/mem_test.c.s
|
||||
|
||||
src/tools/decode.o: src/tools/decode.cpp.o
|
||||
.PHONY : src/tools/decode.o
|
||||
|
||||
# target to build an object file
|
||||
src/tools/decode.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/tools/decode.cpp.o
|
||||
.PHONY : src/tools/decode.cpp.o
|
||||
|
||||
src/tools/decode.i: src/tools/decode.cpp.i
|
||||
.PHONY : src/tools/decode.i
|
||||
|
||||
# target to preprocess a source file
|
||||
src/tools/decode.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/tools/decode.cpp.i
|
||||
.PHONY : src/tools/decode.cpp.i
|
||||
|
||||
src/tools/decode.s: src/tools/decode.cpp.s
|
||||
.PHONY : src/tools/decode.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
src/tools/decode.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/tools/decode.cpp.s
|
||||
.PHONY : src/tools/decode.cpp.s
|
||||
|
||||
src/util/avail_mem.o: src/util/avail_mem.cpp.o
|
||||
.PHONY : src/util/avail_mem.o
|
||||
|
||||
# target to build an object file
|
||||
src/util/avail_mem.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/avail_mem.cpp.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/avail_mem.cpp.o
|
||||
.PHONY : src/util/avail_mem.cpp.o
|
||||
|
||||
src/util/avail_mem.i: src/util/avail_mem.cpp.i
|
||||
@ -594,7 +529,6 @@ src/util/avail_mem.i: src/util/avail_mem.cpp.i
|
||||
# target to preprocess a source file
|
||||
src/util/avail_mem.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/avail_mem.cpp.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/avail_mem.cpp.i
|
||||
.PHONY : src/util/avail_mem.cpp.i
|
||||
|
||||
src/util/avail_mem.s: src/util/avail_mem.cpp.s
|
||||
@ -603,7 +537,6 @@ src/util/avail_mem.s: src/util/avail_mem.cpp.s
|
||||
# target to generate assembly for a file
|
||||
src/util/avail_mem.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/avail_mem.cpp.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/avail_mem.cpp.s
|
||||
.PHONY : src/util/avail_mem.cpp.s
|
||||
|
||||
src/util/build_sql.o: src/util/build_sql.c.o
|
||||
@ -612,7 +545,6 @@ src/util/build_sql.o: src/util/build_sql.c.o
|
||||
# target to build an object file
|
||||
src/util/build_sql.c.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/build_sql.c.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/build_sql.c.o
|
||||
.PHONY : src/util/build_sql.c.o
|
||||
|
||||
src/util/build_sql.i: src/util/build_sql.c.i
|
||||
@ -621,7 +553,6 @@ src/util/build_sql.i: src/util/build_sql.c.i
|
||||
# target to preprocess a source file
|
||||
src/util/build_sql.c.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/build_sql.c.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/build_sql.c.i
|
||||
.PHONY : src/util/build_sql.c.i
|
||||
|
||||
src/util/build_sql.s: src/util/build_sql.c.s
|
||||
@ -630,7 +561,6 @@ src/util/build_sql.s: src/util/build_sql.c.s
|
||||
# target to generate assembly for a file
|
||||
src/util/build_sql.c.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/build_sql.c.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/build_sql.c.s
|
||||
.PHONY : src/util/build_sql.c.s
|
||||
|
||||
src/util/common.o: src/util/common.cpp.o
|
||||
@ -639,7 +569,6 @@ src/util/common.o: src/util/common.cpp.o
|
||||
# target to build an object file
|
||||
src/util/common.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/common.cpp.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/common.cpp.o
|
||||
.PHONY : src/util/common.cpp.o
|
||||
|
||||
src/util/common.i: src/util/common.cpp.i
|
||||
@ -648,7 +577,6 @@ src/util/common.i: src/util/common.cpp.i
|
||||
# target to preprocess a source file
|
||||
src/util/common.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/common.cpp.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/common.cpp.i
|
||||
.PHONY : src/util/common.cpp.i
|
||||
|
||||
src/util/common.s: src/util/common.cpp.s
|
||||
@ -657,7 +585,6 @@ src/util/common.s: src/util/common.cpp.s
|
||||
# target to generate assembly for a file
|
||||
src/util/common.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/common.cpp.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/common.cpp.s
|
||||
.PHONY : src/util/common.cpp.s
|
||||
|
||||
src/util/db_functions.o: src/util/db_functions.cpp.o
|
||||
@ -666,7 +593,6 @@ src/util/db_functions.o: src/util/db_functions.cpp.o
|
||||
# target to build an object file
|
||||
src/util/db_functions.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/db_functions.cpp.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/db_functions.cpp.o
|
||||
.PHONY : src/util/db_functions.cpp.o
|
||||
|
||||
src/util/db_functions.i: src/util/db_functions.cpp.i
|
||||
@ -675,7 +601,6 @@ src/util/db_functions.i: src/util/db_functions.cpp.i
|
||||
# target to preprocess a source file
|
||||
src/util/db_functions.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/db_functions.cpp.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/db_functions.cpp.i
|
||||
.PHONY : src/util/db_functions.cpp.i
|
||||
|
||||
src/util/db_functions.s: src/util/db_functions.cpp.s
|
||||
@ -684,7 +609,6 @@ src/util/db_functions.s: src/util/db_functions.cpp.s
|
||||
# target to generate assembly for a file
|
||||
src/util/db_functions.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/db_functions.cpp.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/db_functions.cpp.s
|
||||
.PHONY : src/util/db_functions.cpp.s
|
||||
|
||||
src/util/hash.o: src/util/hash.c.o
|
||||
@ -693,7 +617,6 @@ src/util/hash.o: src/util/hash.c.o
|
||||
# target to build an object file
|
||||
src/util/hash.c.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/hash.c.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/hash.c.o
|
||||
.PHONY : src/util/hash.c.o
|
||||
|
||||
src/util/hash.i: src/util/hash.c.i
|
||||
@ -702,7 +625,6 @@ src/util/hash.i: src/util/hash.c.i
|
||||
# target to preprocess a source file
|
||||
src/util/hash.c.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/hash.c.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/hash.c.i
|
||||
.PHONY : src/util/hash.c.i
|
||||
|
||||
src/util/hash.s: src/util/hash.c.s
|
||||
@ -711,7 +633,6 @@ src/util/hash.s: src/util/hash.c.s
|
||||
# target to generate assembly for a file
|
||||
src/util/hash.c.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/hash.c.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/hash.c.s
|
||||
.PHONY : src/util/hash.c.s
|
||||
|
||||
src/util/list.o: src/util/list.c.o
|
||||
@ -720,7 +641,6 @@ src/util/list.o: src/util/list.c.o
|
||||
# target to build an object file
|
||||
src/util/list.c.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/list.c.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/list.c.o
|
||||
.PHONY : src/util/list.c.o
|
||||
|
||||
src/util/list.i: src/util/list.c.i
|
||||
@ -729,7 +649,6 @@ src/util/list.i: src/util/list.c.i
|
||||
# target to preprocess a source file
|
||||
src/util/list.c.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/list.c.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/list.c.i
|
||||
.PHONY : src/util/list.c.i
|
||||
|
||||
src/util/list.s: src/util/list.c.s
|
||||
@ -738,7 +657,6 @@ src/util/list.s: src/util/list.c.s
|
||||
# target to generate assembly for a file
|
||||
src/util/list.c.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/list.c.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/list.c.s
|
||||
.PHONY : src/util/list.c.s
|
||||
|
||||
src/util/mem.o: src/util/mem.c.o
|
||||
@ -747,7 +665,6 @@ src/util/mem.o: src/util/mem.c.o
|
||||
# target to build an object file
|
||||
src/util/mem.c.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/mem.c.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/mem.c.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/dynstr_test.dir/build.make CMakeFiles/dynstr_test.dir/src/util/mem.c.o
|
||||
.PHONY : src/util/mem.c.o
|
||||
|
||||
@ -757,7 +674,6 @@ src/util/mem.i: src/util/mem.c.i
|
||||
# target to preprocess a source file
|
||||
src/util/mem.c.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/mem.c.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/mem.c.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/dynstr_test.dir/build.make CMakeFiles/dynstr_test.dir/src/util/mem.c.i
|
||||
.PHONY : src/util/mem.c.i
|
||||
|
||||
@ -767,7 +683,6 @@ src/util/mem.s: src/util/mem.c.s
|
||||
# target to generate assembly for a file
|
||||
src/util/mem.c.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/mem.c.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/mem.c.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/dynstr_test.dir/build.make CMakeFiles/dynstr_test.dir/src/util/mem.c.s
|
||||
.PHONY : src/util/mem.c.s
|
||||
|
||||
@ -777,7 +692,6 @@ src/util/redis_manager.o: src/util/redis_manager.cpp.o
|
||||
# target to build an object file
|
||||
src/util/redis_manager.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/redis_manager.cpp.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/redis_manager.cpp.o
|
||||
.PHONY : src/util/redis_manager.cpp.o
|
||||
|
||||
src/util/redis_manager.i: src/util/redis_manager.cpp.i
|
||||
@ -786,7 +700,6 @@ src/util/redis_manager.i: src/util/redis_manager.cpp.i
|
||||
# target to preprocess a source file
|
||||
src/util/redis_manager.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/redis_manager.cpp.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/redis_manager.cpp.i
|
||||
.PHONY : src/util/redis_manager.cpp.i
|
||||
|
||||
src/util/redis_manager.s: src/util/redis_manager.cpp.s
|
||||
@ -795,7 +708,6 @@ src/util/redis_manager.s: src/util/redis_manager.cpp.s
|
||||
# target to generate assembly for a file
|
||||
src/util/redis_manager.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/redis_manager.cpp.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/redis_manager.cpp.s
|
||||
.PHONY : src/util/redis_manager.cpp.s
|
||||
|
||||
src/util/str_array.o: src/util/str_array.c.o
|
||||
@ -804,7 +716,6 @@ src/util/str_array.o: src/util/str_array.c.o
|
||||
# target to build an object file
|
||||
src/util/str_array.c.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/str_array.c.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/str_array.c.o
|
||||
.PHONY : src/util/str_array.c.o
|
||||
|
||||
src/util/str_array.i: src/util/str_array.c.i
|
||||
@ -813,7 +724,6 @@ src/util/str_array.i: src/util/str_array.c.i
|
||||
# target to preprocess a source file
|
||||
src/util/str_array.c.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/str_array.c.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/str_array.c.i
|
||||
.PHONY : src/util/str_array.c.i
|
||||
|
||||
src/util/str_array.s: src/util/str_array.c.s
|
||||
@ -822,7 +732,6 @@ src/util/str_array.s: src/util/str_array.c.s
|
||||
# target to generate assembly for a file
|
||||
src/util/str_array.c.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/str_array.c.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/str_array.c.s
|
||||
.PHONY : src/util/str_array.c.s
|
||||
|
||||
src/util/vector.o: src/util/vector.c.o
|
||||
@ -831,7 +740,6 @@ src/util/vector.o: src/util/vector.c.o
|
||||
# target to build an object file
|
||||
src/util/vector.c.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/vector.c.o
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/vector.c.o
|
||||
.PHONY : src/util/vector.c.o
|
||||
|
||||
src/util/vector.i: src/util/vector.c.i
|
||||
@ -840,7 +748,6 @@ src/util/vector.i: src/util/vector.c.i
|
||||
# target to preprocess a source file
|
||||
src/util/vector.c.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/vector.c.i
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/vector.c.i
|
||||
.PHONY : src/util/vector.c.i
|
||||
|
||||
src/util/vector.s: src/util/vector.c.s
|
||||
@ -849,7 +756,6 @@ src/util/vector.s: src/util/vector.c.s
|
||||
# target to generate assembly for a file
|
||||
src/util/vector.c.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/ag_gen.dir/build.make CMakeFiles/ag_gen.dir/src/util/vector.c.s
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/decode.dir/build.make CMakeFiles/decode.dir/src/util/vector.c.s
|
||||
.PHONY : src/util/vector.c.s
|
||||
|
||||
xp_parser.o: xp_parser.c.o
|
||||
@ -910,7 +816,6 @@ help:
|
||||
@echo "... rebuild_cache"
|
||||
@echo "... doc"
|
||||
@echo "... ag_gen"
|
||||
@echo "... decode"
|
||||
@echo "... dynstr_test"
|
||||
@echo "... nm_parser.o"
|
||||
@echo "... nm_parser.i"
|
||||
@ -957,9 +862,6 @@ help:
|
||||
@echo "... src/tests/mem_test.o"
|
||||
@echo "... src/tests/mem_test.i"
|
||||
@echo "... src/tests/mem_test.s"
|
||||
@echo "... src/tools/decode.o"
|
||||
@echo "... src/tools/decode.i"
|
||||
@echo "... src/tools/decode.s"
|
||||
@echo "... src/util/avail_mem.o"
|
||||
@echo "... src/util/avail_mem.i"
|
||||
@echo "... src/util/avail_mem.s"
|
||||
|
||||
BIN
build/ag_gen
BIN
build/ag_gen
Binary file not shown.
@ -13,7 +13,7 @@ export LD_LIBRARY_PATH=/home/nschrick/pkg/postgresql/12.4/lib
|
||||
NUM_SERV=${1:-1}
|
||||
TYPE=${2:-sync}
|
||||
CARS=${3:-2}
|
||||
DBNAME=${4:-default}
|
||||
DBNAME=${4:-tmp}
|
||||
|
||||
module load graphviz
|
||||
module load gcc
|
||||
|
||||
@ -11,4 +11,3 @@ fi
|
||||
|
||||
cmake -DCMAKE_BUILD_TYPE=Debug ../ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
|
||||
make ag_gen
|
||||
make decode
|
||||
|
||||
@ -129,106 +129,6 @@
|
||||
"command": "/usr/bin/c++ -DBOOST_ALL_NO_LIB -DBOOST_MPI_DYN_LINK -DBOOST_SERIALIZATION_DYN_LINK -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -std=c++14 -fopenmp -DREDIS -g -g -O0 -ggdb -Wall -fopenmp -pedantic -pthread -o CMakeFiles/ag_gen.dir/src/mpi/tasks.cpp.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/mpi/tasks.cpp\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/mpi/tasks.cpp"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/c++ -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -std=c++14 -fopenmp -DREDIS -g -g -O0 -ggdb -Wall -fopenmp -pedantic -o CMakeFiles/decode.dir/src/tools/decode.cpp.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/tools/decode.cpp\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/tools/decode.cpp"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/c++ -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -std=c++14 -fopenmp -DREDIS -g -g -O0 -ggdb -Wall -fopenmp -pedantic -o CMakeFiles/decode.dir/src/ag_gen/ag_gen.cpp.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/ag_gen.cpp\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/ag_gen.cpp"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/c++ -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -std=c++14 -fopenmp -DREDIS -g -g -O0 -ggdb -Wall -fopenmp -pedantic -o CMakeFiles/decode.dir/src/ag_gen/asset.cpp.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/asset.cpp\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/asset.cpp"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/c++ -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -std=c++14 -fopenmp -DREDIS -g -g -O0 -ggdb -Wall -fopenmp -pedantic -o CMakeFiles/decode.dir/src/ag_gen/assetgroup.cpp.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/assetgroup.cpp\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/assetgroup.cpp"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/c++ -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -std=c++14 -fopenmp -DREDIS -g -g -O0 -ggdb -Wall -fopenmp -pedantic -o CMakeFiles/decode.dir/src/ag_gen/edge.cpp.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/edge.cpp\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/edge.cpp"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/c++ -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -std=c++14 -fopenmp -DREDIS -g -g -O0 -ggdb -Wall -fopenmp -pedantic -o CMakeFiles/decode.dir/src/ag_gen/exploit.cpp.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/exploit.cpp\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/exploit.cpp"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/c++ -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -std=c++14 -fopenmp -DREDIS -g -g -O0 -ggdb -Wall -fopenmp -pedantic -o CMakeFiles/decode.dir/src/ag_gen/factbase.cpp.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/factbase.cpp\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/factbase.cpp"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/c++ -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -std=c++14 -fopenmp -DREDIS -g -g -O0 -ggdb -Wall -fopenmp -pedantic -o CMakeFiles/decode.dir/src/ag_gen/network_state.cpp.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/network_state.cpp\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/network_state.cpp"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/c++ -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -std=c++14 -fopenmp -DREDIS -g -g -O0 -ggdb -Wall -fopenmp -pedantic -o CMakeFiles/decode.dir/src/ag_gen/quality.cpp.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/quality.cpp\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/quality.cpp"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/c++ -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -std=c++14 -fopenmp -DREDIS -g -g -O0 -ggdb -Wall -fopenmp -pedantic -o CMakeFiles/decode.dir/src/ag_gen/topology.cpp.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/topology.cpp\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/ag_gen/topology.cpp"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/c++ -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -std=c++14 -fopenmp -DREDIS -g -g -O0 -ggdb -Wall -fopenmp -pedantic -o CMakeFiles/decode.dir/src/util/avail_mem.cpp.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/avail_mem.cpp\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/avail_mem.cpp"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/cc -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -g -o CMakeFiles/decode.dir/src/util/build_sql.c.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/build_sql.c\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/build_sql.c"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/c++ -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -std=c++14 -fopenmp -DREDIS -g -g -O0 -ggdb -Wall -fopenmp -pedantic -o CMakeFiles/decode.dir/src/util/common.cpp.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/common.cpp\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/common.cpp"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/c++ -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -std=c++14 -fopenmp -DREDIS -g -g -O0 -ggdb -Wall -fopenmp -pedantic -o CMakeFiles/decode.dir/src/util/db_functions.cpp.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/db_functions.cpp\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/db_functions.cpp"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/cc -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -g -o CMakeFiles/decode.dir/src/util/hash.c.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/hash.c\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/hash.c"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/cc -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -g -o CMakeFiles/decode.dir/src/util/list.c.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/list.c\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/list.c"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/cc -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -g -o CMakeFiles/decode.dir/src/util/mem.c.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/mem.c\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/mem.c"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/c++ -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -std=c++14 -fopenmp -DREDIS -g -g -O0 -ggdb -Wall -fopenmp -pedantic -o CMakeFiles/decode.dir/src/util/redis_manager.cpp.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/redis_manager.cpp\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/redis_manager.cpp"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/cc -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -g -o CMakeFiles/decode.dir/src/util/str_array.c.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/str_array.c\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/str_array.c"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/cc -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -g -o CMakeFiles/decode.dir/src/util/vector.c.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/vector.c\"",
|
||||
"file": "/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/vector.c"
|
||||
},
|
||||
{
|
||||
"directory": "/home/noah/Documents/School/Thesis Work/ag_parallel/build",
|
||||
"command": "/usr/bin/cc -I/usr/include/postgresql -I\"/home/noah/Documents/School/Thesis Work/ag_parallel/src\" -g -o CMakeFiles/dynstr_test.dir/src/util/mem.c.o -c \"/home/noah/Documents/School/Thesis Work/ag_parallel/src/util/mem.c\"",
|
||||
|
||||
BIN
build/decode
BIN
build/decode
Binary file not shown.
17
build/run.sh
17
build/run.sh
@ -1,10 +1,11 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#Optional Arguments for running batches of tests
|
||||
NUM_SERV=${1:-foo}
|
||||
TYPE=${2:-foo2}
|
||||
CARS=${3:-foo3}
|
||||
DBNAME=${4:-default}
|
||||
NUM_SERV=${1:-1}
|
||||
TYPE=${2:-sync}
|
||||
CARS=${3:-2}
|
||||
DBNAME=${4:-tmp}
|
||||
ITFC="eth0"
|
||||
|
||||
strval1="sync"
|
||||
strval2="non-sync"
|
||||
@ -39,6 +40,8 @@ else
|
||||
psql postgres -c "CREATE DATABASE "$DBNAME" WITH OWNER = ag_gen"
|
||||
psql -q "$DBNAME" < schema.sql
|
||||
fi
|
||||
|
||||
ITFC="wlp2s0"
|
||||
fi
|
||||
|
||||
#./ag_gen -n ../car_examples/generic_timeline_maintenance.nm -x ../car_examples/tmp.xp -g DOTFILE.dot -t 1 -q 1
|
||||
@ -47,15 +50,15 @@ fi
|
||||
|
||||
if [ "$TYPE" == "$strval1" ]; then
|
||||
#./ag_gen -n ../Feb_2021/generic_timeline_maintenance.nm -x ../Feb_2021/Sync/"$NUM_SERV"_Serv/sync_timeline_maintenance.xp -g DOTFILE.dot -t 1 -q 1 -p -a 0.9
|
||||
./ag_gen -n ../Oct_2021/nm_files/"$CARS"_car_timeline_maintenance.nm -x ../Oct_2021/Sync/4_Exploits/"$NUM_SERV"_Serv/sync_timeline_maintenance.xp -t 1 -q 1 -p -a 0.6 -z "$DBNAME"
|
||||
mpirun --mca btl tcp,self --mca btl_tcp_if_include "$ITFC" --mca opal_warn_on_missing_libcuda 0 ./ag_gen -n ../Oct_2021/nm_files/"$CARS"_car_timeline_maintenance.nm -x ../Oct_2021/Sync/4_Exploits/"$NUM_SERV"_Serv/sync_timeline_maintenance.xp -t 1 -q 1 -p -a 0.6 -z "$DBNAME"
|
||||
|
||||
elif [ "$TYPE" == "$strval2" ]; then
|
||||
#./ag_gen -n ../Feb_2021/generic_timeline_maintenance.nm -x ../Feb_2021/Non_Sync/"$NUM_SERV"_Serv/generic_timeline_maintenance.xp -g DOTFILE.dot -t 1 -q 1 -p -a 0.9
|
||||
mpirun --mca btl tcp,self --mca btl_tcp_if_include eth0 ./ag_gen -n ../Oct_2021/nm_files/"$CARS"_car_timeline_maintenance.nm -x ../Oct_2021/Non_Sync/4_Exploits/"$NUM_SERV"_Serv/generic_timeline_maintenance.xp -t 1 -q 1 -p -a 0.6 -z "$DBNAME"
|
||||
mpirun --mca btl tcp,self --mca btl_tcp_if_include "$ITFC" --mca opal_warn_on_missing_libcuda 0 ./ag_gen -n ../Oct_2021/nm_files/"$CARS"_car_timeline_maintenance.nm -x ../Oct_2021/Non_Sync/4_Exploits/"$NUM_SERV"_Serv/generic_timeline_maintenance.xp -t 1 -q 1 -p -a 0.6 -z "$DBNAME"
|
||||
|
||||
else
|
||||
echo "Running default."
|
||||
./ag_gen -n ../Oct_2021/nm_files/1_car_timeline_maintenance.nm -x ../Oct_2021/Sync/4_Exploits/1_Serv/sync_timeline_maintenance.xp -t 1 -q 1 -p -a 0.6 -z "$DBNAME"
|
||||
mpirun --mca btl tcp,self --mca btl_tcp_if_include "$ITFC" --mca opal_warn_on_missing_libcuda 0 ./ag_gen -n ../Oct_2021/nm_files/1_car_timeline_maintenance.nm -x ../Oct_2021/Sync/4_Exploits/1_Serv/sync_timeline_maintenance.xp -t 1 -q 1 -p -a 0.6 -z "$DBNAME"
|
||||
|
||||
fi
|
||||
|
||||
|
||||
20554
build/states.txt
20554
build/states.txt
File diff suppressed because it is too large
Load Diff
@ -18,6 +18,24 @@
|
||||
#include "../util/avail_mem.h"
|
||||
#include "../mpi/tasks.h"
|
||||
|
||||
#include <boost/archive/tmpdir.hpp>
|
||||
#include <boost/archive/text_iarchive.hpp>
|
||||
#include <boost/archive/text_oarchive.hpp>
|
||||
|
||||
#include <boost/serialization/base_object.hpp>
|
||||
#include <boost/serialization/utility.hpp>
|
||||
#include <boost/serialization/list.hpp>
|
||||
#include <boost/serialization/assume_abstract.hpp>
|
||||
#include <boost/serialization/string.hpp>
|
||||
|
||||
#include <boost/mpi.hpp>
|
||||
#include <boost/mpi/environment.hpp>
|
||||
#include <boost/mpi/communicator.hpp>
|
||||
|
||||
#include <boost/serialization/is_bitwise_serializable.hpp>
|
||||
|
||||
namespace mpi = boost::mpi;
|
||||
|
||||
#ifdef REDIS
|
||||
|
||||
/**
|
||||
@ -132,7 +150,9 @@ createPostConditions(std::tuple<Exploit, AssetGroup> &group, Keyvalue &facts) {
|
||||
* break and continue checking with the next exploit.
|
||||
* 5. Push the new network state onto the frontier to be expanded later.
|
||||
*/
|
||||
AGGenInstance &AGGen::generate(bool batch_process, int batch_size, int numThrd, int initQSize, double mem_threshold) {
|
||||
AGGenInstance &AGGen::generate(bool batch_process, int batch_size, int numThrd, int initQSize,\
|
||||
double mem_threshold, boost::mpi::communicator &world) {
|
||||
|
||||
std::vector<Exploit> exploit_list = instance.exploits;
|
||||
|
||||
//Create a vector that contains all the groups of exploits to be fired synchonously
|
||||
@ -660,7 +680,8 @@ AGGenInstance &AGGen::generate(bool batch_process, int batch_size, int numThrd,
|
||||
//printf("The critical took %lf s.\n",total_t);
|
||||
gettimeofday(&t2,NULL);
|
||||
total_t+=(t2.tv_sec-t1.tv_sec)*1000.0+(t2.tv_usec-t1.tv_usec)/1000.0;
|
||||
printf("AG TOOK %lf s.\n", total_t);
|
||||
std::cout << "Graph generation took " << total_t << " ms for process " << world.rank() << std::endl;
|
||||
printf("AG TOOK %lf ms.\n", total_t);
|
||||
|
||||
auto end = std::chrono::system_clock::now();
|
||||
|
||||
|
||||
@ -21,6 +21,24 @@
|
||||
#include "../util/redis_manager.h"
|
||||
#endif
|
||||
|
||||
#include <boost/archive/tmpdir.hpp>
|
||||
#include <boost/archive/text_iarchive.hpp>
|
||||
#include <boost/archive/text_oarchive.hpp>
|
||||
|
||||
#include <boost/serialization/base_object.hpp>
|
||||
#include <boost/serialization/utility.hpp>
|
||||
#include <boost/serialization/list.hpp>
|
||||
#include <boost/serialization/assume_abstract.hpp>
|
||||
#include <boost/serialization/string.hpp>
|
||||
|
||||
#include <boost/mpi.hpp>
|
||||
#include <boost/mpi/environment.hpp>
|
||||
#include <boost/mpi/communicator.hpp>
|
||||
|
||||
#include <boost/serialization/is_bitwise_serializable.hpp>
|
||||
|
||||
namespace mpi = boost::mpi;
|
||||
|
||||
using FactbaseItems =
|
||||
std::tuple<std::tuple<std::vector<Quality>, std::vector<Topology>>, int>;
|
||||
|
||||
@ -68,7 +86,8 @@ class AGGen {
|
||||
AGGen(AGGenInstance &_instance, RedisManager &_rman);
|
||||
#endif
|
||||
|
||||
AGGenInstance &generate(bool batch_process, int batch_num, int numThrd, int initQSize, double mem_threshold);
|
||||
AGGenInstance &generate(bool batch_process, int batch_num, int numThrd,\
|
||||
int initQSize, double mem_threshold, boost::mpi::communicator &world);
|
||||
};
|
||||
|
||||
#endif // AG_GEN_HPP
|
||||
|
||||
@ -46,9 +46,10 @@ class Factbase {
|
||||
|
||||
template<class Archive>
|
||||
void serialize(Archive &ar, const unsigned int /* file_version */){
|
||||
ar & id;
|
||||
ar & qualities;
|
||||
ar & topologies;
|
||||
ar & qualities & topologies;
|
||||
//ar & current_id & id & qsize & tsize & qualities & topologies;
|
||||
//ar & qualities;
|
||||
//ar & topologies;
|
||||
}
|
||||
|
||||
public:
|
||||
|
||||
96
src/main.cpp
96
src/main.cpp
@ -515,34 +515,13 @@ int main(int argc, char *argv[]) {
|
||||
}
|
||||
|
||||
std::cout << "Arguments parsed." << std::endl;
|
||||
/*
|
||||
// Initialize the MPI environment
|
||||
MPI_Init(NULL, NULL);
|
||||
|
||||
// Get the number of processes
|
||||
MPI_Comm_size(MPI_COMM_WORLD, &mpi_nodes);
|
||||
|
||||
// Get the rank of the process
|
||||
int world_rank;
|
||||
MPI_Comm_rank(MPI_COMM_WORLD, &world_rank);
|
||||
|
||||
// Get the name of the processor
|
||||
char processor_name[MPI_MAX_PROCESSOR_NAME];
|
||||
int name_len;
|
||||
MPI_Get_processor_name(processor_name, &name_len);
|
||||
|
||||
// Print off a hello world message
|
||||
printf("Hello from processor %s, rank %d out of %d processors\n",
|
||||
processor_name, world_rank, mpi_nodes);
|
||||
*/
|
||||
mpi::environment env;
|
||||
mpi::communicator world;
|
||||
std::cout << "\nHello from process " << world.rank() << " of " << world.size()
|
||||
<< "." << std::endl;
|
||||
|
||||
if(world.rank() == 0){
|
||||
|
||||
printf("Finished init\n");
|
||||
std::cout << "Finished init for process " << world.rank() << std::endl;
|
||||
|
||||
std::string config_section = (opt_config.empty()) ? "default" : opt_config;
|
||||
|
||||
@ -556,11 +535,11 @@ int main(int argc, char *argv[]) {
|
||||
std::string port = pt.get<std::string>("database.port");
|
||||
std::string username = pt.get<std::string>("database.username");
|
||||
std::string password = pt.get<std::string>("database.password");
|
||||
std::cout<<dbName<<std::endl;
|
||||
std::cout<<host<<std::endl;
|
||||
std::cout<<port<<std::endl;
|
||||
std::cout<<username<<std::endl;
|
||||
std::cout<<password<<std::endl;
|
||||
//std::cout<<dbName<<std::endl;
|
||||
//std::cout<<host<<std::endl;
|
||||
//std::cout<<port<<std::endl;
|
||||
//std::cout<<username<<std::endl;
|
||||
//std::cout<<password<<std::endl;
|
||||
//init_db("postgresql://" + username + ":" + password + "@" + host + ":" + port + "/" + dbName); //only to connect to the db, not query or update yet!!!
|
||||
if(db_name != "ag_gen"){
|
||||
std::cout << "\nThe given database differs from that specified in the config file. Overriding config database name." << std::endl;
|
||||
@ -570,8 +549,8 @@ int main(int argc, char *argv[]) {
|
||||
init_db("dbname="+dbName+" user="+username+" host="+host+" port="+port+" password="+password);
|
||||
gettimeofday(&tf2,NULL);
|
||||
double tdiff2=(tf2.tv_sec-ts1.tv_sec)*1000.0+(tf2.tv_usec-ts1.tv_usec)/1000.0;
|
||||
printf("Finished db connection\n");
|
||||
printf("---------->Initialization and Connecting to DB took %lf ms.<----------- \n",tdiff2);
|
||||
std::cout<< "Node " << world.rank() << " finished db connection\n" << std::endl;
|
||||
printf("Initialization and Connecting to DB took %lf ms for this process. \n",tdiff2);
|
||||
printf("\n");
|
||||
}
|
||||
else
|
||||
@ -581,7 +560,7 @@ int main(int argc, char *argv[]) {
|
||||
return(1);
|
||||
}
|
||||
|
||||
}
|
||||
if(world.rank() == 0){
|
||||
//--------------------------------------------
|
||||
//program block 2: read in network model and exploit pattern and store them in local database
|
||||
//--------------------------------------------
|
||||
@ -612,16 +591,15 @@ int main(int argc, char *argv[]) {
|
||||
|
||||
|
||||
printf("\n");
|
||||
printf("=====parsed nm=====\n");
|
||||
std::cout << parsednm <<"\n";
|
||||
printf("=====parsed xp=====\n");
|
||||
std::cout << parsedxp <<"\n";
|
||||
std::cout << "Finished parsing the network model." << std::endl;
|
||||
//printf("=====parsed nm=====\n");
|
||||
//std::cout << parsednm <<"\n";
|
||||
std::cout << "Finished parsing exploit file." << std::endl;
|
||||
//printf("=====parsed xp=====\n");
|
||||
//std::cout << parsedxp <<"\n";
|
||||
printf("\n");
|
||||
int batch_size = 0;
|
||||
if (batch_process)
|
||||
batch_size = std::stoi(opt_batch);
|
||||
|
||||
if (use_postgres && world.rank() == 0) {
|
||||
if (use_postgres) {
|
||||
std::cout << "Importing Models and Exploits into Database: ";
|
||||
import_models(parsednm, parsedxp); //directly use the strings parsednm and parsedxp as SQL commands
|
||||
gettimeofday(&tf3,NULL);
|
||||
@ -630,6 +608,15 @@ int main(int argc, char *argv[]) {
|
||||
printf("------>The time to load .nm and .xp into the database took %lf ms.<------\n",tdiff3);
|
||||
printf("\n");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
int batch_size = 0;
|
||||
if (batch_process)
|
||||
batch_size = std::stoi(opt_batch);
|
||||
|
||||
//Sync all Nodes to ensure everyone has connected to db and models are imported.
|
||||
world.barrier();
|
||||
|
||||
//------------------------------------------
|
||||
//program block 3:
|
||||
@ -655,41 +642,35 @@ int main(int argc, char *argv[]) {
|
||||
auto ex = fetch_all_exploits(); //make a copy of initial exploits
|
||||
}
|
||||
else {
|
||||
std::cout << "PRINTING PARSEDNM" << std::endl;
|
||||
const char delim = '),';
|
||||
std::vector<std::string> out;
|
||||
tokenize(parsednm, delim, out);
|
||||
|
||||
for (auto &s: out)
|
||||
{
|
||||
std::cout << s <<std::endl;
|
||||
}
|
||||
std::cout << "Not yet implemented." << std::endl;
|
||||
std::cout << "Not yet implemented. Please use a database." << std::endl;
|
||||
return(1);
|
||||
}
|
||||
if(world.rank() == 0){
|
||||
std::cout << "Assets: " << _instance.assets.size() << "\n"; //# of assets, vector size
|
||||
std::cout << "Exploits: " << _instance.exploits.size() << "\n"; //# of exploits, vector size
|
||||
std::cout << "Facts: " << _instance.facts.size() << "\n"; //how many different parameters and values are there? class size() method
|
||||
}
|
||||
|
||||
AGGenInstance postinstance;
|
||||
|
||||
//Serialization Unit Testing on Initial Data
|
||||
//serialization_unit_testing(_instance);
|
||||
|
||||
std::cout << "Generating Attack Graph: " << std::flush;
|
||||
AGGen gen(_instance);//use AGGen class to instantiate an obj with the name gen! _instance obj as the parameter! constructor defined in ag_gen.cpp
|
||||
postinstance = gen.generate(batch_process, batch_size, thread_count, init_qsize, alpha); //The method call to generate the attack graph, defined in ag_gen.cpp.
|
||||
postinstance = gen.generate(batch_process, batch_size, thread_count, init_qsize, alpha, world); //The method call to generate the attack graph, defined in ag_gen.cpp.
|
||||
|
||||
world.barrier();
|
||||
//Serialization Unit Testing on Postinstance Data
|
||||
serialization_unit_testing(postinstance, world);
|
||||
|
||||
|
||||
world.barrier();
|
||||
std::cout << "Done\n";
|
||||
//std::cout << "# of edges " <<postinstance.edges.size()<<std::endl;
|
||||
//std::cout << "# of edge_asset_binding" <<postinstance.edges.size()<<std::endl;
|
||||
//std::cout << "# of factbase " <<postinstance.factbases.size()<<std::endl;
|
||||
//std::cout << "# of factbase_item " <<postinstance.factbase_items.size()<<std::endl;
|
||||
|
||||
if(world.rank() == 0){
|
||||
save_ag_to_db(postinstance, true);
|
||||
|
||||
|
||||
std::cout << "Total Edges: " << get_num_edges() << std::endl;
|
||||
std::cout << "Total Time: " << postinstance.elapsed_seconds.count() << " seconds\n";
|
||||
//std::cout << "Total States: " << postinstance.factbases.size() << "\n";
|
||||
@ -710,12 +691,6 @@ int main(int argc, char *argv[]) {
|
||||
std::cout << "Creating graph visualization: " << std::flush;
|
||||
graph_ag(g, opt_graph);
|
||||
std::cout << "Done\n";
|
||||
|
||||
/*if(no_cycles) {
|
||||
std::cout << "Removing cycles: " << std::flush;
|
||||
remove_cycles(g);
|
||||
std::cout << "Done\n";
|
||||
}*/
|
||||
}
|
||||
|
||||
gettimeofday(&tf1,NULL);
|
||||
@ -723,6 +698,7 @@ int main(int argc, char *argv[]) {
|
||||
tdiff1=(tf1.tv_sec-ts1.tv_sec)*1000.0+(tf1.tv_usec-ts1.tv_usec)/1000.0;
|
||||
printf("-----------> total run time is %lf ms. <-----------\n",tdiff1);
|
||||
return(0);
|
||||
}
|
||||
/*
|
||||
struct timeval ts4,tf4;
|
||||
gettimeofday(&ts4,NULL);
|
||||
|
||||
@ -1,8 +1,3 @@
|
||||
//! main.cpp contains the main fuction that runs the program including flag
|
||||
//! handling and calls to functions that access the database and generate the
|
||||
//! attack graph.
|
||||
//!
|
||||
|
||||
#include <iostream>
|
||||
#include <fstream>
|
||||
#include <vector>
|
||||
@ -182,10 +177,16 @@ int network_state_check(NetworkState &ns1, NetworkState &ns2){
|
||||
|
||||
|
||||
void serialization_unit_testing(AGGenInstance &instance, boost::mpi::communicator &world){
|
||||
|
||||
if(world.rank() == 0){
|
||||
printf("\n");
|
||||
std::cout << "---------STARTING SERIALIZATION UNIT TESTING---------" << std::endl;
|
||||
}
|
||||
world.barrier();
|
||||
|
||||
std::cout << "\nHello from process " << world.rank() << " of " << world.size()
|
||||
<< "." << std::endl;
|
||||
world.barrier();
|
||||
|
||||
std::string filename(boost::archive::tmpdir());
|
||||
filename += "/qualfile.txt";
|
||||
@ -210,49 +211,20 @@ void serialization_unit_testing(AGGenInstance &instance, boost::mpi::communicato
|
||||
|
||||
for (auto qual : instance.initial_qualities)
|
||||
{
|
||||
//Send Qualities
|
||||
if(world.rank() == 0){
|
||||
//Can't use broadcast, since it doesn't send to self.
|
||||
if(world.size() == 1)
|
||||
world.isend(0, 0, qual);
|
||||
else
|
||||
broadcast(world, qual, 0);
|
||||
//save_quality(qual, filename.c_str());
|
||||
}
|
||||
|
||||
//Receive Qualities
|
||||
if(world.rank() > 0 || world.size() == 1){
|
||||
Quality new_qual;
|
||||
if(world.rank() == 0)
|
||||
new_qual = qual;
|
||||
|
||||
mpi::request req;
|
||||
|
||||
req = world.irecv(mpi::any_source, mpi::any_tag,new_qual);
|
||||
do {
|
||||
boost::optional<mpi::status> stat = req.test();
|
||||
if(stat){
|
||||
//std::cout << "New message from " << stat->source() << ":"<< std::endl;
|
||||
//new_qual.print();
|
||||
break;
|
||||
}
|
||||
} while(1);
|
||||
|
||||
//restore_quality(new_qual, filename.c_str());
|
||||
broadcast(world, new_qual, 0);
|
||||
qual_count++;
|
||||
qual_corr += quality_check(qual, new_qual);
|
||||
}
|
||||
|
||||
}
|
||||
int total_qual_corr;
|
||||
|
||||
if (world.rank() == 0 && world.size() == 1){
|
||||
total_qual_corr = qual_corr;
|
||||
}
|
||||
|
||||
if (world.rank() == 0 && world.size() > 1){
|
||||
reduce(world, qual_corr, total_qual_corr, std::plus<int>(), 0);
|
||||
}
|
||||
else if (world.rank() > 0 && world.size() > 1){
|
||||
reduce(world, qual_corr, std::plus<int>(), 0);
|
||||
}
|
||||
|
||||
if (world.rank() == 0){
|
||||
std::cout << "Quality Unit Testing: " << std::to_string(total_qual_corr) << "/" << std::to_string(world.size() * qual_count) << std::endl;
|
||||
@ -263,47 +235,20 @@ void serialization_unit_testing(AGGenInstance &instance, boost::mpi::communicato
|
||||
|
||||
for (auto topo : instance.initial_topologies)
|
||||
{
|
||||
//Send Topologies
|
||||
if(world.rank() == 0){
|
||||
//Can't use broadcast, since it doesn't send to self.
|
||||
if(world.size() == 1)
|
||||
world.isend(0, 0, topo);
|
||||
else
|
||||
broadcast(world, topo, 0);
|
||||
//save_quality(qual, filename.c_str());
|
||||
}
|
||||
|
||||
//Receive Topologies
|
||||
if(world.rank() > 0 || world.size() == 1){
|
||||
Topology new_top;
|
||||
if(world.rank() == 0)
|
||||
new_top = topo;
|
||||
|
||||
mpi::request req;
|
||||
|
||||
req = world.irecv(mpi::any_source, mpi::any_tag, new_top);
|
||||
do {
|
||||
boost::optional<mpi::status> stat = req.test();
|
||||
if(stat){
|
||||
break;
|
||||
}
|
||||
} while(1);
|
||||
|
||||
//restore_topology(new_top, filename.c_str());
|
||||
broadcast(world, new_top, 0);
|
||||
top_count++;
|
||||
top_corr += topology_check(topo, new_top);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
int total_top_corr;
|
||||
|
||||
if(world.rank() ==0 && world.size() == 1){
|
||||
total_top_corr = top_corr;
|
||||
}
|
||||
if (world.rank() == 0 && world.size() > 1){
|
||||
reduce(world, top_corr, total_top_corr, std::plus<int>(), 0);
|
||||
}
|
||||
else if (world.rank() > 0 && world.size() > 1){
|
||||
reduce(world, top_corr, std::plus<int>(), 0);
|
||||
}
|
||||
|
||||
if (world.rank() == 0){
|
||||
std::cout << "Topology Unit Testing: " << std::to_string(total_top_corr) << "/" << std::to_string(world.size() * top_count) << std::endl;
|
||||
@ -314,46 +259,25 @@ void serialization_unit_testing(AGGenInstance &instance, boost::mpi::communicato
|
||||
|
||||
for (auto fb : instance.factbases)
|
||||
{
|
||||
|
||||
//Send Factbases
|
||||
Factbase new_fb;
|
||||
int id;
|
||||
if(world.rank() == 0){
|
||||
//Can't use broadcast, since it doesn't send to self.
|
||||
if(world.size() == 1)
|
||||
world.isend(0, 0, fb);
|
||||
else
|
||||
broadcast(world, fb, 0);
|
||||
new_fb = fb;
|
||||
id = fb.get_id();
|
||||
}
|
||||
|
||||
//Receive Factbases
|
||||
if(world.rank() > 0 || world.size() == 1){
|
||||
Factbase new_fb;
|
||||
mpi::request req;
|
||||
|
||||
req = world.irecv(mpi::any_source, mpi::any_tag, new_fb);
|
||||
do {
|
||||
boost::optional<mpi::status> stat = req.test();
|
||||
if(stat){
|
||||
break;
|
||||
}
|
||||
} while(1);
|
||||
|
||||
broadcast(world, new_fb, 0);
|
||||
broadcast(world, id, 0);
|
||||
new_fb.force_set_id(id);
|
||||
fb_count++;
|
||||
fb_corr += factbase_check(fb, new_fb);
|
||||
}
|
||||
}
|
||||
|
||||
int total_fb_corr;
|
||||
|
||||
if(world.rank() ==0 && world.size() == 1){
|
||||
total_fb_corr = fb_corr;
|
||||
}
|
||||
if (world.rank() == 0 && world.size() > 1){
|
||||
reduce(world, fb_corr, total_fb_corr, std::plus<int>(), 0);
|
||||
}
|
||||
else if (world.rank() > 0 && world.size() > 1){
|
||||
reduce(world, fb_corr, std::plus<int>(), 0);
|
||||
}
|
||||
|
||||
|
||||
if (world.rank() == 0){
|
||||
std::cout << "Factbase Unit Testing: " << std::to_string(total_fb_corr) << "/" << std::to_string(world.size() * fb_count) << std::endl;
|
||||
@ -362,43 +286,24 @@ void serialization_unit_testing(AGGenInstance &instance, boost::mpi::communicato
|
||||
std::cout << "Performing Unit Testing on Network State Serialization." << std::endl;
|
||||
}
|
||||
|
||||
//Send Network State
|
||||
NetworkState new_ns;
|
||||
int id;
|
||||
if(world.rank() == 0){
|
||||
//Can't use broadcast, since it doesn't send to self.
|
||||
if(world.size() == 1)
|
||||
world.isend(0, 0, init_state);
|
||||
else
|
||||
broadcast(world, init_state, 0);
|
||||
new_ns = init_state;
|
||||
id = init_state.get_id();
|
||||
}
|
||||
|
||||
//Receive Network State
|
||||
if(world.rank() > 0 || world.size() == 1){
|
||||
NetworkState new_ns;
|
||||
mpi::request req;
|
||||
|
||||
req = world.irecv(mpi::any_source, mpi::any_tag, new_ns);
|
||||
do {
|
||||
boost::optional<mpi::status> stat = req.test();
|
||||
if(stat){
|
||||
break;
|
||||
}
|
||||
} while(1);
|
||||
|
||||
broadcast(world, new_ns, 0);
|
||||
broadcast(world, id, 0);
|
||||
new_ns.force_set_id(id);
|
||||
ns_count++;
|
||||
ns_corr += network_state_check(init_state, new_ns);
|
||||
}
|
||||
|
||||
int total_ns_corr;
|
||||
|
||||
if(world.rank() ==0 && world.size() == 1){
|
||||
total_ns_corr = ns_corr;
|
||||
}
|
||||
if (world.rank() == 0 && world.size() > 1){
|
||||
reduce(world, ns_corr, total_ns_corr, std::plus<int>(), 0);
|
||||
}
|
||||
else if (world.rank() > 0 && world.size() > 1){
|
||||
reduce(world, ns_corr, std::plus<int>(), 0);
|
||||
}
|
||||
|
||||
if (world.rank() == 0){
|
||||
std::cout << "Network State Unit Testing: " << std::to_string(total_ns_corr) << "/" << std::to_string(world.size() * ns_count) << std::endl;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user