Date: Tue, 10 Dec 1996 22:56:07 GMT Server: NCSA/1.4.2 Content-type: text/html Last-modified: Wed, 02 Oct 1996 18:18:34 GMT Content-length: 6669
Abstract:
The technical challenges that mobile computing must surmount to
achieve its potential are hardly trivial. Some of the
challenges in designing software for mobile computing systems
are quite different from those involved in the design of
software for today's stationary networked systems. The authors
focus on the issues pertinent to software designers without
delving into the lower level details of the hardware
realization of mobile computers. They look at some promising
approaches under investigation and also consider their
limitations. The many issues to be dealt with stem from three
essential properties of mobile computing: communication,
mobility, and portability. Of course, special-purpose systems
may avoid some design pressures by doing without certain
desirable properties. For instance portability would be less
of a concern for mobile computers installed in the dashboards
of cars than with hand-held mobile computers. However, the
authors concentrate on the goal of large-scale, hand-held
mobile computing as a way to reveal a wide assortment of
issues.
Abstract:
This paper compares two data parallel languages, ZPL and HPF, in
terms of programming style and performance. The results show that
for eight programs from a number of standard benchmark suites, ZPL
generally outperforms HPF, and ZPL expresses problems at higher
levels of abstraction, yielding programs that are shorter, less error
prone and easier to maintain. ZPL's better performance comes from
its cleaner expression of computation, from which a compiler can
extract parallelism more easily.
Abstract:
Massively parallel computations are difficult to debug.
Event-based behavioral abstraction provides a mechanism for
managing the volume of data by allowing users to specify
models of intended program behavior that are automatically
compared to actual program behavior. Transformations of
logical time ameliorate the difficulties of coping with
asynchrony by allowing users to see behavior from a variety of
temporal perspectives. Previously, we combined these features
in a debugger that automatically constructed animations of
user-defined abstract events in logical time. However, our
debugger did not always provide sufficient feedback nor did it
effectively scale up for massive parallelism. We address
these problems in a new debugger, called Ariadne. Ariadne
uses a simple language to specify behavioral abstractions as
patterns of events in logical time. These patterns are
detected in traces of program behavior by collections of small
finite-state recognizers which allow substantive feedback on
match failures.