Dynascope: a Platform for Building Directors


Contents

  1. Description of Dynascope
  2. Dynascope 3.2 Software Distribution
  3. Reference Material
  4. Related Projects
  5. Bibliography

Description of Dynascope

Dynascope provides primitives for building directors. Directors are programs which perform monitoring and debugging operations. Typical such operations include controlling the execution of other programs, sampling and modifying process data, and handling of breakpoints.

Dynascope primitives are simple to use and machine independent. They provide directing in distributed and heterogeneous environments. Directors and directed programs can execute on different computing platforms and communicate over a network.

A director uses Dynascope primitives by calling directing routines. Because these routines provide a machine independent procedural interface, directors can be ported from one Dynascope supported computing platform to another with no changes in their source code.


Dynascope 3.2 Software Distribution

  1. Anonymous ftp site: ftp.cit.gu.edu.au:pub/software/dynascope (start an ftp session).

  2. Demo Programs (download demo programs )

  3. DEC OSF1/Alpha (download software distribution ) - produced on OSF1 V3.2 alpha

  4. IBM AIX/RS6000 (download software distribution ) - produced on AIX 2 3

  5. NEXT Nextstep/M68K (download software distribution ) - produced on Nextstep 3.2 m68k

  6. SGI IRIX/R4000 (download software distribution ) - produced on IRIX 5.3 mips

  7. SUN Solaris/SPARC (download software distribution ) - produced on SunOS 5.4 sparc

  8. SUN SunOS/SPARC (download software distribution ) - produced on SunOS 4.1.3_U1 sun4m


Reference Material

  1. A tutorial with a high level overview of Dynascope from users perspective can be found in: R. Sosic. A Procedural Interface for Program Directing. Software - Practice and Experience. Vol. 25, 7, pp. 767-787, July 1995. -Postscript copy-

  2. Some details on the implementation are given in: R. Sosic. Design and Implementation of Dynascope, a Directing Platform for Compiled Programs. Computing Systems. Vol. 8, 2, pp.107-134, Spring 1995. -Postscript copy-

  3. Various elements of the existing software release might differ from descriptions in the papers. A current and updated version of the user manual is available with the source code (download a Postscript version)

  4. An older incarnation of Dynascope is described in: R. Sosic. "A Tool for Program Directing". SIGPLAN'92 Conference on Programming Language Design and Implementation, SIGPLAN Notices, Vol. 27, 7, pp. 12-21, Jul, 1992. (download an abstract or a Postscript version)


Related Projects

Guard: a Relative Debugger

Guard concurrently executes two programs and compares their execution. One of the programs is usually a reference version with correct behavior. The second program is a development version whose behavior is verified against the reference version. In software development, Guard can be used for testing the correctness of program optimizations , for supporting the porting of code to new platforms, for verifying a parallel program against its sequential version, and for providing the support for perturbation analysis . Guard uses Dynascope for executing debugging operations in distributed and heterogeneous environments. (download
Guard Home Page)

Program Sampling

With Dynascope, it is easy to construct programs that sample other programs. Such sampling is useful in studying complex algorithms , for example in combinatorial optimization, or in analyzing program behavior . Some results from the application of sampling on algorithms for the traveling salesman problem are presented in R. Sosic and G. Wilby. "Using the Quality-Time Tradeoff in Local Optimization". IEEE Second ANZIIS Conference, Brisbane, pp. 253-257, IEEE, Dec 1994. (download an abstract, a Postscript version, or a prototype sampling program )

Related Results

Several results and approaches are related to Dynascope, although they are not used in the current release.

To provide for a quick processing of tracing events, a method for a fast evaluation of Boolean expressions was developed. The method can be implemented in software or hardware. A software implementation is described in R. Sosic, J. Gu, and R. Johnson. "The Unison Algorithm: Fast Evaluation of Boolean Expressions". To appear in Communications of the ACM. (download an abstract or a Postscript version) The software implementation is capable of evaluating up to six elementary boolean operations per one machine instruction on a 64-bit processor. A hardware implementation is described in R. Sosic, J. Gu, and R. Johnson. "A Universal Boolean Evaluator". submitted for publication. (download an abstract or a Postscript version) The hardware implementation enables a compact, dynamically reconfigurable circuit for evaluating arbitrary Boolean expressions. Basic boolean functions and their connectivity can be set up dynamically. The method for a fast evaluation of Boolean expressions is based on the total differential of Boolean functions. It is patented by R. Sosic and J. Gu. "A Method and Apparatus for Processing of Arbitrary Complex Boolean Signals", USA patent 5,291,612, Mar, 1994.

A previous version of Dynascope supported reverse execution . This requires the storage of history information. Methods for extraction and compression of history information and a design for a hardware implementation of a fully reversible processor are described in R. Sosic. "History Cache". Computer Architecture News, Vol. 22, 5, pp. 11-18, Dec 1994. (download an abstract or a Postscript version)

Introspective Computer Systems

Introspective computer systems can examine, reason about, and change their own behavior . Dynascope is being developed to provide a software substrate for building introspective systems .

The concept of introspective computers has been developed in R. Sosic. "The Many Faces of Introspection". PhD Thesis, Department of Computer Science, University of Utah, Salt Lake City, June, 1992. (download an abstract or a Postscript version) An excerpt from the thesis can be found in R. Sosic. "Introspective Computer Systems". Electrotechnical Review. Vol. 59, 5, pp. 292-298, Dec 1992. (download an abstract or a Postscript version)


Bibliography

D. Abramson, I. Foster, J. Michalakes, and R. Sosic. Relative Debugging and its Application to the Development of Large Numerical Models. Accepted in Supercomputing'95, San Diego, December 1995 (best paper award). -Postscript copy-

D. Abramson and R. Sosic. A Debugging Tool for Software Evolution. CASE-95, 7th International Workshop on Computer-Aided Software Engineering, Toronto, Ontario, Canada, pp. 206-214, July 1995. -Postscript copy-

R. Sosic. Design and Implementation of Dynascope, a Directing Platform for Compiled Programs. Computing Systems. Vol. 8, 2, pp.107-134, Spring 1995. -Postscript copy-

R. Sosic. A Procedural Interface for Program Directing. Software - Practice and Experience. Vol. 25, 7, pp. 767-787, July 1995. -Postscript copy-

R. Sosic, J. Gu, and R. Johnson. The Unison Algorithm: Fast Evaluation of Boolean Expressions. To appear in Communications of the ACM. (download an abstract or a Postscript version)

R. Sosic. History Cache. Computer Architecture News, Vol. 22, 5, pp. 11-18, Dec 1994. (download an abstract or a Postscript version)

R. Sosic and G. Wilby. Using the Quality-Time Tradeoff in Local Optimization. IEEE Second ANZIIS Conference, Brisbane, pp. 253-257, IEEE, Dec 1994. (download an abstract, a Postscript version)

R. Sosic and J. Gu. A Method and Apparatus for Processing of Arbitrary Complex Boolean Signals, USA patent 5,291,612, Mar, 1994, Canadian patent pending.

R. Sosic. Introspective Computer Systems. Electrotechnical Review. Vol. 59, 5, pp. 292-298, Dec 1992. (download an abstract or a Postscript version)

R. Sosic. Introspective Computer Architectures. IMSA'92 Workshop on Reflective and Meta-Level Architectures, November 1992, Tokio, 1992.

R. Sosic. Dynascope: A Tool for Program Directing. SIGPLAN'92 Conference on Programming Language Design and Implementation, SIGPLAN Notices, Vol. 27, 7, pp. 12-21, Jul, 1992. (download an abstract or a Postscript version)

R. Sosic. The Many Faces of Introspection. PhD Thesis, Department of Computer Science, University of Utah, Salt Lake City, June, 1992. (download an abstract or a Postscript version)


sosic@cit.gu.edu.au, 15 April 1995