Enhancements to the Zoltan interface are described below.
Versions 3.8 and higher
Versions 3.6 and higher
Versions 3.2 and higher
Versions 3.1 and higher
Versions 3.0 and higher
Versions 1.5 and higher
Versions 1.3 and higher
The Zoltan native build environment, while still distributed, will no longer be supported. Users should use the autotools or CMake systems. Builds of the Zoltan F90 interface are supported in both autotools and CMake.
We applied this naming convention more consistently throughout Zoltan. Old parameters NUM_GLOBAL_PARTITIONS and NUM_LOCAL_PARTITIONS have been more accurately renamed NUM_GLOBAL_PARTS and NUM_LOCAL_PARTS. Old query functions ZOLTAN_PARTITIONS_MULTI_FN and ZOLTAN_PARTITION_FN have been more accurately renamed ZOLTAN_PART_MULTI_FN and ZOLTAN_PART_FN. However, in both cases, the old naming convention still works in the Zoltan library.
LB_METHOD,Former valid values of LB_METHOD should continue to work. In particular, values of LB_METHOD for geometric partitioners RCB, RIB, HSFC, and REFTREE are unchanged.
LB_APPROACH,
GRAPH_PACKAGE, and
HYPERGRAPH_PACKAGE.
The default graph partitioner has been changed from ParMETIS to Zoltan PHG. This change was made to provide graph partitioning capability without reliance on the third-party library ParMETIS.
Because Zoltan is designed primarily for dynamic load balancing, The default partitioning approach LB_APPROACH is now "repartition." This change affects only Zoltan's hypergraph partitioner PHG.
The table below lists the Zoltan function that uses both part and processor information, along with the analogous function that returns only processor information. Applications requiring only one part per processor can use either version of the functions.
Function with Part and Processor info (v1.5 and higher) | Function with only Processor info (v1.3 and higher) |
Zoltan_LB_Partition | Zoltan_LB_Balance |
Zoltan_LB_Point_PP_Assign | Zoltan_LB_Point_Assign |
Zoltan_LB_Box_PP_Assign | Zoltan_LB_Box_Assign |
Zoltan_Invert_Lists | Zoltan_Compute_Destinations |
Zoltan_Migrate | Zoltan_Help_Migrate |
ZOLTAN_PRE_MIGRATE_PP_FN | ZOLTAN_PRE_MIGRATE_FN |
ZOLTAN_MID_MIGRATE_PP_FN | ZOLTAN_MID_MIGRATE_FN |
ZOLTAN_POST_MIGRATE_PP_FN | ZOLTAN_POST_MIGRATE_FN |
To continue using the v1.3 partition functions, no changes to C or Fortran90 applications are needed. Zoltan interfaces from versions earlier than 1.3 are also still supported (see below), requiring no changes to application programs.
To use the new v1.5 partitioning functions:
Versions of Zoltan before version 1.3 used a different naming convention for the Zoltan interface and query functions. All functions in Zoltan v.1.3 and above are prefixed with Zoltan_; earlier versions were prefixed with LB_.
Zoltan versions 1.3 and above maintain backward compatibility with the earlier Zoltan interface. Thus, applications that used earlier versions of Zoltan can continue using Zoltan without changing their source code.
Only two changes are needed to build the application with Zoltan v.1.3 and higher:
While it is not necessary for application developers to modify their source code to use Zoltan v.1.3 and above, those who want to update their source code should do the following in their application source files: