Skip to content

Commit

Permalink
SLICE: Add zoltan support for rcb, rib, hsfc
Browse files Browse the repository at this point in the history
  • Loading branch information
gsjaardema committed Sep 7, 2023
1 parent 47224ab commit 33446d1
Show file tree
Hide file tree
Showing 5 changed files with 368 additions and 88 deletions.
7 changes: 7 additions & 0 deletions packages/seacas/applications/slice/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,13 @@ IF (TPL_ENABLE_METIS)
ADD_DEFINITIONS(-DUSE_METIS)
ENDIF()

ASSERT_DEFINED(${PROJECT_NAME}_ENABLE_Zoltan)
IF (${PROJECT_NAME}_ENABLE_Zoltan)
TRIBITS_INCLUDE_DIRECTORIES(${Zoltan_INCLUDE_DIRS})
SET(ZOLTAN_DEP zoltan)
ADD_DEFINITIONS(-DUSE_ZOLTAN)
ENDIF()

TRIBITS_INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})

SET(HEADERS "")
Expand Down
15 changes: 11 additions & 4 deletions packages/seacas/applications/slice/SL_SystemInterface.C
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright(C) 1999-2022 National Technology & Engineering Solutions
// Copyright(C) 1999-2023 National Technology & Engineering Solutions
// of Sandia, LLC (NTESS). Under the terms of Contract DE-NA0003525 with
// NTESS, the U.S. Government retains certain rights in this software.
//
Expand Down Expand Up @@ -58,8 +58,15 @@ void SystemInterface::enroll_options()
"\t\t'linear' : #elem/#proc to each processor\n"
"\t\t'scattered': Shuffle elements to each processor (cyclic)\n"
"\t\t'random' : Random distribution of elements, maintains balance\n"
#if USE_METIS
"\t\t'rb' : Metis multilevel recursive bisection\n"
"\t\t'kway' : Metis multilevel k-way graph partitioning\n"
#endif
#if USE_ZOLTAN
"\t\t'rib' : Zoltan recursive-inertial-bisection\n"
"\t\t'rcb' : Zoltan recursive-coordinate-bisection\n"
"\t\t'hsfc' : Zoltan hilbert-space-filling curve\n"
#endif
"\t\t'variable' : Read element-processor assignment from an element variable\n"
"\t\t'map' : Read element-processor assignment from an element map [processor_id]\n"
"\t\t'file' : Read element-processor assignment from file",
Expand Down Expand Up @@ -161,8 +168,7 @@ void SystemInterface::enroll_options()
"\t\t 4 = Progress information in File/Rank.\n"
"\t\t 8 = File/Rank Decomposition information.\n"
"\t\t 16 = Chain/Line generation/decomp information.\n",
"\t\t 32 = Show decomposition histogram (elements / rank).",
"0");
"\t\t 32 = Show decomposition histogram (elements / rank).", "0");

options_.enroll("version", GetLongOption::NoValue, "Print version and exit", nullptr);

Expand Down Expand Up @@ -219,7 +225,8 @@ bool SystemInterface::parse_options(int argc, char **argv)
if (options_.retrieve("help") != nullptr) {
options_.usage();
fmt::print(stderr, "\n\t Can also set options via SLICE_OPTIONS environment variable.\n");
fmt::print(stderr, "\n\tDocumentation: https://sandialabs.github.io/seacas-docs/sphinx/html/index.html#slice\n");
fmt::print(stderr, "\n\tDocumentation: "
"https://sandialabs.github.io/seacas-docs/sphinx/html/index.html#slice\n");
fmt::print(stderr, "\n\t->->-> Send email to gsjaardema@gmail.com for slice support.<-<-<-\n");
exit(EXIT_SUCCESS);
}
Expand Down
4 changes: 2 additions & 2 deletions packages/seacas/applications/slice/SL_Version.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@

static std::array<std::string, 3> qainfo{
"slice",
"2023/09/06",
"2.0.02",
"2023/09/07",
"2.1.00",
};
Loading

0 comments on commit 33446d1

Please sign in to comment.