Skip to content

Maximum independent edge set based method for graph reduction on GPU

License

Notifications You must be signed in to change notification settings

evariste-dlr/mies-gpu

Repository files navigation

MIES-based graph reduction on GPU

French below

CUDA implementation of a multi-scale method for graph reduction, based on the computing of an independent edge set on a given graph (see Independent set.

Files and functions are prefixed with h_ or d_ depending on if this is a host or device implementation.

The input graph is given as a sparse adjacency matrix encoded both on the CSR and COO format. This particular coding is defined in sparse.[c|h]. To apply the method to multiple graphs, you cad define a large adjacency bloc-diagonal matrix in which each block is a particular graph.

bin/benchmark_mies generates a set of graphes (with in total 2 000 000 vertices) and apply the process on 10 graphs at a time to evaluate a mean execution time.


Implémentation CUDA d'une méthode multi-échelle de réduction de graphes basée sur le calcul d'un Maximal Independant Edge Set sur un graphe (voir Independent set.

Les fichiers ainsi que les fonctions peuvent être préfixées de h_ ou d_ suivant si il s'agit respectivement d'une implémentation sur CPU (host) ou GPU (device).

Le codage du graphe d'entrée est une matrice d'adjacence creuse, à la fois au format CSR et COO. Ce codage est défini dans sparse.[cpp|h]. Pour appliquer la méthode à plusieurs graphes il suffit de coder ces graphes dans une matrice diagonale par blocs dans laquelle chaque bloc représente un graphe.

L'exécutable bin/benchmark_mies génère un ensemble de graphes (au total 2 000 000 de noeuds) et applique le traitement sur ces graphes plusieurs fois (10) pour calculer une moyenne de temps. Les temps moyens CPU et GPU sont donnés en fin d'exécution.

Exemple de sortie :

 Generate graphs...
    2000000 nodes
    12400000 edges

 Compute MIES on CPU...
    [MIES]
   0.37017 s

 Compute MIES on GPU...
    [MIES]
   0.0690053 s

About

Maximum independent edge set based method for graph reduction on GPU

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published