npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

nvgraph.sh

v1.3.1

Published

CLI for nvGraph, which is a GPU-based graph analytics library written by NVIDIA, using CUDA.

Downloads

110

Readme

CLI for nvGraph, which is a GPU-based graph analytics library written by NVIDIA, using CUDA. 🐚 Shell, 📜 Files, 📘 Wiki.

This is for running nvGraph functions right from the CLI with graphs in MatrixMarket format (.mtx) directly. It just needs a x86_64 linux machine with NVIDIA GPU drivers installed. Execution time, along with the results can be saved in JSON/YAML file. The executable code is written in C++. You can install this with npm install -g nvgraph.sh.

nvGraph, as mentioned above, is a GPU-based graph analytics library written by NVIDIA. It provides four core graph algorithms: Single Source Shortest Path (SSSP), PageRank, Triangle count, and Breadth First Search (BFS) traversal. Data is loaded into the GPU in Compressed Sparse Row (CSR) format, upon which computation is performed. Here, we load the graph stored in MatrixMarket format (a text-based file format for sparse matrices) into a dynamic graph data structure in the host (CPU) memory, which is then converted to CSR format and then transferred to the device (GPU) memory. Computed results are then copied back to the host memory, and written to the output file in suitable format (JSON/YAML). Note that measured time only includes the time required for computation on the GPU.

The SSSP algorithm accepts the source vertex as an argument, and returns the shortest distance to each vertex form the source vertex. The PageRank algorithm accepts the damping factor, tolerance, and max. iterations as arguments, and returns the rank of each vertex. In addition to ranks of vertices in case of the PageRank algorithm, we like to also obtain additional analytics of the rank values, i.e., Lorenz curve, and Gini coefficient. The Triangle count algorithm, unsurprisingly, counts the number of triangles in the graph. The BFS traversal algorithm accepts the source vertex as an argument, traverses the graph in breadthwise manner, and returns the distance and predecessor of each vertex from the source vertex. Note that detailed results are written to the output file only when the full (-f) flag is provided.

Alas, nvGraph is now no more actively developed. NVIDIA started developing cuGraph a collection of graph analytics that process data found in GPU Dataframes as part of RAPIDS.

Stability: Experimental.

## Finds single source shortest path from source vertex
## → returns distances
$ nvgraph sssp -o=out.json -f web-Google.mtx -s=1

## Finds pagerank of all vertices
## → returns ranks
$ nvgraph pagerank -o=out.json -f web-Google.mtx -a=0.85 -t=1e-6

## Counts triangles in undirected, lower triangular graph
## → returns count
$ nvgraph triangle-count -o=out.json -f web-Google.mtx

## Traverses breadth-first from source vertex
## → returns distances, predecessors
$ nvgraph traversal-bfs -o=out.json -f web-Google.mtx -s=1

Index

| Command | Action | | --------------- | ---------------------------- | | pagerank | Finds pagerank of all vertices. | | sssp | Finds single source shortest path from source vertex. | | traversal-bfs | Traverses breadth-first from source vertex. | | triangle-count | Counts triangles in undirected, lower triangular graph. |

References

ORG DOI