miniVite | OpenMP implementation of the first phase
kandi X-RAY | miniVite Summary
kandi X-RAY | miniVite Summary
miniVite is a C++ library. miniVite has no bugs, it has no vulnerabilities, it has a Permissive License and it has low support. You can download it from GitHub.
miniVite[*] is a proxy app that implements a single phase of Louvain method in distributed memory for graph community detection. Please refer to the following paper for a detailed discussion on distributed memory Louvain method implementation: Apart from real world graphs, users can use specific options to generate a Random Geometric Graph (RGG) in parallel. RGGs have been known to have good community structure: The way we have implemented a parallel RGG generator, vertices owned by a process will only have cross edges with its logical neighboring processes (each process owning 1x1/p chunk of the 1x1 unit square). If MPI process mapping is such that consecutive processes (for e.g., p and p+1) are physically close to each other, then there is not much communication stress in the application. Therefore, we allow an option to add extra edges between randomly chosen vertices, whose owners may be physically far apart. We require the total number of processes to be a power of 2 and total number of vertices to be perfectly divisible by the number of processes when parallel RGG generation options are used. This constraint does not apply to real world graphs passed to miniVite. We also allow users to pass any real world graph as input. However, we expect an input graph to be in a certain binary format, which we have observed to be more efficient than reading ASCII format files. The code for binary conversion (from a variety of common graph formats) is packaged separately with Vite, which is our full implementation of Louvain method in distributed memory. Please follow instructions in Vite README for binary file conversion. Vite could be downloaded from (please don't use the past PNNL/PNL link to download Vite, the following GitHub link is the correct one): Unlike Vite, we do not implement any heuristics to improve the performance of Louvain method. miniVite is a baseline parallel version, implementing only the first phase of Louvain method. This code requires an MPI library (preferably MPI-3 compatible) and C++11 compliant compiler for building.
miniVite[*] is a proxy app that implements a single phase of Louvain method in distributed memory for graph community detection. Please refer to the following paper for a detailed discussion on distributed memory Louvain method implementation: Apart from real world graphs, users can use specific options to generate a Random Geometric Graph (RGG) in parallel. RGGs have been known to have good community structure: The way we have implemented a parallel RGG generator, vertices owned by a process will only have cross edges with its logical neighboring processes (each process owning 1x1/p chunk of the 1x1 unit square). If MPI process mapping is such that consecutive processes (for e.g., p and p+1) are physically close to each other, then there is not much communication stress in the application. Therefore, we allow an option to add extra edges between randomly chosen vertices, whose owners may be physically far apart. We require the total number of processes to be a power of 2 and total number of vertices to be perfectly divisible by the number of processes when parallel RGG generation options are used. This constraint does not apply to real world graphs passed to miniVite. We also allow users to pass any real world graph as input. However, we expect an input graph to be in a certain binary format, which we have observed to be more efficient than reading ASCII format files. The code for binary conversion (from a variety of common graph formats) is packaged separately with Vite, which is our full implementation of Louvain method in distributed memory. Please follow instructions in Vite README for binary file conversion. Vite could be downloaded from (please don't use the past PNNL/PNL link to download Vite, the following GitHub link is the correct one): Unlike Vite, we do not implement any heuristics to improve the performance of Louvain method. miniVite is a baseline parallel version, implementing only the first phase of Louvain method. This code requires an MPI library (preferably MPI-3 compatible) and C++11 compliant compiler for building.
Support
Quality
Security
License
Reuse
Support
miniVite has a low active ecosystem.
It has 13 star(s) with 9 fork(s). There are 3 watchers for this library.
It had no major release in the last 12 months.
There are 4 open issues and 1 have been closed. On average issues are closed in 14 days. There are no pull requests.
It has a neutral sentiment in the developer community.
The latest version of miniVite is v1.2
Quality
miniVite has no bugs reported.
Security
miniVite has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
License
miniVite is licensed under the BSD-3-Clause License. This license is Permissive.
Permissive licenses have the least restrictions, and you can use them in most projects.
Reuse
miniVite releases are available to install and integrate.
Top functions reviewed by kandi - BETA
kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of miniVite
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of miniVite
miniVite Key Features
No Key Features are available at this moment for miniVite.
miniVite Examples and Code Snippets
No Code Snippets are available at this moment for miniVite.
Community Discussions
No Community Discussions are available at this moment for miniVite.Refer to stack overflow page for discussions.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install miniVite
You can download it from GitHub.
Support
For any new features, suggestions and bugs create an issue on GitHub.
If you have any questions check and ask questions on community page Stack Overflow .
Find more information at:
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page