Next: Programming Languages and
Up: Software Technology Working
Previous: BLISS versus the
Software technology is a broad, diverse area. This section discusses
the major subcategories of this technology area and outlines the
current status, major trends, opportunities, and barriers to progress
in each. First, we state some basic assumptions and beliefs:
-
There are substantial software technology problems that have not
been solved satisfactorily even on the scale of TeraFLOPS, let
alone PetaFLOPS. In general, we will focus on trends and problems
that need attention, without regard to where in the
TeraFLOPS-PetaFLOPS range the problems become severe. Indeed, as
discussed above, many of these problems are already severe and
will need attention even in the TeraFLOPS range.
-
As discussed above, some PetaFLOPS applications can be expected to
be the lineal descendants of today's HPC scientific computations,
while others will be new to the HPC sphere. Many of these latter
applications will emphasize computing and information retrieval on
massive data sets. Even among the scientific computations, we
expect to see a shift toward a greater emphasis on computations
whose structure evolves dynamically at run time (such as modern
N-body simulation algorithms) and/or which have nested levels of
parallelism, which are not handled well by implementation
strategies based on statically computed mapping and
resource-allocation decisions. Data-intensive applications are
likely to exhibit these characteristics to an even greater extent,
leading to new demands on software technology.
Next: Programming Languages and
Up: Software Technology Working
Previous: BLISS versus the