Skip to main content

Next-generation graph learning benchmarking.

Project description

GraphBench: Next generation graph learning benchmarking

This is the package associated with the paper GraphBench: Next generation graph learning benchmarking.

It contains the code and tools necessary to load the datasets associated with the benchmark. GraphBench is a collection of benchmarking datasets across domains and tasks obtained from real world and synthetic applications.

Features

GraphBench comes as a Python package with the following features:

Data Loading Efficiently loads graph datasets for benchmarking and experimentation across all domains and tasks.
Metric Evaluation Supports a wide range of evaluation metrics for graph learning tasks.
Automated Model Tuning Integrates SMAC3 for automatic hyperparameter optimization of user models.

Installation

GraphBench can be easily installed using the python package manager pip: pip install graphbench-lib

Please make sure to update the installation of GraphBench before running the benchmark for best results. Alternatively one can also install from source:

git clone https://github.com/graphbench/package
cd package
pip install -e . 

Usage

The package can be easily used to get selected datasets from the GraphBench tasks:

import graphbench-lib as graphbench
Loader = graphbench.loader.Loader(root, dataset_name)
datasets = Loader.load()

Furthermore, standardized evaluation metrics can be obtained using the following methods:

Evaluator = graphbench.evaluator.Evaluator(metric_name)
metric_results = Evaluator.evaluate()

In order to use all datasets of a domain easily, each domain corresponds to one dataset_name variable:

Domain Dataset_name
Social media socialnetwork
Combinatorial Optimization co
SAT solving sat
Algorithmic reasoning algorithmic_reasoning_easy, algorithmic_reasoning_medium, algorithmic_reasoning_hard
Electronic circuits electronic_circuits
Chip design chipdesign
Weather forecasting weather

For a full list of the datasets, see the accompanying website or the datasets.csv file. The corresponding metrics can be found in the master.csv file.

Citing GraphBench:

If you use GraphBench or GraphBench datasets in your work please cite our paper:

@article{GraphBench,
title={GraphBench: Next-generation graph learning benchmarking}, 
author={Timo Stoll and Chendi Qian and Ben Finkelshtein and Ali Parviz and Darius Weber and Fabrizio Frasca and Hadar Shavit and Antoine Siraudin and Arman Mielke and Marie Anastacio and Erik Müller and Maya Bechler-Speicher and Michael Bronstein and Mikhail Galkin and Holger Hoos and Mathias Niepert and Bryan Perozzi and Jan Tönshoff and Christopher Morris},
year={2025},
journal={arXiv preprint arXiv:2512.04475}
}

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

graphbench_lib-0.1.1.2.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

graphbench_lib-0.1.1.2-py3-none-any.whl (4.3 kB view details)

Uploaded Python 3

File details

Details for the file graphbench_lib-0.1.1.2.tar.gz.

File metadata

  • Download URL: graphbench_lib-0.1.1.2.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for graphbench_lib-0.1.1.2.tar.gz
Algorithm Hash digest
SHA256 3c6fcb135c67f1b26b6486cdd89c5c4f60aa655c41ade72636bb8bf4662570f2
MD5 559cc5515fd3939e7d7569ff310bf7e6
BLAKE2b-256 53a5571852bc15ae5830c1d1af46837a4a90907e95315fd1d779210d44307a1d

See more details on using hashes here.

Provenance

The following attestation bundles were made for graphbench_lib-0.1.1.2.tar.gz:

Publisher: publish.yml on graphbench/package

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file graphbench_lib-0.1.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for graphbench_lib-0.1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 33396df372d64f3c4efbd62f9f5510e0f70f41b29c083b3f4a8f0aa5c2102911
MD5 96520738b33ddb4f26ca5f45bd62b671
BLAKE2b-256 a0da4dd89e7e6c376c837e237317a9713eecad914c1e3315bb94499019fc5149

See more details on using hashes here.

Provenance

The following attestation bundles were made for graphbench_lib-0.1.1.2-py3-none-any.whl:

Publisher: publish.yml on graphbench/package

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page