Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Additional Check For SSSP Source Vertex & Fix SSSP Benchmark #4541

Merged
merged 9 commits into from
Jul 19, 2024
11 changes: 10 additions & 1 deletion benchmarks/cugraph/pytest-based/bench_algos.py
Original file line number Diff line number Diff line change
Expand Up @@ -330,8 +330,17 @@ def bench_bfs(gpubenchmark, graph):


def bench_sssp(gpubenchmark, graph):
if not graph.is_weighted():
pytest.skip("Skipping: Unweighted Graphs are not supported by SSSP")

sssp = dask_cugraph.sssp if is_graph_distributed(graph) else cugraph.sssp
start = graph.edgelist.edgelist_df["src"][0]

start_col = graph.select_random_vertices(num_vertices=1)
if is_graph_distributed(graph):
start_col = start_col.compute()

start = start_col.to_arrow().to_pylist()[0]

gpubenchmark(sssp, graph, start)


Expand Down
106 changes: 53 additions & 53 deletions benchmarks/pytest.ini
Original file line number Diff line number Diff line change
@@ -1,67 +1,67 @@
[pytest]
pythonpath =
shared/python
shared/python

testpaths =
cugraph/pytest_based
cugraph-service/pytest_based
cugraph/pytest_based
cugraph-service/pytest_based

addopts =
--benchmark-columns="min, max, mean, stddev, outliers"
--benchmark-columns="min, max, mean, stddev, outliers"

markers =
managedmem_on: RMM managed memory enabled
managedmem_off: RMM managed memory disabled
poolallocator_on: RMM pool allocator enabled
poolallocator_off: RMM pool allocator disabled
tiny: tiny datasets
small: small datasets
medium: medium datasets
large: large datasets
directed: directed datasets
undirected: undirected datasets
matrix_types: inputs are matrices
nx_types: inputs are NetowrkX Graph objects
cugraph_types: inputs are cuGraph Graph objects
sg: single-GPU
mg: multi-GPU
snmg: single-node multi-GPU
mnmg: multi-node multi-GPU
local: local cugraph
remote: cugraph-service
batch_size_100: batch size of 100 for sampling algos
batch_size_500: batch size of 500 for sampling algos
batch_size_1000: batch size of 1000 for sampling algos
batch_size_2500: batch size of 2500 for sampling algos
batch_size_5000: batch size of 5000 for sampling algos
batch_size_10000: batch size of 10000 for sampling algos
batch_size_20000: batch size of 20000 for sampling algos
batch_size_30000: batch size of 30000 for sampling algos
batch_size_40000: batch size of 40000 for sampling algos
batch_size_50000: batch size of 50000 for sampling algos
batch_size_60000: batch size of 60000 for sampling algos
batch_size_70000: batch size of 70000 for sampling algos
batch_size_80000: batch size of 80000 for sampling algos
batch_size_90000: batch size of 90000 for sampling algos
batch_size_100000: batch size of 100000 for sampling algos
num_clients_2: start 2 cugraph-service clients
num_clients_4: start 4 cugraph-service clients
num_clients_8: start 8 cugraph-service clients
num_clients_16: start 16 cugraph-service clients
num_clients_32: start 32 cugraph-service clients
fanout_10_25: fanout [10, 25] for sampling algos
fanout_5_10_15: fanout [5, 10, 15] for sampling algos
rmat_data: RMAT-generated synthetic datasets
file_data: datasets from $RAPIDS_DATASET_ROOT_DIR
managedmem_on: RMM managed memory enabled
managedmem_off: RMM managed memory disabled
poolallocator_on: RMM pool allocator enabled
poolallocator_off: RMM pool allocator disabled
tiny: tiny datasets
small: small datasets
medium: medium datasets
large: large datasets
directed: directed datasets
undirected: undirected datasets
matrix_types: inputs are matrices
nx_types: inputs are NetowrkX Graph objects
cugraph_types: inputs are cuGraph Graph objects
sg: single-GPU
mg: multi-GPU
snmg: single-node multi-GPU
mnmg: multi-node multi-GPU
local: local cugraph
remote: cugraph-service
batch_size_100: batch size of 100 for sampling algos
batch_size_500: batch size of 500 for sampling algos
batch_size_1000: batch size of 1000 for sampling algos
batch_size_2500: batch size of 2500 for sampling algos
batch_size_5000: batch size of 5000 for sampling algos
batch_size_10000: batch size of 10000 for sampling algos
batch_size_20000: batch size of 20000 for sampling algos
batch_size_30000: batch size of 30000 for sampling algos
batch_size_40000: batch size of 40000 for sampling algos
batch_size_50000: batch size of 50000 for sampling algos
batch_size_60000: batch size of 60000 for sampling algos
batch_size_70000: batch size of 70000 for sampling algos
batch_size_80000: batch size of 80000 for sampling algos
batch_size_90000: batch size of 90000 for sampling algos
batch_size_100000: batch size of 100000 for sampling algos
num_clients_2: start 2 cugraph-service clients
num_clients_4: start 4 cugraph-service clients
num_clients_8: start 8 cugraph-service clients
num_clients_16: start 16 cugraph-service clients
num_clients_32: start 32 cugraph-service clients
fanout_10_25: fanout [10, 25] for sampling algos
fanout_5_10_15: fanout [5, 10, 15] for sampling algos
rmat_data: RMAT-generated synthetic datasets
file_data: datasets from $RAPIDS_DATASET_ROOT_DIR

python_classes =
Bench*
Test*
Bench*
Test*

python_files =
bench_*
test_*
bench_*
test_*

python_functions =
bench_*
test_*
bench_*
test_*
Loading