Philosophy of Zoltan
The Zoltan library is designed to be a general-purpose tool-kit
providing a variety of parallel data management services to a wide range
of scientific applications (see the Zoltan
User's Guide). To enable general use of the library, the library does
not directly access the data structures of an application. Instead, the
library obtains information it needs through
an object-oriented interface between Zoltan and the
application.
This interface uses call-back query functions to gather information. An
application developer must write and register these query functions before
using Zoltan. The intent, however, is that the number
and complexity of these query functions are low, allowing applications
to easily interface with the library. In addition, new algorithm
development would use the same query functions as previous algorithms,
enabling applications to use new algorithms without changes to the query
functions.
In developing new algorithms for Zoltan, the developer
must write the code that calls the query functions to build the needed
data structures for the algorithm. However, the application need not change
its query functions. Thus, new algorithms can be added to the library and
used by an application with minimal effort on the part of the application
developer.
[Table of Contents | Next:
Coding Principles | Previous:
Introduction | Privacy and Security]