Under the existing framework for dependence analysis, every time a program is modified, exhaustive re-analysis has to be carried out to restructure the program. Often the changes in the program may be limited to a sma...
详细信息
Under the existing framework for dependence analysis, every time a program is modified, exhaustive re-analysis has to be carried out to restructure the program. Often the changes in the program may be limited to a small portion. This may not affect a major part of the value based dependences. Therefore, a framework for incremental dependence analysis which would only recompute dependences pertaining to modified code, is desirable. Incremental analyzers modify only the affected parts of the solution, and hence can quickly reflect the affect of the changes on the solutions. In this work we present a framework for incremental dependence analysis for value based dependences.
For the past 10 years, the vision of the future of programming has been clear: fast, object-oriented compilers will turn C++ into lightning-quick native code. Now that compilers are becoming fast and adept at this tas...
详细信息
For the past 10 years, the vision of the future of programming has been clear: fast, object-oriented compilers will turn C++ into lightning-quick native code. Now that compilers are becoming fast and adept at this task, a team of programmers at SunSoft is travelling back to the future by pushing an interpreted scripting language known as TCL (Tool Command Language). The goal is to produce a machine-independent, virus-free Visual Basic killer that will complement the Java language and allow software agents to roam from machine to machine throughout the Internet.
Digital's Spiralog file system is a log-structured file system that makes extensive use of write-back caching. Its technology is substantially different from that of the traditional OpenVMS file system, known as F...
详细信息
Digital's Spiralog file system is a log-structured file system that makes extensive use of write-back caching. Its technology is substantially different from that of the traditional OpenVMS file system, known as Files-11. The integration of the Spiralog file system into the OpenVMS environment had to ensure that existing applications ran unchanged and at the same time had to expose the benefits of the new file system. Application compatibility was attained through an emulation of the existing Files-11 file system interface. The Spiralog file system provides an ordered write-behind cache that allows applications to control write order through the barrier primitive. This form of caching gives the benefits of write-back caching and protects data integrity.
The Ada programming language is an excellent vehicle for teaching concurrent programming because support for concurrency has been designed into the language. The paper shows how primitives from other concurrent progra...
详细信息
The Ada programming language is an excellent vehicle for teaching concurrent programming because support for concurrency has been designed into the language. The paper shows how primitives from other concurrent programming languages (occam, Linda, Joyce) can be simulated within Ada. This enables students to study other constructs without the overhead of learning a new language and programming environment. The simulations use inheritance which was introduced into the new Ada 95 standard. They can also be used as examples of inheritance when teaching object-oriented programming.
Principles of construction of computer-aided programmingsystems (CAPSs) aimed at the development of application software for intelligent measurement systems are discussed. The required set of functions realized by th...
详细信息
Principles of construction of computer-aided programmingsystems (CAPSs) aimed at the development of application software for intelligent measurement systems are discussed. The required set of functions realized by the CAPS is defined, and a formal model of CAPS operation is developed. An implementation of the CAPS for intelligent measurement systems is described.
As the inventory of existing weapons systems ages, without the prospect of many newer systems becoming operational soon, the DOD is faced with the issue of what to do with ATE approaching obsolescence. Typically two p...
详细信息
ISBN:
(纸本)0780326229
As the inventory of existing weapons systems ages, without the prospect of many newer systems becoming operational soon, the DOD is faced with the issue of what to do with ATE approaching obsolescence. Typically two paths are considered, viz., total replacement with new Commercial Off The Shelf (COTS) ATE (including redevelopment of all test programs) or updating the current ATE's computer and re-hosting the legacy software, i.e. Test Program Sets (TPSs) to run on the new computer's operating system. This paper presents the preliminary results of the latter for a C/ATLAS-based USAF MATE system.
This paper describes the T-Ruby language for specifying VLSI circuits in terms of relational abstractions of their behaviour. The language is based on a typed lambda calculus with a type system closely related to that...
详细信息
ISBN:
(纸本)9780897917193
This paper describes the T-Ruby language for specifying VLSI circuits in terms of relational abstractions of their behaviour. The language is based on a typed lambda calculus with a type system closely related to that of Edinburgh LF. Terms in the language may have simple, non-parameterised types or types which are constructed from other types, possibly together with terms. The dependent types which can be constructed in this way are useful for describing parameterised regular structures which commonly appear in VLSI circuits. The language forms the basis for a tool which permits term rewriting in a user-directed transformational style according to a set of proved term equivalence. Terms which describe causal relations may then be translated into a VLSI specification in a standard VLSI description language. The rewriting process is illustrated by the derivation of a relation describing a circuit for 2-dimensional convolution.
A need that frequently arises in code generation for shared and distributed memory machines is to scan a region of index points intersected by an integer lattice in their lexicographical order. Methods have been propo...
详细信息
A need that frequently arises in code generation for shared and distributed memory machines is to scan a region of index points intersected by an integer lattice in their lexicographical order. Methods have been proposed in the special case when the given region is a convex polyhedron. This paper contributes a method in the more general case when the given region is a union of convex polyhedra - a non-convex polyhedron in general. As a secondary contribution, we show the usefulness of this method by presenting its applications in several areas, such as non-singular transformations of nested loops with non-convex iteration spaces, generation of data transfer code for shared memory machines, and generation of SPMD DO loops with communication code for distributed memory machines, where existing methods do not apply. Thus, these various code generation problems can all be unified as one of constructing DO loops to scan a union of convex polyhedra, possibly intersected by a lattice.
Alpha is a data parallel functional language which has the capability of specifying algorithms at a very high level. Our ultimate objective is to generate efficient parallel imperative code from an Alpha program. In t...
详细信息
ISBN:
(纸本)9780897917193
Alpha is a data parallel functional language which has the capability of specifying algorithms at a very high level. Our ultimate objective is to generate efficient parallel imperative code from an Alpha program. In this paper, we discuss the related problem of generating efficient single processor imperative code. Analysis techniques that were developed for the synthesis of systolic arrays are extended and adapted for the compilation of functional programming languages. We also demonstrate how a transformational methodology can be used as a compilation engine to transform an Alpha program to a sequential form. C-code is then generated using a straightforward pretty printer from the sequential form Alpha program. The C-code may then be compiled to efficiently execute the program.
The performance and cost-performance benefits of parallel systems make them attractive platforms for many applications. But, these are unfortunately offset by the difficulties of programming parallel computers. Theref...
详细信息
The performance and cost-performance benefits of parallel systems make them attractive platforms for many applications. But, these are unfortunately offset by the difficulties of programming parallel computers. Therefore, programming tools are the key to achieve greater success in developing applications for parallel architectures. This paper describes a new tool, VPEcons, for parallel programming development. It uses graphics to assist in the design of parallel programs. To facilitate the portability of the constructor, a VPEcons Builder has also been developed. It is a tool for creating basic component blocks and binding an existing language to the blocks created. The usefulness of the constructor is demonstrated with a parallel discrete-event simulation example and by comparing it with other visual parallel programming tools.
暂无评论