-
Notifications
You must be signed in to change notification settings - Fork 2
Home
Abdullah edited this page May 26, 2026
·
38 revisions
GraphBrew is a graph reordering framework. It composes lightweight primitives — Leiden communities, Rabbit Order, RCM, degree bucketing — into ten variants that match Gorder's cache quality at a fraction of the reorder cost.
Start here
- Getting-Started — build, run your first benchmark
- Reordering-Algorithms — every algorithm explained
- Running-Benchmarks — command-line workflow
Reference
- Command-Line-Reference — all flags
-
Supported-Graph-Formats —
.sg,.el,.wel - Graph-Benchmarks — graph catalog
- Troubleshooting — common errors and fixes
- FAQ — short answers to common questions
Deep dives
- GraphBrewOrder — the composable pipeline
-
Cache-Simulation —
bench/bin_sim/*usage - ECG-Final-Runs — current ECG/gem5 final-run profiles, charged P-OPT, and supported baselines
- ECG-Sniper-Runs — Sniper backend setup, bounded SIFT full-wrapper validation, DROPLET, and current multithread blocker
- ECG-Slurm-Runs — split ECG/gem5 final runs across UVA Slurm and aggregate later
- Code-Architecture — codebase map
- VLDB-Experiments — reproducing the paper
Developer
- Contributing — adding algorithms and benchmarks
- Python-Scripts — analysis tools
Research-only (not part of the VLDB submission)
- AdaptiveOrder-ML — runtime algorithm selector
| Pipeline stage | Choices | What it controls |
|---|---|---|
| Community detection | Leiden, Rabbit Order | spatial locality |
| Intra-community ordering | BFS, RCM, HubCluster, DBG, Gorder | temporal locality |
| Inter-community arrangement | hierarchical sort, Rabbit on super-graph, RCM, tile | global layout |
Variants ship as flags: -o 12:leiden, -o 12:rabbit, -o 12:hrab,
-o 12:tqr, -o 12:hcache, -o 12:rcm, -o 12:hubcluster, -o 12:streaming.
See Reordering-Algorithms for the full list.
- Code: https://github.com/UVA-LavaLab/GraphBrew
- Issues: https://github.com/UVA-LavaLab/GraphBrew/issues
- Paper: see
paper/main.tex(VLDB 2026 submission)