Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
Software developers for distributed memory multiprocessors often
complain about the lack of libraries and tools for developing and
performance tuning their applications. While some tools exist for
regular array-based computations, support for applications with
pointer-based data structures, asynchronous communication patterns, or
unpredictable computational costs is seriously lacking. In this paper
we describe our experience with six irregular applications from CAD,
Robotics, Genetics, Physics, and Computer Science, and offer them as
application challenges for other systems that support irregular
applications. The applications vary in the amount and kind of
irregularity. We characterize their irregularity profiles and
the implementation problems that arise from those profiles. In
addition to performance, one of our goals is to provide implementations
that run efficiently with minimal performance tuning across machine
platforms, and our designs are influenced by this desire for
performance portability. Each of our applications is organized
around one or two distributed data structures, which are part of
the Multipol data structure library. We describe these data
structures, give an overview of some key features in our underlying
runtime support, and present performance results for the applications
on three platforms.