diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt index f1dda42ad9d..4ad44e878e5 100644 --- a/cpp/CMakeLists.txt +++ b/cpp/CMakeLists.txt @@ -58,6 +58,15 @@ option(USE_RAFT_STATIC "Build raft as a static library" OFF) option(CUGRAPH_COMPILE_RAFT_LIB "Compile the raft library instead of using it header-only" ON) option(CUDA_STATIC_RUNTIME "Statically link the CUDA toolkit runtime and libraries" OFF) +option(BUILD_CUGRAPH_COMPONENTS_ALGORITHMS "Enable components algorithms" ON) +option(BUILD_CUGRAPH_SAMPLING_ALGORITHMS "Enable sampling algorithms" ON) +option(BUILD_CUGRAPH_CENTRALITY_ALGORITHMS "Enable centrality algorithms" ON) +option(BUILD_CUGRAPH_COMMUNITY_ALGORITHMS "Enable community algorithms" ON) +option(BUILD_CUGRAPH_TRAVERSAL_ALGORITHMS "Enable traversal algorithms" ON) +option(BUILD_CUGRAPH_TREE_ALGORITHMS "Enable tree algorithms" ON) +option(BUILD_CUGRAPH_LINK_ANALYSIS_ALGORITHMS "Enable link analysis algorithms" ON) +option(BUILD_CUGRAPH_LINK_PREDICTION_ALGORITHMS "Enable link prediction algorithms" ON) + message(VERBOSE "CUGRAPH: CUDA_STATIC_RUNTIME=${CUDA_STATIC_RUNTIME}") ################################################################################ @@ -150,7 +159,6 @@ endif() # which should give us a better parallel schedule. set(CUGRAPH_SOURCES - src/utilities/shuffle_vertices_mg_v32_fp.cu src/utilities/shuffle_vertices_mg_v32_integral.cu src/utilities/shuffle_vertices_mg_v64_fp.cu src/utilities/shuffle_vertices_mg_v64_integral.cu @@ -166,25 +174,6 @@ set(CUGRAPH_SOURCES src/detail/groupby_and_count_mg_v64_e64.cu src/detail/collect_comm_wrapper_mg_v32_e32.cu src/detail/collect_comm_wrapper_mg_v64_e64.cu - src/sampling/detail/conversion_utilities.cu - src/sampling/random_walks_mg_v64_e64.cu - src/sampling/random_walks_mg_v32_e32.cu - src/community/detail/common_methods_mg_v64_e64.cu - src/community/detail/common_methods_mg_v32_e32.cu - src/community/detail/common_methods_sg_v64_e64.cu - src/community/detail/common_methods_sg_v32_e32.cu - src/community/detail/refine_sg_v64_e64.cu - src/community/detail/refine_sg_v32_e32.cu - src/community/detail/refine_mg_v64_e64.cu - src/community/detail/refine_mg_v32_e32.cu - src/community/edge_triangle_count_sg_v64_e64.cu - src/community/edge_triangle_count_sg_v32_e32.cu - src/community/edge_triangle_count_mg_v64_e64.cu - src/community/edge_triangle_count_mg_v32_e32.cu - src/community/detail/maximal_independent_moves_sg_v64_e64.cu - src/community/detail/maximal_independent_moves_sg_v32_e32.cu - src/community/detail/maximal_independent_moves_mg_v64_e64.cu - src/community/detail/maximal_independent_moves_mg_v32_e32.cu src/detail/utility_wrappers_32.cu src/detail/utility_wrappers_64.cu src/structure/graph_view_mg_v64_e64.cu @@ -197,83 +186,12 @@ set(CUGRAPH_SOURCES src/utilities/path_retrieval_sg_v64_e64.cu src/structure/legacy/graph.cu src/linear_assignment/legacy/hungarian.cu - src/link_prediction/jaccard_sg_v64_e64.cu - src/link_prediction/jaccard_sg_v32_e32.cu - src/link_prediction/sorensen_sg_v64_e64.cu - src/link_prediction/sorensen_sg_v32_e32.cu - src/link_prediction/overlap_sg_v64_e64.cu - src/link_prediction/overlap_sg_v32_e32.cu - src/link_prediction/cosine_sg_v64_e64.cu - src/link_prediction/cosine_sg_v32_e32.cu - src/link_prediction/jaccard_mg_v64_e64.cu - src/link_prediction/jaccard_mg_v32_e32.cu - src/link_prediction/sorensen_mg_v64_e64.cu - src/link_prediction/sorensen_mg_v32_e32.cu - src/link_prediction/overlap_mg_v64_e64.cu - src/link_prediction/overlap_mg_v32_e32.cu - src/link_prediction/cosine_mg_v64_e64.cu - src/link_prediction/cosine_mg_v32_e32.cu src/layout/legacy/force_atlas2.cu src/converters/legacy/COOtoCSR.cu - src/community/legacy/spectral_clustering.cu - src/community/louvain_sg_v64_e64.cu - src/community/louvain_sg_v32_e32.cu - src/community/louvain_mg_v64_e64.cu - src/community/louvain_mg_v32_e32.cu - src/community/leiden_sg_v64_e64.cu - src/community/leiden_sg_v32_e32.cu - src/community/leiden_mg_v64_e64.cu - src/community/leiden_mg_v32_e32.cu - src/community/ecg_sg_v64_e64.cu - src/community/ecg_sg_v32_e32.cu - src/community/ecg_mg_v64_e64.cu - src/community/ecg_mg_v32_e32.cu - src/community/egonet_sg_v64_e64.cu - src/community/egonet_sg_v32_e32.cu - src/community/egonet_mg_v64_e64.cu - src/community/egonet_mg_v32_e32.cu - src/community/k_truss_sg_v64_e64.cu - src/community/k_truss_sg_v32_e32.cu - src/community/k_truss_mg_v64_e64.cu - src/community/k_truss_mg_v32_e32.cu src/lookup/lookup_src_dst_mg_v32_e32.cu src/lookup/lookup_src_dst_mg_v64_e64.cu src/lookup/lookup_src_dst_sg_v32_e32.cu src/lookup/lookup_src_dst_sg_v64_e64.cu - src/sampling/random_walks_old_sg_v32_e32.cu - src/sampling/random_walks_old_sg_v64_e64.cu - src/sampling/random_walks_sg_v64_e64.cu - src/sampling/random_walks_sg_v32_e32.cu - src/sampling/detail/prepare_next_frontier_sg_v64_e64.cu - src/sampling/detail/prepare_next_frontier_sg_v32_e32.cu - src/sampling/detail/prepare_next_frontier_mg_v64_e64.cu - src/sampling/detail/prepare_next_frontier_mg_v32_e32.cu - src/sampling/detail/gather_one_hop_edgelist_sg_v64_e64.cu - src/sampling/detail/gather_one_hop_edgelist_sg_v32_e32.cu - src/sampling/detail/gather_one_hop_edgelist_mg_v64_e64.cu - src/sampling/detail/gather_one_hop_edgelist_mg_v32_e32.cu - src/sampling/detail/remove_visited_vertices_from_frontier_sg_v32_e32.cu - src/sampling/detail/remove_visited_vertices_from_frontier_sg_v64_e64.cu - src/sampling/detail/check_edge_bias_values_sg_v64_e64.cu - src/sampling/detail/check_edge_bias_values_sg_v32_e32.cu - src/sampling/detail/check_edge_bias_values_mg_v64_e64.cu - src/sampling/detail/check_edge_bias_values_mg_v32_e32.cu - src/sampling/detail/sample_edges_sg_v64_e64.cu - src/sampling/detail/sample_edges_sg_v32_e32.cu - src/sampling/detail/sample_edges_mg_v64_e64.cu - src/sampling/detail/sample_edges_mg_v32_e32.cu - src/sampling/detail/shuffle_and_organize_output_mg_v64_e64.cu - src/sampling/detail/shuffle_and_organize_output_mg_v32_e32.cu - src/sampling/neighbor_sampling_mg_v32_e32.cu - src/sampling/neighbor_sampling_mg_v64_e64.cu - src/sampling/neighbor_sampling_sg_v32_e32.cu - src/sampling/neighbor_sampling_sg_v64_e64.cu - src/sampling/negative_sampling_sg_v32_e32.cu - src/sampling/negative_sampling_sg_v64_e64.cu - src/sampling/negative_sampling_mg_v32_e32.cu - src/sampling/negative_sampling_mg_v64_e64.cu - src/sampling/sampling_post_processing_sg_v64_e64.cu - src/sampling/sampling_post_processing_sg_v32_e32.cu src/cores/core_number_sg_v64_e64.cu src/cores/core_number_sg_v32_e32.cu src/cores/core_number_mg_v64_e64.cu @@ -343,40 +261,6 @@ set(CUGRAPH_SOURCES src/structure/select_random_vertices_sg_v32_e32.cu src/structure/select_random_vertices_mg_v64_e64.cu src/structure/select_random_vertices_mg_v32_e32.cu - src/traversal/extract_bfs_paths_sg_v64_e64.cu - src/traversal/extract_bfs_paths_sg_v32_e32.cu - src/traversal/extract_bfs_paths_mg_v64_e64.cu - src/traversal/extract_bfs_paths_mg_v32_e32.cu - src/traversal/bfs_sg_v64_e64.cu - src/traversal/bfs_sg_v32_e32.cu - src/traversal/bfs_mg_v64_e64.cu - src/traversal/bfs_mg_v32_e32.cu - src/traversal/sssp_sg_v64_e64.cu - src/traversal/sssp_sg_v32_e32.cu - src/traversal/od_shortest_distances_sg_v64_e64.cu - src/traversal/od_shortest_distances_sg_v32_e32.cu - src/traversal/sssp_mg_v64_e64.cu - src/traversal/sssp_mg_v32_e32.cu - src/link_analysis/hits_sg_v64_e64.cu - src/link_analysis/hits_sg_v32_e32.cu - src/link_analysis/hits_mg_v64_e64.cu - src/link_analysis/hits_mg_v32_e32.cu - src/link_analysis/pagerank_sg_v64_e64.cu - src/link_analysis/pagerank_sg_v32_e32.cu - src/link_analysis/pagerank_mg_v64_e64.cu - src/link_analysis/pagerank_mg_v32_e32.cu - src/centrality/katz_centrality_sg_v64_e64.cu - src/centrality/katz_centrality_sg_v32_e32.cu - src/centrality/katz_centrality_mg_v64_e64.cu - src/centrality/katz_centrality_mg_v32_e32.cu - src/centrality/eigenvector_centrality_sg_v64_e64.cu - src/centrality/eigenvector_centrality_sg_v32_e32.cu - src/centrality/eigenvector_centrality_mg_v64_e64.cu - src/centrality/eigenvector_centrality_mg_v32_e32.cu - src/centrality/betweenness_centrality_sg_v64_e64.cu - src/centrality/betweenness_centrality_sg_v32_e32.cu - src/centrality/betweenness_centrality_mg_v64_e64.cu - src/centrality/betweenness_centrality_mg_v32_e32.cu src/tree/legacy/mst.cu src/from_cugraph_ops/sampling_index.cu src/components/weakly_connected_components_sg_v64_e64.cu @@ -407,18 +291,6 @@ set(CUGRAPH_SOURCES src/structure/symmetrize_edgelist_sg_v32_e32.cu src/structure/symmetrize_edgelist_mg_v64_e64.cu src/structure/symmetrize_edgelist_mg_v32_e32.cu - src/community/triangle_count_sg_v64_e64.cu - src/community/triangle_count_sg_v32_e32.cu - src/community/triangle_count_mg_v64_e64.cu - src/community/triangle_count_mg_v32_e32.cu - src/community/approx_weighted_matching_sg_v64_e64.cu - src/community/approx_weighted_matching_sg_v32_e32.cu - src/community/approx_weighted_matching_mg_v64_e64.cu - src/community/approx_weighted_matching_mg_v32_e32.cu - src/traversal/k_hop_nbrs_sg_v64_e64.cu - src/traversal/k_hop_nbrs_sg_v32_e32.cu - src/traversal/k_hop_nbrs_mg_v64_e64.cu - src/traversal/k_hop_nbrs_mg_v32_e32.cu src/mtmg/vertex_result_sg_v32_e32.cu src/mtmg/vertex_result_sg_v64_e64.cu src/mtmg/vertex_result_mg_v32_e32.cu @@ -429,6 +301,175 @@ set(CUGRAPH_SOURCES src/mtmg/vertex_pairs_result_mg_v64_e64.cu ) +if (BUILD_CUGRAPH_LINK_ANALYSIS_ALGORITHMS) +list(APPEND CUGRAPH_SOURCES + src/link_analysis/hits_sg_v64_e64.cu + src/link_analysis/hits_sg_v32_e32.cu + src/link_analysis/hits_mg_v64_e64.cu + src/link_analysis/hits_mg_v32_e32.cu + src/link_analysis/pagerank_sg_v64_e64.cu + src/link_analysis/pagerank_sg_v32_e32.cu + src/link_analysis/pagerank_mg_v64_e64.cu + src/link_analysis/pagerank_mg_v32_e32.cu +) +endif() # BUILD_CUGRAPH_LINK_ANALYSIS_ALGORITHMS + +if (BUILD_CUGRAPH_LINK_PREDICTION_ALGORITHMS) +list(APPEND CUGRAPH_SOURCES + src/link_prediction/jaccard_sg_v64_e64.cu + src/link_prediction/jaccard_sg_v32_e32.cu + src/link_prediction/sorensen_sg_v64_e64.cu + src/link_prediction/sorensen_sg_v32_e32.cu + src/link_prediction/overlap_sg_v64_e64.cu + src/link_prediction/overlap_sg_v32_e32.cu + src/link_prediction/cosine_sg_v64_e64.cu + src/link_prediction/cosine_sg_v32_e32.cu + src/link_prediction/jaccard_mg_v64_e64.cu + src/link_prediction/jaccard_mg_v32_e32.cu + src/link_prediction/sorensen_mg_v64_e64.cu + src/link_prediction/sorensen_mg_v32_e32.cu + src/link_prediction/overlap_mg_v64_e64.cu + src/link_prediction/overlap_mg_v32_e32.cu + src/link_prediction/cosine_mg_v64_e64.cu + src/link_prediction/cosine_mg_v32_e32.cu +) +endif() # BUILD_CUGRAPH_LINK_PREDICTION_ALGORITHMS + +if (BUILD_CUGRAPH_TRAVERSAL_ALGORITHMS) +list(APPEND CUGRAPH_SOURCES + src/traversal/extract_bfs_paths_sg_v64_e64.cu + src/traversal/extract_bfs_paths_sg_v32_e32.cu + src/traversal/extract_bfs_paths_mg_v64_e64.cu + src/traversal/extract_bfs_paths_mg_v32_e32.cu + src/traversal/bfs_sg_v64_e64.cu + src/traversal/bfs_sg_v32_e32.cu + src/traversal/bfs_mg_v64_e64.cu + src/traversal/bfs_mg_v32_e32.cu + src/traversal/sssp_sg_v64_e64.cu + src/traversal/sssp_sg_v32_e32.cu + src/traversal/od_shortest_distances_sg_v64_e64.cu + src/traversal/od_shortest_distances_sg_v32_e32.cu + src/traversal/sssp_mg_v64_e64.cu + src/traversal/sssp_mg_v32_e32.cu + src/traversal/k_hop_nbrs_sg_v64_e64.cu + src/traversal/k_hop_nbrs_sg_v32_e32.cu + src/traversal/k_hop_nbrs_mg_v64_e64.cu + src/traversal/k_hop_nbrs_mg_v32_e32.cu +) +endif() # BUILD_CUGRAPH_TRAVERSAL_ALGORITHMS + +if (BUILD_CUGRAPH_SAMPLING_ALGORITHMS) +list(APPEND CUGRAPH_SOURCES + src/sampling/random_walks_old_sg_v32_e32.cu + src/sampling/random_walks_old_sg_v64_e64.cu + src/sampling/random_walks_sg_v64_e64.cu + src/sampling/random_walks_sg_v32_e32.cu + src/sampling/detail/prepare_next_frontier_sg_v64_e64.cu + src/sampling/detail/prepare_next_frontier_sg_v32_e32.cu + src/sampling/detail/prepare_next_frontier_mg_v64_e64.cu + src/sampling/detail/prepare_next_frontier_mg_v32_e32.cu + src/sampling/detail/gather_one_hop_edgelist_sg_v64_e64.cu + src/sampling/detail/gather_one_hop_edgelist_sg_v32_e32.cu + src/sampling/detail/gather_one_hop_edgelist_mg_v64_e64.cu + src/sampling/detail/gather_one_hop_edgelist_mg_v32_e32.cu + src/sampling/detail/remove_visited_vertices_from_frontier_sg_v32_e32.cu + src/sampling/detail/remove_visited_vertices_from_frontier_sg_v64_e64.cu + src/sampling/detail/check_edge_bias_values_sg_v64_e64.cu + src/sampling/detail/check_edge_bias_values_sg_v32_e32.cu + src/sampling/detail/check_edge_bias_values_mg_v64_e64.cu + src/sampling/detail/check_edge_bias_values_mg_v32_e32.cu + src/sampling/detail/sample_edges_sg_v64_e64.cu + src/sampling/detail/sample_edges_sg_v32_e32.cu + src/sampling/detail/sample_edges_mg_v64_e64.cu + src/sampling/detail/sample_edges_mg_v32_e32.cu + src/sampling/detail/shuffle_and_organize_output_mg_v64_e64.cu + src/sampling/detail/shuffle_and_organize_output_mg_v32_e32.cu + src/sampling/neighbor_sampling_mg_v32_e32.cu + src/sampling/neighbor_sampling_mg_v64_e64.cu + src/sampling/neighbor_sampling_sg_v32_e32.cu + src/sampling/neighbor_sampling_sg_v64_e64.cu + src/sampling/negative_sampling_sg_v32_e32.cu + src/sampling/negative_sampling_sg_v64_e64.cu + src/sampling/negative_sampling_mg_v32_e32.cu + src/sampling/negative_sampling_mg_v64_e64.cu + src/sampling/sampling_post_processing_sg_v64_e64.cu + src/sampling/sampling_post_processing_sg_v32_e32.cu + src/sampling/detail/conversion_utilities.cu + src/sampling/random_walks_mg_v64_e64.cu + src/sampling/random_walks_mg_v32_e32.cu +) +endif() + +if (BUILD_CUGRAPH_CENTRALITY_ALGORITHMS) +list(APPEND CUGRAPH_SOURCES + src/centrality/katz_centrality_sg_v64_e64.cu + src/centrality/katz_centrality_sg_v32_e32.cu + src/centrality/katz_centrality_mg_v64_e64.cu + src/centrality/katz_centrality_mg_v32_e32.cu + src/centrality/eigenvector_centrality_sg_v64_e64.cu + src/centrality/eigenvector_centrality_sg_v32_e32.cu + src/centrality/eigenvector_centrality_mg_v64_e64.cu + src/centrality/eigenvector_centrality_mg_v32_e32.cu + src/centrality/betweenness_centrality_sg_v64_e64.cu + src/centrality/betweenness_centrality_sg_v32_e32.cu + src/centrality/betweenness_centrality_mg_v64_e64.cu + src/centrality/betweenness_centrality_mg_v32_e32.cu +) +endif() + +if (BUILD_CUGRAPH_COMMUNITY_ALGORITHMS) +list(APPEND CUGRAPH_SOURCES + src/community/detail/common_methods_mg_v64_e64.cu + src/community/detail/common_methods_mg_v32_e32.cu + src/community/detail/common_methods_sg_v64_e64.cu + src/community/detail/common_methods_sg_v32_e32.cu + src/community/detail/refine_sg_v64_e64.cu + src/community/detail/refine_sg_v32_e32.cu + src/community/detail/refine_mg_v64_e64.cu + src/community/detail/refine_mg_v32_e32.cu + src/community/edge_triangle_count_sg_v64_e64.cu + src/community/edge_triangle_count_sg_v32_e32.cu + src/community/edge_triangle_count_mg_v64_e64.cu + src/community/edge_triangle_count_mg_v32_e32.cu + src/community/detail/maximal_independent_moves_sg_v64_e64.cu + src/community/detail/maximal_independent_moves_sg_v32_e32.cu + src/community/detail/maximal_independent_moves_mg_v64_e64.cu + src/community/detail/maximal_independent_moves_mg_v32_e32.cu + src/community/legacy/spectral_clustering.cu + src/community/louvain_sg_v64_e64.cu + src/community/louvain_sg_v32_e32.cu + src/community/louvain_mg_v64_e64.cu + src/community/louvain_mg_v32_e32.cu + src/community/leiden_sg_v64_e64.cu + src/community/leiden_sg_v32_e32.cu + src/community/leiden_mg_v64_e64.cu + src/community/leiden_mg_v32_e32.cu + src/community/ecg_sg_v64_e64.cu + src/community/ecg_sg_v32_e32.cu + src/community/ecg_mg_v64_e64.cu + src/community/ecg_mg_v32_e32.cu + src/community/egonet_sg_v64_e64.cu + src/community/egonet_sg_v32_e32.cu + src/community/egonet_mg_v64_e64.cu + src/community/egonet_mg_v32_e32.cu + src/community/k_truss_sg_v64_e64.cu + src/community/k_truss_sg_v32_e32.cu + src/community/k_truss_mg_v64_e64.cu + src/community/k_truss_mg_v32_e32.cu + + src/community/triangle_count_sg_v64_e64.cu + src/community/triangle_count_sg_v32_e32.cu + src/community/triangle_count_mg_v64_e64.cu + src/community/triangle_count_mg_v32_e32.cu + src/community/approx_weighted_matching_sg_v64_e64.cu + src/community/approx_weighted_matching_sg_v32_e32.cu + src/community/approx_weighted_matching_mg_v64_e64.cu + src/community/approx_weighted_matching_mg_v32_e32.cu +) +endif() + + + add_library(cugraph ${CUGRAPH_SOURCES}) set_target_properties(cugraph diff --git a/cpp/tests/CMakeLists.txt b/cpp/tests/CMakeLists.txt index 6800b9c4769..cb6c568e381 100644 --- a/cpp/tests/CMakeLists.txt +++ b/cpp/tests/CMakeLists.txt @@ -148,7 +148,7 @@ endif() function(ConfigureTest CMAKE_TEST_NAME) set(options) - set(one_value GPUS PERCENT) + set(one_value GPUS PERCENT ENABLE_IF) set(multi_value) cmake_parse_arguments(_CUGRAPH_TEST "${options}" "${one_value}" "${multi_value}" ${ARGN}) if(NOT DEFINED _CUGRAPH_TEST_GPUS AND NOT DEFINED _CUGRAPH_TEST_PERCENT) @@ -162,6 +162,12 @@ function(ConfigureTest CMAKE_TEST_NAME) set(_CUGRAPH_TEST_PERCENT 100) endif() + # Skip the test if ENABLE_IF evaluates to OFF + if(DEFINED _CUGRAPH_TEST_ENABLE_IF AND _CUGRAPH_TEST_ENABLE_IF STREQUAL "OFF") + message(STATUS "Skipping test ${CMAKE_TEST_NAME} due to ENABLE_IF condition") + return() + endif() + add_executable(${CMAKE_TEST_NAME} ${_CUGRAPH_TEST_UNPARSED_ARGUMENTS}) target_link_libraries(${CMAKE_TEST_NAME} @@ -190,7 +196,18 @@ function(ConfigureTest CMAKE_TEST_NAME) endfunction() function(ConfigureTestMG CMAKE_TEST_NAME) - add_executable(${CMAKE_TEST_NAME} ${ARGN}) + set(options) + set(one_value ENABLE_IF) + set(multi_value) + cmake_parse_arguments(_CUGRAPH_TEST "${options}" "${one_value}" "${multi_value}" ${ARGN}) + + # Skip the test if ENABLE_IF evaluates to OFF + if(DEFINED _CUGRAPH_TEST_ENABLE_IF AND _CUGRAPH_TEST_ENABLE_IF STREQUAL "OFF") + message(STATUS "Skipping test ${CMAKE_TEST_NAME} due to ENABLE_IF condition") + return() + endif() + + add_executable(${CMAKE_TEST_NAME} ${_CUGRAPH_TEST_UNPARSED_ARGUMENTS}) target_include_directories(${CMAKE_TEST_NAME} PRIVATE "${CUGRAPH_SOURCE_DIR}/src") target_link_libraries(${CMAKE_TEST_NAME} PRIVATE @@ -230,7 +247,7 @@ endfunction() function(ConfigureCTest CMAKE_TEST_NAME) set(options) - set(one_value GPUS PERCENT) + set(one_value GPUS PERCENT ENABLE_IF) set(multi_value) cmake_parse_arguments(_CUGRAPH_TEST "${options}" "${one_value}" "${multi_value}" ${ARGN}) if(NOT DEFINED _CUGRAPH_TEST_GPUS AND NOT DEFINED _CUGRAPH_TEST_PERCENT) @@ -244,6 +261,12 @@ function(ConfigureCTest CMAKE_TEST_NAME) set(_CUGRAPH_TEST_PERCENT 100) endif() + # Skip the test if ENABLE_IF evaluates to OFF + if(DEFINED _CUGRAPH_TEST_ENABLE_IF AND _CUGRAPH_TEST_ENABLE_IF STREQUAL "OFF") + message(STATUS "Skipping test ${CMAKE_TEST_NAME} due to ENABLE_IF condition") + return() + endif() + add_executable(${CMAKE_TEST_NAME} ${_CUGRAPH_TEST_UNPARSED_ARGUMENTS}) target_link_libraries(${CMAKE_TEST_NAME} @@ -332,23 +355,23 @@ ConfigureTest(ERDOS_RENYI_GENERATOR_TEST generators/erdos_renyi_test.cpp) ################################################################################################### # - LOUVAIN tests --------------------------------------------------------------------------------- -ConfigureTest(LOUVAIN_TEST community/louvain_test.cpp) +ConfigureTest(LOUVAIN_TEST community/louvain_test.cpp ENABLE_IF ${BUILD_CUGRAPH_COMMUNITY_ALGORITHMS}) ################################################################################################### # - LEIDEN tests ---------------------------------------------------------------------------------- -ConfigureTest(LEIDEN_TEST community/leiden_test.cpp) +ConfigureTest(LEIDEN_TEST community/leiden_test.cpp ENABLE_IF ${BUILD_CUGRAPH_COMMUNITY_ALGORITHMS}) ################################################################################################### # - WEIGHTED MATCHING tests ----------------------------------------------------------------------- -ConfigureTest(WEIGHTED_MATCHING_TEST community/weighted_matching_test.cpp) +ConfigureTest(WEIGHTED_MATCHING_TEST community/weighted_matching_test.cpp ENABLE_IF ${BUILD_CUGRAPH_COMMUNITY_ALGORITHMS}) ################################################################################################### # - Balanced cut clustering tests ----------------------------------------------------------------- -ConfigureTest(BALANCED_TEST community/balanced_edge_test.cpp) +ConfigureTest(BALANCED_TEST community/balanced_edge_test.cpp ENABLE_IF ${BUILD_CUGRAPH_COMMUNITY_ALGORITHMS}) ################################################################################################### # - EGO tests ------------------------------------------------------------------------------------- -ConfigureTest(EGONET_TEST community/egonet_test.cpp GPUS 1 PERCENT 75) +ConfigureTest(EGONET_TEST community/egonet_test.cpp GPUS 1 PERCENT 75 ENABLE_IF ${BUILD_CUGRAPH_COMMUNITY_ALGORITHMS}) ################################################################################################### # - FORCE ATLAS 2 tests -------------------------------------------------------------------------- @@ -424,45 +447,49 @@ ConfigureTest(TEMPORAL_GRAPH_TEST structure/temporal_graph_test.cpp) ################################################################################################### # - BFS tests ------------------------------------------------------------------------------------- -ConfigureTest(BFS_TEST traversal/bfs_test.cpp) +ConfigureTest(BFS_TEST traversal/bfs_test.cpp ENABLE_IF ${BUILD_CUGRAPH_TRAVERSAL_ALGORITHMS}) ################################################################################################### # - Extract BFS Paths tests ----------------------------------------------------------------------- ConfigureTest(EXTRACT_BFS_PATHS_TEST - traversal/extract_bfs_paths_test.cu) + traversal/extract_bfs_paths_test.cu ENABLE_IF ${BUILD_CUGRAPH_TRAVERSAL_ALGORITHMS}) ################################################################################################### # - Multi-source BFS tests ------------------------------------------------------------------------ -ConfigureTest(MSBFS_TEST traversal/ms_bfs_test.cu) +ConfigureTest(MSBFS_TEST traversal/ms_bfs_test.cu ENABLE_IF ${BUILD_CUGRAPH_TRAVERSAL_ALGORITHMS}) ################################################################################################### # - SSSP tests ------------------------------------------------------------------------------------ -ConfigureTest(SSSP_TEST traversal/sssp_test.cpp) +ConfigureTest(SSSP_TEST traversal/sssp_test.cpp ENABLE_IF ${BUILD_CUGRAPH_TRAVERSAL_ALGORITHMS}) ################################################################################################### # - OD_SHORTEST_DISTANCES tests ------------------------------------------------------------------- -ConfigureTest(OD_SHORTEST_DISTANCES_TEST traversal/od_shortest_distances_test.cpp) +ConfigureTest(OD_SHORTEST_DISTANCES_TEST traversal/od_shortest_distances_test.cpp ENABLE_IF ${BUILD_CUGRAPH_TRAVERSAL_ALGORITHMS}) + +################################################################################################### +# - K-hop Neighbors tests ------------------------------------------------------------------------- +ConfigureTest(K_HOP_NBRS_TEST traversal/k_hop_nbrs_test.cpp ENABLE_IF ${BUILD_CUGRAPH_TRAVERSAL_ALGORITHMS}) ################################################################################################### # - HITS tests ------------------------------------------------------------------------------------ -ConfigureTest(HITS_TEST link_analysis/hits_test.cpp) +ConfigureTest(HITS_TEST link_analysis/hits_test.cpp ENABLE_IF ${BUILD_CUGRAPH_LINK_ANALYSIS_ALGORITHMS}) ################################################################################################### # - PAGERANK tests -------------------------------------------------------------------------------- -ConfigureTest(PAGERANK_TEST link_analysis/pagerank_test.cpp) +ConfigureTest(PAGERANK_TEST link_analysis/pagerank_test.cpp ENABLE_IF ${BUILD_CUGRAPH_LINK_ANALYSIS_ALGORITHMS}) ################################################################################################### # - KATZ_CENTRALITY tests ------------------------------------------------------------------------- -ConfigureTest(KATZ_CENTRALITY_TEST centrality/katz_centrality_test.cpp) +ConfigureTest(KATZ_CENTRALITY_TEST centrality/katz_centrality_test.cpp ENABLE_IF ${BUILD_CUGRAPH_CENTRALITY_ALGORITHMS}) ################################################################################################### # - EIGENVECTOR_CENTRALITY tests ------------------------------------------------------------------ -ConfigureTest(EIGENVECTOR_CENTRALITY_TEST centrality/eigenvector_centrality_test.cpp) +ConfigureTest(EIGENVECTOR_CENTRALITY_TEST centrality/eigenvector_centrality_test.cpp ENABLE_IF ${BUILD_CUGRAPH_CENTRALITY_ALGORITHMS}) ################################################################################################### # - BETWEENNESS_CENTRALITY tests ------------------------------------------------------------------ -ConfigureTest(BETWEENNESS_CENTRALITY_TEST centrality/betweenness_centrality_test.cpp) -ConfigureTest(EDGE_BETWEENNESS_CENTRALITY_TEST centrality/edge_betweenness_centrality_test.cpp) +ConfigureTest(BETWEENNESS_CENTRALITY_TEST centrality/betweenness_centrality_test.cpp ENABLE_IF ${BUILD_CUGRAPH_CENTRALITY_ALGORITHMS}) +ConfigureTest(EDGE_BETWEENNESS_CENTRALITY_TEST centrality/edge_betweenness_centrality_test.cpp ENABLE_IF ${BUILD_CUGRAPH_CENTRALITY_ALGORITHMS}) ################################################################################################### # - WEAKLY CONNECTED COMPONENTS tests ------------------------------------------------------------- @@ -480,56 +507,56 @@ target_include_directories(VERTEX_COLORING_TEST PRIVATE "${CUGRAPH_SOURCE_DIR}/s ################################################################################################### # - SIMILARITY tests ------------------------------------------------------------------------------ -ConfigureTest(SIMILARITY_TEST link_prediction/similarity_test.cu) +ConfigureTest(SIMILARITY_TEST link_prediction/similarity_test.cu ENABLE_IF ${BUILD_CUGRAPH_LINK_PREDICTION_ALGORITHMS}) ################################################################################################### # - WEIGHTED_SIMILARITY tests --------------------------------------------------------------------- -ConfigureTest(WEIGHTED_SIMILARITY_TEST link_prediction/weighted_similarity_test.cpp) +ConfigureTest(WEIGHTED_SIMILARITY_TEST link_prediction/weighted_similarity_test.cpp ENABLE_IF ${BUILD_CUGRAPH_LINK_PREDICTION_ALGORITHMS}) ################################################################################################### # - RANDOM_WALKS tests ---------------------------------------------------------------------------- # FIXME: Rename to random_walks_test.cu once the legacy implementation is deleted -ConfigureTest(RANDOM_WALKS_TEST sampling/sg_random_walks_test.cpp) +ConfigureTest(RANDOM_WALKS_TEST sampling/sg_random_walks_test.cpp ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) ################################################################################################### # - UNIFORM NBR SAMPLING tests -------------------------------------------------------------------- -ConfigureTest(UNIFORM_NEIGHBOR_SAMPLING_TEST sampling/uniform_neighbor_sampling.cpp) +ConfigureTest(UNIFORM_NEIGHBOR_SAMPLING_TEST sampling/uniform_neighbor_sampling.cpp ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) # - HOMOGENEOUS UNIFORM NBR SAMPLING tests -------------------------------------------------------- ConfigureTest( - HOMOGENEOUS_UNIFORM_NEIGHBOR_SAMPLING_TEST sampling/homogeneous_uniform_neighbor_sampling.cpp) + HOMOGENEOUS_UNIFORM_NEIGHBOR_SAMPLING_TEST sampling/homogeneous_uniform_neighbor_sampling.cpp ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) # - HETEROGENEOUS UNIFORM NBR SAMPLING tests ----------------------------------------------------- ConfigureTest( - HETEROGENEOUS_UNIFORM_NEIGHBOR_SAMPLING_TEST sampling/heterogeneous_uniform_neighbor_sampling.cpp) + HETEROGENEOUS_UNIFORM_NEIGHBOR_SAMPLING_TEST sampling/heterogeneous_uniform_neighbor_sampling.cpp ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) ################################################################################################### # - BIASED NBR SAMPLING tests --------------------------------------------------------------------- -ConfigureTest(BIASED_NEIGHBOR_SAMPLING_TEST sampling/biased_neighbor_sampling.cpp) +ConfigureTest(BIASED_NEIGHBOR_SAMPLING_TEST sampling/biased_neighbor_sampling.cpp ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) ################################################################################################### # - HOMOGENEOUS BIASED NBR SAMPLING tests --------------------------------------------------------- ConfigureTest( - HOMOGENEOUS_BIASED_NEIGHBOR_SAMPLING_TEST sampling/homogeneous_biased_neighbor_sampling.cpp) + HOMOGENEOUS_BIASED_NEIGHBOR_SAMPLING_TEST sampling/homogeneous_biased_neighbor_sampling.cpp ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) ################################################################################################### # - HETEROGENEOUS BIASED NBR SAMPLING tests ------------------------------------------------------- ConfigureTest( HETEROGENEOUS_BIASED_NEIGHBOR_SAMPLING_TESTT sampling/heterogeneous_biased_neighbor_sampling.cpp - GPUS 1 PERCENT 75) + GPUS 1 PERCENT 75 ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) ################################################################################################### # - SAMPLING_POST_PROCESSING tests ---------------------------------------------------------------- -ConfigureTest(SAMPLING_POST_PROCESSING_TEST sampling/sampling_post_processing_test.cpp) +ConfigureTest(SAMPLING_POST_PROCESSING_TEST sampling/sampling_post_processing_test.cpp ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) ################################################################################################### # - SAMPLING_HETEROGENEOUS_POST_PROCESSING tests -------------------------------------------------- ConfigureTest(SAMPLING_HETEROGENEOUS_POST_PROCESSING_TEST - sampling/sampling_heterogeneous_post_processing_test.cpp) + sampling/sampling_heterogeneous_post_processing_test.cpp ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) ################################################################################################### # - NEGATIVE SAMPLING tests -------------------------------------------------------------------- -ConfigureTest(NEGATIVE_SAMPLING_TEST sampling/negative_sampling.cpp PERCENT 100) +ConfigureTest(NEGATIVE_SAMPLING_TEST sampling/negative_sampling.cpp PERCENT 100 ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) ################################################################################################### # - Renumber tests -------------------------------------------------------------------------------- @@ -545,25 +572,20 @@ ConfigureTest(K_CORE_TEST cores/k_core_test.cpp) ################################################################################################### # - K-truss tests -------------------------------------------------------------------------- -ConfigureTest(K_TRUSS_TEST community/k_truss_test.cpp) +ConfigureTest(K_TRUSS_TEST community/k_truss_test.cpp ENABLE_IF ${BUILD_CUGRAPH_COMMUNITY_ALGORITHMS}) ################################################################################################### # - Triangle Count tests -------------------------------------------------------------------------- -ConfigureTest(TRIANGLE_COUNT_TEST community/triangle_count_test.cpp) +ConfigureTest(TRIANGLE_COUNT_TEST community/triangle_count_test.cpp ENABLE_IF ${BUILD_CUGRAPH_COMMUNITY_ALGORITHMS}) ################################################################################################### # - Edge Triangle Count tests --------------------------------------------------------------------- -ConfigureTest(EDGE_TRIANGLE_COUNT_TEST community/edge_triangle_count_test.cpp) +ConfigureTest(EDGE_TRIANGLE_COUNT_TEST community/edge_triangle_count_test.cpp ENABLE_IF ${BUILD_CUGRAPH_COMMUNITY_ALGORITHMS}) ################################################################################################### # - EDGE SOURCE DESTINATION LOOKUP tests ---------------------------------------------------------- ConfigureTest(LOOKUP_SRC_DST_TEST lookup/lookup_src_dst_test.cpp) -################################################################################################### -# - K-hop Neighbors tests ------------------------------------------------------------------------- -ConfigureTest(K_HOP_NBRS_TEST traversal/k_hop_nbrs_test.cpp) - - ################################################################################################### # - install tests --------------------------------------------------------------------------------- rapids_test_install_relocatable(INSTALL_COMPONENT_SET testing DESTINATION bin/gtests/libcugraph) @@ -607,70 +629,61 @@ if(BUILD_CUGRAPH_MG_TESTS) ############################################################################################### # - MG PAGERANK tests ------------------------------------------------------------------------- - ConfigureTestMG(MG_PAGERANK_TEST link_analysis/mg_pagerank_test.cpp) + ConfigureTestMG(MG_PAGERANK_TEST link_analysis/mg_pagerank_test.cpp ENABLE_IF ${BUILD_CUGRAPH_LINK_ANALYSIS_ALGORITHMS}) ############################################################################################### # - MG HITS tests ----------------------------------------------------------------------------- - ConfigureTestMG(MG_HITS_TEST link_analysis/mg_hits_test.cpp) + ConfigureTestMG(MG_HITS_TEST link_analysis/mg_hits_test.cpp ENABLE_IF ${BUILD_CUGRAPH_LINK_ANALYSIS_ALGORITHMS}) ############################################################################################### # - MG KATZ CENTRALITY tests ------------------------------------------------------------------ - ConfigureTestMG(MG_KATZ_CENTRALITY_TEST centrality/mg_katz_centrality_test.cpp) + ConfigureTestMG(MG_KATZ_CENTRALITY_TEST centrality/mg_katz_centrality_test.cpp ENABLE_IF ${BUILD_CUGRAPH_CENTRALITY_ALGORITHMS}) ############################################################################################### # - MG EIGENVECTOR CENTRALITY tests ----------------------------------------------------------- - ConfigureTestMG(MG_EIGENVECTOR_CENTRALITY_TEST centrality/mg_eigenvector_centrality_test.cpp) + ConfigureTestMG(MG_EIGENVECTOR_CENTRALITY_TEST centrality/mg_eigenvector_centrality_test.cpp ENABLE_IF ${BUILD_CUGRAPH_CENTRALITY_ALGORITHMS}) ############################################################################################### # - MG BETWEENNESS CENTRALITY tests ----------------------------------------------------------- - ConfigureTestMG(MG_BETWEENNESS_CENTRALITY_TEST centrality/mg_betweenness_centrality_test.cpp) + ConfigureTestMG(MG_BETWEENNESS_CENTRALITY_TEST centrality/mg_betweenness_centrality_test.cpp ENABLE_IF ${BUILD_CUGRAPH_CENTRALITY_ALGORITHMS}) ConfigureTestMG(MG_EDGE_BETWEENNESS_CENTRALITY_TEST - centrality/mg_edge_betweenness_centrality_test.cpp) - - ############################################################################################### - # - MG BFS tests ------------------------------------------------------------------------------ - ConfigureTestMG(MG_BFS_TEST traversal/mg_bfs_test.cpp) - - ############################################################################################### - # - Extract BFS Paths tests ------------------------------------------------------------------- - ConfigureTestMG(MG_EXTRACT_BFS_PATHS_TEST - traversal/mg_extract_bfs_paths_test.cu) - - ############################################################################################### - # - MG SSSP tests ----------------------------------------------------------------------------- - ConfigureTestMG(MG_SSSP_TEST traversal/mg_sssp_test.cpp) + centrality/mg_edge_betweenness_centrality_test.cpp ENABLE_IF ${BUILD_CUGRAPH_CENTRALITY_ALGORITHMS}) ############################################################################################### # - MG LOUVAIN tests -------------------------------------------------------------------------- - ConfigureTestMG(MG_LOUVAIN_TEST community/mg_louvain_test.cpp) + ConfigureTestMG(MG_LOUVAIN_TEST community/mg_louvain_test.cpp ENABLE_IF ${BUILD_CUGRAPH_COMMUNITY_ALGORITHMS}) ############################################################################################### # - MG LEIDEN tests -------------------------------------------------------------------------- - ConfigureTestMG(MG_LEIDEN_TEST community/mg_leiden_test.cpp) + ConfigureTestMG(MG_LEIDEN_TEST community/mg_leiden_test.cpp ENABLE_IF ${BUILD_CUGRAPH_COMMUNITY_ALGORITHMS}) ############################################################################################### # - MG WEIGHTED MATCHING tests ---------------------------------------------------------------- - ConfigureTestMG(MG_WEIGHTED_MATCHING_TEST community/mg_weighted_matching_test.cpp) + ConfigureTestMG(MG_WEIGHTED_MATCHING_TEST community/mg_weighted_matching_test.cpp ENABLE_IF ${BUILD_CUGRAPH_COMMUNITY_ALGORITHMS}) ############################################################################################### # - MG ECG tests -------------------------------------------------------------------------- - ConfigureTestMG(MG_ECG_TEST community/mg_ecg_test.cpp) - - ############################################################################################### - # - MG SELECT RANDOM VERTICES tests ----------------------------------------------------------- - ConfigureTestMG(MG_SELECT_RANDOM_VERTICES structure/mg_select_random_vertices_test.cpp) + ConfigureTestMG(MG_ECG_TEST community/mg_ecg_test.cpp ENABLE_IF ${BUILD_CUGRAPH_COMMUNITY_ALGORITHMS}) ############################################################################################### # - MG LOUVAIN tests -------------------------------------------------------------------------- - ConfigureTestMG(MG_EGONET_TEST community/mg_egonet_test.cu) + ConfigureTestMG(MG_EGONET_TEST community/mg_egonet_test.cu ENABLE_IF ${BUILD_CUGRAPH_COMMUNITY_ALGORITHMS}) ############################################################################################### # - MG EDGE TRIANGLE COUNT tests -------------------------------------------------------------- - ConfigureTestMG(MG_EDGE_TRIANGLE_COUNT_TEST community/mg_edge_triangle_count_test.cpp) + ConfigureTestMG(MG_EDGE_TRIANGLE_COUNT_TEST community/mg_edge_triangle_count_test.cpp ENABLE_IF ${BUILD_CUGRAPH_COMMUNITY_ALGORITHMS}) ############################################################################################### # - MG K-TRUSS tests -------------------------------------------------------------------------- - ConfigureTestMG(MG_K_TRUSS_TEST community/mg_k_truss_test.cpp) + ConfigureTestMG(MG_K_TRUSS_TEST community/mg_k_truss_test.cpp ENABLE_IF ${BUILD_CUGRAPH_COMMUNITY_ALGORITHMS}) + + ############################################################################################### + # - MG TRIANGLE COUNT tests ------------------------------------------------------------------- + ConfigureTestMG(MG_TRIANGLE_COUNT_TEST community/mg_triangle_count_test.cpp ENABLE_IF ${BUILD_CUGRAPH_COMMUNITY_ALGORITHMS}) + + ############################################################################################### + # - MG SELECT RANDOM VERTICES tests ----------------------------------------------------------- + ConfigureTestMG(MG_SELECT_RANDOM_VERTICES structure/mg_select_random_vertices_test.cpp) ############################################################################################### # - MG WEAKLY CONNECTED COMPONENTS tests ------------------------------------------------------ @@ -697,10 +710,6 @@ if(BUILD_CUGRAPH_MG_TESTS) # - MG K Core tests --------------------------------------------------------------------------- ConfigureTestMG(MG_K_CORE_TEST cores/mg_k_core_test.cpp) - ############################################################################################### - # - MG TRIANGLE COUNT tests ------------------------------------------------------------------- - ConfigureTestMG(MG_TRIANGLE_COUNT_TEST community/mg_triangle_count_test.cpp) - ############################################################################################### # - MG coarsening tests ----------------------------------------------------------------------- ConfigureTestMG(MG_COARSEN_GRAPH_TEST structure/mg_coarsen_graph_test.cpp) @@ -784,52 +793,65 @@ if(BUILD_CUGRAPH_MG_TESTS) ############################################################################################### # - MG UNIFORM NBR SAMPLING tests ------------------------------------------------------------- - ConfigureTestMG(MG_UNIFORM_NEIGHBOR_SAMPLING_TEST sampling/mg_uniform_neighbor_sampling.cpp) + ConfigureTestMG(MG_UNIFORM_NEIGHBOR_SAMPLING_TEST sampling/mg_uniform_neighbor_sampling.cpp ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) ############################################################################################### # - MG HOMOGENEOUS UNIFORM NBR SAMPLING tests ------------------------------------------------- ConfigureTestMG( - MG_HOMOGENEOUS_UNIFORM_NEIGHBOR_SAMPLING_TEST sampling/mg_homogeneous_uniform_neighbor_sampling.cpp) + MG_HOMOGENEOUS_UNIFORM_NEIGHBOR_SAMPLING_TEST sampling/mg_homogeneous_uniform_neighbor_sampling.cpp ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) ############################################################################################### # - MG HETEROGENEOUS UNIFORM NBR SAMPLING tests ------------------------------------------------- ConfigureTestMG( - MG_HETEROGENEOUS_UNIFORM_NEIGHBOR_SAMPLING_TEST sampling/mg_heterogeneous_uniform_neighbor_sampling.cpp) + MG_HETEROGENEOUS_UNIFORM_NEIGHBOR_SAMPLING_TEST sampling/mg_heterogeneous_uniform_neighbor_sampling.cpp ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) ############################################################################################### # - MG HOMOGENEOUS BIASED NBR SAMPLING tests -------------------------------------------------- ConfigureTestMG( - MG_HOMOGENEOUS_BIASED_NEIGHBOR_SAMPLING_TEST sampling/mg_homogeneous_biased_neighbor_sampling.cpp) + MG_HOMOGENEOUS_BIASED_NEIGHBOR_SAMPLING_TEST sampling/mg_homogeneous_biased_neighbor_sampling.cpp ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) ############################################################################################### # - MG HETEROGENEOUS BIASED NBR SAMPLING tests -------------------------------------------------- ConfigureTestMG( - MG_HETEROGENEOUS_BIASED_NEIGHBOR_SAMPLING_TEST sampling/mg_heterogeneous_biased_neighbor_sampling.cpp) + MG_HETEROGENEOUS_BIASED_NEIGHBOR_SAMPLING_TEST sampling/mg_heterogeneous_biased_neighbor_sampling.cpp ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) ############################################################################################### # - MG BIASED NBR SAMPLING tests -------------------------------------------------------------- - ConfigureTestMG(MG_BIASED_NEIGHBOR_SAMPLING_TEST sampling/mg_biased_neighbor_sampling.cpp) + ConfigureTestMG(MG_BIASED_NEIGHBOR_SAMPLING_TEST sampling/mg_biased_neighbor_sampling.cpp ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) ################################################################################################### # - NEGATIVE SAMPLING tests -------------------------------------------------------------------- - ConfigureTestMG(MG_NEGATIVE_SAMPLING_TEST sampling/mg_negative_sampling.cpp) + ConfigureTestMG(MG_NEGATIVE_SAMPLING_TEST sampling/mg_negative_sampling.cpp ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) ############################################################################################### # - MG RANDOM_WALKS tests --------------------------------------------------------------------- - ConfigureTestMG(MG_RANDOM_WALKS_TEST sampling/mg_random_walks_test.cpp) + ConfigureTestMG(MG_RANDOM_WALKS_TEST sampling/mg_random_walks_test.cpp ENABLE_IF ${BUILD_CUGRAPH_SAMPLING_ALGORITHMS}) ############################################################################################### # - MG WEIGHTED_SIMILARITY tests -------------------------------------------------------------- - ConfigureTestMG(MG_WEIGHTED_SIMILARITY_TEST link_prediction/mg_weighted_similarity_test.cpp) + ConfigureTestMG(MG_WEIGHTED_SIMILARITY_TEST link_prediction/mg_weighted_similarity_test.cpp ENABLE_IF ${BUILD_CUGRAPH_LINK_PREDICTION_ALGORITHMS}) ############################################################################################### # - MG SIMILARITY tests ----------------------------------------------------------------------- - ConfigureTestMG(MG_SIMILARITY_TEST link_prediction/mg_similarity_test.cpp) + ConfigureTestMG(MG_SIMILARITY_TEST link_prediction/mg_similarity_test.cpp ENABLE_IF ${BUILD_CUGRAPH_LINK_PREDICTION_ALGORITHMS}) ############################################################################################### # - MG K_HOP_NBRS tests ----------------------------------------------------------------------- - ConfigureTestMG(MG_K_HOP_NBRS_TEST traversal/mg_k_hop_nbrs_test.cpp) + ConfigureTestMG(MG_K_HOP_NBRS_TEST traversal/mg_k_hop_nbrs_test.cpp ENABLE_IF ${BUILD_CUGRAPH_TRAVERSAL_ALGORITHMS}) + + ############################################################################################### + # - MG BFS tests ------------------------------------------------------------------------------ + ConfigureTestMG(MG_BFS_TEST traversal/mg_bfs_test.cpp ENABLE_IF ${BUILD_CUGRAPH_TRAVERSAL_ALGORITHMS}) + + ############################################################################################### + # - Extract BFS Paths tests ------------------------------------------------------------------- + ConfigureTestMG(MG_EXTRACT_BFS_PATHS_TEST + traversal/mg_extract_bfs_paths_test.cu ENABLE_IF ${BUILD_CUGRAPH_TRAVERSAL_ALGORITHMS}) + + ############################################################################################### + # - MG SSSP tests ----------------------------------------------------------------------------- + ConfigureTestMG(MG_SSSP_TEST traversal/mg_sssp_test.cpp ENABLE_IF ${BUILD_CUGRAPH_TRAVERSAL_ALGORITHMS}) ############################################################################################### # - MG C API tests ---------------------------------------------------------------------------- @@ -873,8 +895,8 @@ endif() ConfigureCTest(CAPI_CREATE_GRAPH_TEST c_api/create_graph_test.c) ConfigureCTest(CAPI_GENERATE_RMAT_TEST c_api/generate_rmat_test.c) -ConfigureCTest(CAPI_PAGERANK_TEST c_api/pagerank_test.c) -ConfigureCTest(CAPI_KATZ_TEST c_api/katz_test.c) +ConfigureCTest(CAPI_PAGERANK_TEST c_api/pagerank_test.c ENABLE_IF ${BUILD_CUGRAPH_LINK_ANALYSIS_ALGORITHMS}) +ConfigureCTest(CAPI_KATZ_TEST c_api/katz_test.c ENABLE_IF ${BUILD_CUGRAPH_LINK_ANALYSIS_ALGORITHMS}) ConfigureCTest(CAPI_EIGENVECTOR_CENTRALITY_TEST c_api/eigenvector_centrality_test.c) ConfigureCTest(CAPI_BETWEENNESS_CENTRALITY_TEST c_api/betweenness_centrality_test.c) ConfigureCTest(CAPI_EDGE_BETWEENNESS_CENTRALITY_TEST c_api/edge_betweenness_centrality_test.c)