Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

Repository files navigation

Benchmark

Benchmark different graph libraries on the same task(s) and dataset(s) in order to compare time performance.

Inspired by the graph benchmarks and results from graph results

Installation

  • clone repository

  • select Python Interpreter: use non default interperter that comes from OS. Instead install specific version. For example:

brew install python@3.12

Then add interpreter path in VsCode: Command Pallete (CMD+SHIFT+P) -> Python: Select Interpreter -> Enter interpreter path. Path is based on brew install location for specific version. For example:

brew info python@3.12
  • if you want to use Python virtual environment in VsCode, follow the instructions update .gitignore accordingly. For example:
 python3 -m venv .venv
  • open new terminal should activate the virtual environment automatically. For example for venv, you should see .venv mentioned near the cursor at the terminal (.venv) User falcon >

If it is not auto activated, add this line to .vscode/settings.json :

"python.terminal.activateEnvironment": true,

and open a new terminal.

  • install dependencies (python modules) based on requirements-dev.txt:
pip3 install -r requirements.txt

Download data

Run bash script inside "data" folder:

chmod +x download_data.sh
./download_data.sh

You can comment out lines with data files that you don't want to download.

Benchmark

Example command for benchmarking all tasks and printing results to output file:

python3 <path/to/this/script> <library> <dataset> <repeations> [task] > output/file.txt

Substitute with specific arguments:

  • library: Networkx
  • Input dataset tsv file: data/small.txt
  • Repeat every run number of times: 10
  • task: [Optional], default = All
  • Print the results to output file: output/networkx-small.txt

Example command:

python3 src/main.py networkx data/small.txt 10 > output/networkx-small.txt

Example command for benchmarking specific task CONNECTED_COMPONENT:

python3 src/main.py networkx data/small.txt 10 CONNECTED_COMPONENT > output/networkx-cc-small.txt

Task can be one of enum values from src/profiling/task.py

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages