|
1. |
Multistage indexing algorithms for speeding prolog execution |
|
Software: Practice and Experience,
Volume 24,
Issue 12,
1994,
Page 1097-1119
Ta Chen And,
I. V. Ramakrishnan,
R. Ramesh,
Preview
|
PDF (1612KB)
|
|
摘要:
AbstractIn a previous article we proposed a new and efficient indexing technique that utilizes all the functors in the clause‐heads and the goal. The salient feature of this technique is that the selected clause‐headunifies (modulo nonlinearity)with the goal. As a consequence, our technique results in sharper discrimination, fewer choice points and reduced backtracking.A naïve and direct implementation of our indexing algorithms considerably slowed down the execution speeds of a wide range of programs typically seen in practice. This is because it handled deep and shallow terms, terms with few indexable arguments, small and large proceduresuniformly.To beneficially extend the applicability of our algorithms we need mechanisms that are ‘sensitive’ to term structures and size and complexity of procedures. We accomplish this in thev‐ALScompiler by carefully decomposing our indexing process intomultiple stages.The operations performed by these stages increase in complexity ranging from first argument indexing to unification (modulo nonlinearity). Further the indexing process can be terminated at any stage if it is not beneficial to continue further.We have now completed the design and implementation ofv‐ALS.Using it we have enhanced the performance of a broad range of programs typically encountered in practice. Our experience strongly suggests that indexing based on unification (modulo nonlinearity) is a viable idea in practice and that a broad spectrum of useful programs can realize all of
ISSN:0038-0644
DOI:10.1002/spe.4380241202
出版商:John Wiley&Sons, Ltd.
年代:1994
数据来源: WILEY
|
2. |
Complex performance measurements with NICE (Notation for interval combinations and events) |
|
Software: Practice and Experience,
Volume 24,
Issue 12,
1994,
Page 1121-1144
C. Murray Woodside,
Cheryl Schramm,
Preview
|
PDF (1483KB)
|
|
摘要:
AbstractThis paper presents a notation for extracting complex performance measurements of parallel software from an event log. NICE defines a ‘complex interval’ as a sequence of events in the event log that match a rather general template using an interval monitor process (IMP). The IMP process model combines an extended FSM with parametrized event descriptors to provide a generalized description of a sequence of subintervals each one of which may be measured for duration. An interval matching algorithm provides a strategy for distributing the events in the log to multiple concurrent IMPs, thereby handling interval occurrences that overlap and/or share the same event. Practical issues of implementing and using NICE are addressed in a discussion of our performance monitoring tool called Fin
ISSN:0038-0644
DOI:10.1002/spe.4380241203
出版商:John Wiley&Sons, Ltd.
年代:1994
数据来源: WILEY
|
3. |
Object request broker: Foundation for distributed simulation |
|
Software: Practice and Experience,
Volume 24,
Issue 12,
1994,
Page 1145-1157
Frederick Kuhl,
William Neal,
Howard Cohen,
Preview
|
PDF (856KB)
|
|
摘要:
AbstractReal‐time, human‐in‐the‐loop simulation of air traffic control is naturally distributed across computing platforms because of the need for many input and display devices, the need for computing power, and the need to integrate legacy simulations that run on a variety of platforms. Object orientation has a long history of fruitful application to simulation problems, including real‐time simulation. Thus there is great interest in commercial products for distributed object management. We have examined the suitability of object request broker (ORB) technology for simulation control, i.e. applications‐as‐objects, and for supporting truly object‐oriented, distributed, real‐time simulation. Our experience with DEC's ORB shows that at present the former is feasible but the latter is probably not; however the available implementations are changing rapidly. ORB technology can also bring the distributed interactive simulation (DIS) protocol of the DoD into an object
ISSN:0038-0644
DOI:10.1002/spe.4380241204
出版商:John Wiley&Sons, Ltd.
年代:1994
数据来源: WILEY
|
4. |
Experiences in translating Z designs to haskell implementations |
|
Software: Practice and Experience,
Volume 24,
Issue 12,
1994,
Page 1159-1178
Linda B. Sherrell,
Doris L. Carver,
Preview
|
PDF (1149KB)
|
|
摘要:
AbstractZ is a widely used, model‐oriented specification language. Haskell is a programming language that was recently developed to serve as a standard for non‐strict, purely functional languages. Although functional languages have proved to be excellent prototyping tools, Haskell was designed as a general purpose language which could be used when building large software systems.This paper develops two designs for a computerized class roll. The development begins with a description of the requirements and initial specification. The next section delineates the designs and explains how each design targets a specific Haskell data structure: design one employs sequences to model lists, whereas design two uses a Z function to describe a Haskell array. The corresponding implementations follow, along with a critical analysis of each translation from Z notation to Haskell code. The paper demonstrates that Z design schemas map well to at least two Haskell data types, namely the list and the array. Furthermore, it includes insights into how software developers might translate similar Z designs to Hask
ISSN:0038-0644
DOI:10.1002/spe.4380241205
出版商:John Wiley&Sons, Ltd.
年代:1994
数据来源: WILEY
|
5. |
Incremental compiler transformations for multiple instruction retry |
|
Software: Practice and Experience,
Volume 24,
Issue 12,
1994,
Page 1179-1198
Shyh‐Kwei Chen,
Neal J. Alewine,
W. Kent Fuchs,
Wen‐Mei W. Hwu,
Preview
|
PDF (1209KB)
|
|
摘要:
AbstractPrevious work on compiler‐based multiple instruction retry has utilized a series of compiler transformations, loop protection, node splitting, and loop expansion, to eliminate anti‐dependencies of length ≤Nin the pseudo register, the machine register, and the post‐pass resolver phases of compilation.1The results have provided a means of rapidly recovering from transient processor failures by rolling backNinstructions. This paper presents techniques for improving compilation and run‐time performance in compiler‐based multiple instruction retry. Incremental updating enhances compilation time when new instructions are added to the program. Post‐pass code rescheduling and spill register reassignment algorithms improve the run‐time performance and decrease the code growth across the application programs studied. Branch hazards are shown to be resolvable by simple modifications to the incremental updating schemes during the pseudo register phase and to the spill register reassignment algorithm during the
ISSN:0038-0644
DOI:10.1002/spe.4380241206
出版商:John Wiley&Sons, Ltd.
年代:1994
数据来源: WILEY
|
6. |
Masthead |
|
Software: Practice and Experience,
Volume 24,
Issue 12,
1994,
Page -
Preview
|
PDF (63KB)
|
|
ISSN:0038-0644
DOI:10.1002/spe.4380241201
出版商:John Wiley&Sons, Ltd.
年代:1994
数据来源: WILEY
|
|