A small example package
Project description
dgNN
dgNN is a high-performance backend for GNN layers with DFG (Data Flow Graph) level optimization. dgNN project is based on PyTorch.
How to install
through pip
pip install dgNN
If pip couldn't build dgNN, we recommend you to build dgNN from source.
git clone git@github.com:dgSPARSE/dgNN.git
cd dgNN
bash install.sh
Requirement
CUDA toolkit >= 10.0
pytorch >= 1.7.0
scipy
dgl >= 0.7 (We use dgl's dataset)
We prepare a docker to run our implementation. You could run our dgNN in a docker container.
cd docker
docker build -t dgNN:v1 -f Dockerfile .
docker run -it dgNN:v1 /bin/bash
Examples
Our training script is modified from DGL. Now we implements three popular GNN models.
Run GAT
cd dgNN/script/train
python train_gatconv.py --num-hidden=64 --num-heads=4 --dataset cora --gpu 0
Run Monet
cd dgNN/script/train
python train_gmmconv.py --n-kernels 3 --pseudo-dim 2 --dataset cora --gpu 0
Run PointCloud
We use modelnet40-sampled-2048 data in our PointNet. DGL Code
cd dgNN/script/train
python train_edgeconv.py
Collaborative Projects
CogDL is a flexible and efficient graph-learning framework that uses GE-SpMM to accelerate GNN algorithms. This repo is implemented in CogDL as a submodule.
LICENSE
This project is projected by Apache-2.0 License. If you use our dgNN project in your research, please cite the following bib:
@misc{zhang2021understanding,
title={Understanding GNN Computational Graph: A Coordinated Computation, IO, and Memory Perspective},
author={Hengrui Zhang and Zhongming Yu and Guohao Dai and Guyue Huang and Yufei Ding and Yuan Xie and Yu Wang},
year={2021},
eprint={2110.09524},
archivePrefix={arXiv},
primaryClass={cs.LG}
}
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file dgNN-0.1.1.tar.gz
.
File metadata
- Download URL: dgNN-0.1.1.tar.gz
- Upload date:
- Size: 18.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 04c5122ad4e4456cfbc3c984eb3b498f67224bfa6eb7b710660d0fa141d3e5ac |
|
MD5 | 7d48c19424b5fcfcfc4a4df968f0dbf1 |
|
BLAKE2b-256 | 1a39a3a2e1b8635969bf7db8c917c9e9a1505752e8427ec4e7e2f3231ab30c61 |