SNAP (Small-world Network Analysis and Partitioning) is an extensible parallel framework for exploratory analysis and partitioning of large-scale networks.
SNAP is implemented in C, uses OpenMP primitives for parallelization, and targets sequential, multicore, and symmetric multiprocessor platforms. Our intent with SNAP is to provide a simple and intuitive interface for network analysis and application design, hiding the parallel programming complexity from the user. In addition to path-based, centrality, and community identification queries on large-scale graphs, we support commonly-used preprocessing kernels and quantitative measures that help understand the global network topology.
- [August 4, 2010] SNAP 0.4 has been released, plugging memory leaks, fixing modularity calculations for undirected graphs, adding conductance and clustering coefficient metrics, and adding seeded community detection routines.
- [May 25, 2009] Our IPDPS 2009 paper discusses new data structures and parallel algorithms for dynamic network analysis.
- [April 3, 2009] SNAP 0.3 has been released. Several bugs have been fixed, and the interface has been cleaned up. Updates include data structures and traversal algorithms for dynamic network analysis.
- [May 5, 2008] SNAP 0.2 is now available. This version includes a new parallel community identification implementation based on Newman's recursive spectral partitioning algorithm.
- [February 12, 2008] SNAP 0.1 is available for download. This is the first SourceForge release.
- [February 12, 2008] Our IPDPS 2008 paper presents an overview of SNAP and new parallel community identification approaches. Slides on SNAP and a draft user guide have also been posted online.
- SNAP 0.4 is the latest version. Get it here!
- Check out the user guide (v0.2) for information on how to install SNAP, and how to start using it.
- Send a mail to snap-graph-support at lists.sourceforge.net. You can also join this SourceForge mailing list and browse archived messages. Alternately, email Kamesh Madduri.
- Please also browse the Help and Open Discussion forums on SourceForge.
Kamesh Madduri and David A. Bader are the primary developers of SNAP. Nicolas Bitouze (ENS Cachan) and Arvind Batra (Georgia Tech) have contributed important modules.
Compact Graph Representations and Parallel Connectivity Algorithms for Massive
Dynamic Network Analysis
K. Madduri and D.A. Bader
The 23rd IEEE International Parallel and Distributed Processing Symposium (IPDPS 2009), Rome, Italy, May 25-29, 2009.
- SNAP: Small-world Network Analysis and Partitioning: an open-source parallel graph framework for the exploration of large-scale networks
D.A. Bader and K. Madduri
The 22nd IEEE International Parallel and Distributed Processing Symposium (IPDPS 2008), Miami, FL, April 14-18, 2008.