|
Zoltan:
Parallel Partitioning, Load Balancing and Data-Management Services
The Zoltan Team
Sandia National Laboratories
Erik Boman
Karen Devine
Sivasankaran Rajamanickam
Michael Wolf
|
Georgia Tech
Umit Catalyurek
|
Past Zoltan Contributors
Sandia National Laboratories:
Cédric Chevalier (currently at CEA, DAM)
Robert Heaphy
Bruce Hendrickson
Matthew St. John
Vitus Leung
Lee Ann Riesen
Courtenay Vaughan
|
Siena College
James Teresco
|
National Institute of Standards and Technology
William F. Mitchell
|
Rensselaer Polytechnic Institute
Jamal Faik
Luis Gervasio
|
Google (formerly Ohio State University)
Doruk Bozdag
|
Tutorials:
-
"Getting Started with Zoltan: A Short Tutorial."
A ten-page introduction to using Zoltan is now available. Download it here:
PDF
Citation (BIBTEX)
Viewgraphs from the tutorial (PDF)
-
The Zoltan Tutorial presented at the 2010 ACTS Workshop is available here.
-
The Zoltan Tutorial presented at SciDAC2007 is now on-line. Download it here:
-
User's Guide (HTML)
Zoltan News:
-
Zoltan v3.901
was released in February 2022 as part of Trilinos v13.4.
This release includes capability to serialize a Zoltan struct for communication,
as well as minor tweaks for certain installations of MPI.
-
Zoltan v3.83
was released in January 2016 as part of Trilinos v12.6.
This release includes only minor software changes.
See more details below.
-
Zoltan v3.82
was released in May 2015 as part of Trilinos v12.
This release includes only minor software changes.
See more details below.
-
Zoltan v3.81
was released in November 2014 as part of Trilinos v11.12.
This release upgrades Zoltan's interface to ParMETIS v4 and Scotch v6.
See more details below.
-
Zoltan v3.8
was released in October 2013 as part of Trilinos v10.11.
This release uses Trilinos' BSD license! See more details below.
-
Zoltan v3.6
was released in September 2011 as part of Trilinos v10.8.
This release includes new recoloring capability in Zoltan's coloring algorithms.
Zoltan's hierarchical partitioning algorithm was
also updated for greater efficiency.
We have updated our third-party library support to include
PT-Scotch versions up to 5.1.12 and ParMETIS v3.1 and v4.0.
-
Zoltan v3.5 was released in March 2011. This release
differs from the Trilinos 10.6 release by including the following features:
-
Fix in Fortran90 interface that causes compilation and run-time problems
with gcc 4.5 and later when compiler optimization is enabled.
-
Support for 64-bit builds of Zoltan, enabling operation on more than 2B objects.
See details for building in the Zoltan User's Guide.
-
Faster graph builds for very specific input types. See parameter
GRAPH_BUILD_TYPE.
-
The Zoltan team received the "Best Algorithms Paper Award" at the
2007 International Parallel and Distributed
Processing Symposium (IPDPS07)
for their paper
"Hypergraph-based Dynamic Load Balancing for Adaptive Scientific Computations."
Abstract (HTML)
Paper (PDF)
Citation (BIBTEX)
-
Zoltan was part of several funded DOE SciDAC projects:
-
SciDAC2 CSCAPES: Combinatorial Scientific Computing
and Petascale Simulations
Contact: Erik Boman
-
SciDAC2 ITAPS: Interoperable
Technologies for Advanced Petascale Simulations
Contact: Karen Devine
-
SciDAC3 to SciDAC5: FASTMath: Frameworks, algorithms and scalable technologies
for mathematics
Contact: Karen Devine
Now available: Zoltan 3.901
New Features in Zoltan v3.83, released January 2016.
Release Notes
|
Backward Compatibility
- Autotools files updated to avoid deprecated perl features
- Added Zoltan_Get_Fn interface to return pointers to registered callback
functions.
- Several bug fixes in Fortran90 interface
- Subtle rounding error fixed in PHG hypergraph partitioner
- Minor changes to distributed data directory to track number of nodes
per processor; include file DD.h is now named zoltan_dd_const.h
New Features in Zoltan v3.82, released May 2015.
Release Notes
|
Backward Compatibility
- Minor code changes to remove compiler warnings and handle error conditions
- Enable "make -j" in autotools build of Zoltan's F90 interface.
New Features in Zoltan v3.81, released November 2014:
Release Notes
|
Backward Compatibility
- Better integration of ParMETIS v4, METIS v5, and Scotch v6.
- Better handling of interface differences between MPI versions 1 and 2.
- Bug fix in siMPI for non-MPI builds.
- Minor bugfixes.
New Features in Zoltan v3.8, released October 2013:
Release Notes
|
Backward Compatibility
- Zoltan is now released under Trilinos' BSD license.
- Added an improved hash function that speeds lookups,
particularly for apps using partitioning parameter RETURN_LISTS=PARTS.
- Added fixes for integer overflows that occur when A and B are valid
integers, but A*B overflows an integer.
- Removed support for OCT partitioning; use HSFC partitioning for similar decompositions.
- Removed support for third-party library DRUM.
- Removed support for the Zoltan v1.x interface.
New Features in Zoltan v3.6, released September 2011:
Release Notes
|
Backward Compatibility
-
Recoloring capability in Zoltan's coloring algorithms, obtaining colorings
with fewer colors.
-
Support for graph partitioning and ordering with PT-Scotch up to version 5.1.12.
-
Support for graph partitioning and ordering with ParMETIS v3.1 and v4.0.
-
Improved hierarchical partitioning performance.
-
Deprecation of OCT methods and interface defined in lbi_const.h. See the
backward compatibility notes for more
info.
New Features in Zoltan v3.5, released March 2011:
Release Notes
|
Backward Compatibility
-
Fix in Fortran90 interface that causes compilation and run-time problems
with gcc 4.5 and later when compiler optimization is enabled.
-
Support for 64-bit builds of Zoltan, enabling operation on more than 2B objects.
See details for building in the Zoltan User's Guide.
-
Faster graph builds for very specific input types. See parameter
GRAPH_BUILD_TYPE.
New Features in Zoltan v3.3, released July 2010:
Release Notes
|
Backward Compatibility
-
New local ordering method based on
space-filling curves to improve
memory and cache locality within a processor.
-
Ability to call graph partitioning algorithms using hypergraph callback
functions; this capability is useful applications with, say, block-structured
matrix distributions (e.g., SuperLU), where all information about a matrix
row or column is not available on a single processor.
-
Improved execution time of parallel hypergraph partitioning.
New Features in Zoltan v3.2, released September 2009:
Release Notes
|
Backward Compatibility
-
New interface
to
Scotch and PT-Scotch parallel graph partitioning
algorithms.
-
Simplified interface to graph ordering
and coloring algorithms
-
Automated symmetrization of graphs for graph partitioning, coloring
and ordering.
(See parameters GRAPH_SYMMETRIZE and GRAPH_SYM_WEIGHT in the
Scotch and
ParMETIS graph packages.)
-
Improved function
Zoltan_LB_Eval
returns more information about a decomposition to users.
-
Improved examples showing Zoltan usage in C and C++
are included in zoltan/example.
-
Improved support for builds under autotools,
including builds of Zoltan's F90 interface.
-
New support for CMake builds
and testing through Trilinos; builds of
Zoltan's F90 interface are included.
-
Improved integration into
Isorropia
partitioners for Trilinos' Epetra classes.
New Features in Zoltan v3.1, released September 2008:
New Features in Zoltan 3.0, released May 2007:
New Features in Zoltan 2:
See the
release notes for descriptions
of new functionality and more.
The Zoltan Library provides critical data-management services
to a wide range of parallel applications. Zoltan includes many utilities
needed by unstructured and/or adaptive parallel applications. These utilities
include
Zoltan's object-oriented interface is easy-to-use and enables
Zoltan to be used by a number of different applications. Zoltan is
designed to be flexible and extensible, so different algorithms can be
used, compared and added easily.
Why Zoltan is needed:
-
In some applications, work loads and/or geometric locality change as computations
proceed;
Zoltan provides dynamic redistribution of data to maintain high
performance.
-
Adaptive finite element methods
-
Particle methods
-
Contact detection algorithms
-
Multiphysics simulations
-
Adaptive physics models
-
Processors need to track off-processor data's locations in dynamic
environments; Zoltan's distributed data directories allow applications to
efficiently query and update off-processor data locations.
-
Unstructured and adaptive applications require complicated interprocessor
communication; Zoltan's unstructured communication package
manages sends and receives for application developers.
-
State-of-the-art parallel computers often do not have sophisticated
debugging
tools available; Zoltan's dynamic memory management package simplifies
location of memory leaks and other memory errors.
Advantages of using Zoltan in applications:
Advantages of using Zoltan for developing new algorithms:
Zoltan philosophy and project description:
Related links:
-
Publications
-
Serial hypergraph partitioners
-
Parallel hypergraph partitioners
-
Parkway
(Imperial College, London)
-
Parallel and dynamic partitioners
-
Serial graph partitioners
-
Chaco (Sandia National Laboratories)
-
METIS (University
of Minnesota)
-
Party
(University of Paderborn)
-
SCOTCH
(Laboratoire Bordelais de Recherche en Informatique, Université
Bordeaux I)
-
Sandia National Laboratories
Copyright (c) 2000-2013, Sandia National Laboratories.
See the README file in the main Zoltan directory for information on Zoltan licensing.
|