Skip to content

Update README.md #4

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ KokkosKernels (https://github.com/kokkos/kokkos-kernels): Necessary only for Kok
Metis (https://github.com/KarypisLab/METIS): Used for initial partitioning of coarsest graph.
(Circumstantial) GKLib (https://github.com/KarypisLab/GKlib.git): Needed to link against the github distribution of Metis. Not needed for older distributions of Metis.

Note that all these dependencies are open source. If the Metis dependency is an issue, please contact the authors to obtain a Metis-free variant.

## Usage

### Building
Expand All @@ -31,11 +33,12 @@ jet\_serial: jet but runs on the host on a single thread.
pstat: Given a metis graph file, partition file, and k-value, will print out quality information on the partition.

### Using Jet Partitioner in Your Code
We provide a cmake package that you can install on your system. Add `find_package(jet CONFIG REQUIRED)` to your project's CMakeLists.txt file and link your executable/s to `jet::jet`. Include `jet.h` in your code to use one of the provided partitioning functions. Each function is distinguished by the target Kokkos execution space it will run in and the type of KokkosKernels CrsMatrix which it accepts. Reference `jet_defs.h` for the relevant template definitions of these parameters. You can set the desired part count and imbalance values on the input config_t struct (see `jet_config.h` for other parameters).
We provide a cmake package that you can install on your system. Add `find_package(jet CONFIG REQUIRED)` to your project's CMakeLists.txt file and link your executable/s to `jet::jet`. Include `jet.h` in your code to use one of the provided partitioning functions. Each function is distinguished by the target Kokkos execution space it will run in and the type of KokkosKernels CrsMatrix which it accepts. (If you have a graph in another format, you must first build a KokkosKernels CrsMatrix.) Reference `jet_defs.h` for the relevant template definitions of these parameters. You can set the desired part count and imbalance values on the input config_t struct (see `jet_config.h` for other parameters).

#### Tips
On Linux systems, you can create a file `~/.cmake/packages/jet/find.txt` that cmake will automatically use to find the jet cmake package.
Inside this file, add the full path to the jet install directory.
Inside this file, add the full path to the jet install directory.
Jet works both with 32-bit and 64-bit integers. See `jet_defs.h` for details.

### Input Format
The partitioner executables accept graphs stored in the metis graph file format. We do not yet support vertex weights within metis graph files.
Expand Down