alibaba / alibaba/GraphScope

[Gaia/Engine] Profiling a subtask to identify the performance bottleneck of running some LDBC queries (e.g. CR-6)

Open
#1,327 0 comments 0 reactions 3 assignees Claimed by @bmmcq View on GitHub
component:gaia
Dominant language
C++
Stars
3.6k
Forks
468
Avg merge
29m
Merged PRs (30d)
1

Description

There are already benchmarking tools provided in Pegasus's codebase, including:
- `pegasus/graph/examples/graph_load.rs`: a tool to parse some csv-formatted raw graph data into a binary format
- the raw graph data contains many lines, with each line represents:
- `export GRAPH_SPLIT='|'`: to configure the actual splitter in the raw data
- `export GRAPH_SKIP_HEAD=1`: to specify skipping a header in the raw data, if any
- `pegasus/benchmark/src/bin/amsk.rs`: a tool to benchmark the subtask, it defines a workload of the number of k-hop neighbors (the counting of k-hop neighbors as the subtask) of some randomly picked starting vertices
- `--data`: a binary graph data loaded via the above `graph_load`
- `-n`: the number of starting vertices to enter the subtask (default 100)
- `-p`: the number of workers (default 1)
- `-l`: an indicator of whether to use limit by one of computing the neighbors, this can be used to test the effectiveness of early-stop
- `pegasus/benchmark/src/bin/spmsk.rs`: an implementation of `amsk` workload that uses join instead of subtask This can use as a baseline for evaluating how good/bad the subtask's implementation is.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.