ppxscal/embedding_network huggingface dataset:
Development of an object-oriented DBMS
Authors: David Maier, Jacob Stein, Allen Otis, Alan Purdy
Venue: ACM SIGPLAN Notices (1986)

We describe the results of developing the GemStone object-oriented database server, which supports a model of objects similar to that of Smalltalk-80. We begin with a summary of the goals and requirements for the system: an extensible data model that captures behavioral semantics, no artificial bounds on the number or size of database objects, database amenities (concurrency, transactions, recovery, associative access, authorization) and an interactive development environment. Object-oriented languages, Smalltalk in particular, answer some of these requirements. We discuss satisfying the remaining requirements in an object oriented context, and report briefly on the status of the development efforts. This paper is directed at an audience familiar with object-oriented languages and their implementation, but perhaps unacquainted with the difficulties and techniques of database system development. It updates the original report on the project [CM], and expands upon a more recent article [MDP].
Generating antialiased images at low sampling densities
Authors: Don P. Mitchell
Venue: Proceedings of the 14th annual conference on Computer graphics and interactive techniques (1987)

Ray tracing produces point samples of an image from a 3-D model. Constructing an antialiased digital picture from point samples is difficult without resorting to extremely high sampling densities. This paper describes a program that focuses on that problem. While it is impossible to eliminate aliasing totally, it has been shown that nonuniform sampling yields aliasing that is less conspicuous to the observer. An algorithm is presented for fast generation of nonuniform sampling patterns that are optimal in some sense. Some regions of an image may require extra sampling to avoid strong aliasing. Deciding where to do extra sampling can be guided by knowledge of how the eye perceives noise as a function of contrast and color. Finally, to generate the digital picture, the image must be reconstructed from the samples and resampled at the display pixel rate. The nonuniformity of the samples complicates this process, and a new nonuniform reconstruction filter is presented which solves this problem efficiently.
Architectural tradeoffs in the design of MIPS-X
Authors: P. Chow, M. Horowitz
Venue: Proceedings of the 14th annual international symposium on Computer architecture (1987)

The design of a RISC processor requires a careful analysis of the tradeoffs that can be made between hardware complexity and software. As new generations of processors are built to take advantage of more advanced technologies, new and different tradeoffs must be considered. We examine the design of a second generation VLSI RISC processor, MIPS-X. MIPS-X is the successor to the MIPS project at Stanford University and like MIPS, it is a single-chip 32-bit VLSI processor that uses a simplified instruction set, pipelining and a software code reorganizer. However, in the quest for higher performance, MIPS-X uses a deeper pipeline, a much simpler instruction set and achieves the goal of single cycle execution using a 2-phase, 20 MHz clock. This has necessitated the inclusion of an on-chip instruction cache and careful consideration of the control of the machine. Many tradeoffs were made during the design of MIPS-X and this paper examines several key areas. They are: the organization of the on-chip instruction cache, the coprocessor interface, branches and the resulting branch delay, and exception handling. For each issue we present the most promising alternatives considered for MIPS-X and the approach finally selected. Working parts have been received and this gives us a firm basis upon which to evaluate the success of our design.
New NP-Complete Problems in Performance Evaluation of Concurrent Systems Using Petri Nets
Authors: J. Magott
Venue: IEEE Transactions on Software Engineering (1987)

Timed Petri nets are useful in performance evaluation of concurrent systems. The maximum computation rate is achieved for minimal cycle time of timed Petri net. It is known that minimal cycle time problem for P-invariant Petri nets is NP-complete. In this paper we prove that the minimal cycle time problem, for non-P-invariant Petri nets and for a small subclass of P-invariant Petri nets called free-choice nets having live and safe marking, is NP-complete.
Algebraic versus probabilistic independence in decision theory
Authors: S K M Wong, W Ziarko
Venue: Proceedings of the ACM SIGART international symposium on Methodologies for intelligent systems (1986)

The study of independence (dependence) between the condition and decision attributes is an important issue in decision theory. Most important applications in artificial intelligence are non-deterministic. It is shown that algebraic dependence is not adequate in these situations, and probabilistic independence provides a correct measure of information uncertainty for expert system design.
Evaluation of database recursive logic programs as recurrent function series
Authors: Georges Gardarin, Christophe de Maindreville
Venue: ACM SIGMOD Record (1986)

The authors introduce a new method to compile queries referencing recursively defined predicates. This method is based on an interpretation of the query and the relations as functions which map one column of a relation to another column. It is shown that a large class of queries with associated recursive rules, including mutually recursive rules, can be computed as the limit of a series of functions. Typical cases of series of functions are given and solved. The solutions lend themselves towards either extended relational algebra or SQL optimized programs to compute the recursive query answers. Examples of applications are given.
Some experiments in global microcode compaction
Authors: B. Su, S. Ding
Venue: Proceedings of the 18th annual workshop on Microprogramming (1985)

Global microcode compaction is an open problem in firmware engineering. Although Fisher's trace scheduling method may produce significant reductions in the execution time of compacted microcode, it has some drawbacks. There have been four methods. Tree, SRDAG, ITSC , and GDDG, presented recently to mitigate those drawbacks in different ways. The purpose of the research reported in this paper is to evaluate these new methods. In order to do this, we have tested the published algorithms on several unified microcode sequences of two real machines and compared them on the basis of the results of experiments using three criteria: time efficiency, space efficiency, and complexity.
The multimedia object presentation manager of MINOS: a symmetric approach
Authors: S. Christodoulakis, F. Ho, M. Theodoridou
Venue: ACM SIGMOD Record (1986)

Large multimedia data bases become feasible due to recent advances in hardware technology. A very important component of multimedia data base management systems will be the presentation manager which will be responsible for effective multimedia presentation and browsing on the screen of workstations. In this paper we present the functions provided for multimedia presentation and browsing in MINOS, a multimedia information system. The presentation and browsing capabilities provided make effective use of the capabilities of a modern workstation to increase the man-machine communication bandwidth. We regard voice as an important means of communication. Symmetric capabilities for text and voice browsing are provided.
Evaluating Database Update Schemes: A Methodology and its Applications to Distributive Systems
Authors: Kathryn C. Kinsley Charles E. Hughes
Venue: IEEE Transactions on Software Engineering (1988)

A methodology is presented for evaluating the performance of database update schemes in a distributive environment. The methodology makes use of the history of how data are used in the database. Parameters such as update-to-retrieval ratio and average file size can be set based on the actual characterization of a system. The analysis is specifically directed toward the support of derived data within the relational model. Because concurrency is a major problem in a distributive system, the support of derived data is analyzed with respect to three distributive concurrency control techniques: master/slave, distributed, and synchronized.
Criteria and guidelines for selecting the appropriate LAN(s): what nobody tells you
Authors: Lynn Luzzi
Venue: Proceedings of the 15th annual ACM SIGUCCS conference on User Services (1987)

With &ldquo;The Year of the LAN&rdquo; turning into the &ldquo;Decade of the LAN&rdquo; it is about time that the facts were presented in a concise, logical, and understandable manner. The plethora of documentation on LANs (Local Area Networks) and data communication is enough to baffle the mind. It is the purpose of this paper to set forth clearly the latest developments in the LAN industry. Criteria and guidelines for selecting optimal network configurations will be discussed, and examples will be given.
Evaluation of On-Chip Static Interconnection Networks
Authors: Pinaki Mazumder
Venue: IEEE Transactions on Computers (1987)

This correspondence evaluates three types of static interconnection networks for VLSI implementation. The criteria of evaluation have been selected from three orthogonal aspects-physical (chip area and dissipation), computational speed (message delay and message density) and cost (chip yield, operational reliability and layout cost). The main feature of this paper is to augment the selection criteria for the interconnection networks from the classical AT2 metric and to provide results pertaining to realistic VLSI implementation.
On time and space decomposition of complex structures
Authors: P. J. Courtois
Venue: Communications of the ACM (1985)

Models of large and complex systems can often be reduced to smaller sub-models, for easier analysis, by a process known as decomposition. Certain criteria for successful decompositions can be established.
Prototyping a project master database for software engineering environments
Authors: Maria H Penedo
Venue: Proceedings of the second ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments (1987)

Software Engineering Environments (SEE) have been determined as good means of increasing software productivity by shifting projects from the paper world into the automated world. An environment database has been identified as the core of any automated Software Engineering Environment. It should provide the means for accessing, storing and relating all the project's products, the means for automating the process by which these components are entered in this library, modified, controlled and disseminated, and the means for supporting &ldquo;active databases1&rdquo;. The inherent complexity of building such a database is widely recognized. We have been studying issues associated with such an environment database, which we denote Project Master Data Base (PMDB), with the overall objective of defining, designing and developing a PMDB as an integrated part of a SEE. Due to the lack of explicit requirements for its design, a prototype of the PMDB was developed in order to gain information and experience on both the specifications of the PMDB itself and also on different implementation approaches. This paper discusses our prototyping exercise; it describes the prototype, how the problem reporting, evaluation, and tracking process was modeled, and some of the lessons learned as a result of this effort.
An architecture for efficient Lisp list access
Authors: A. R. Pleszkun, M. J. Thazhuthaveetil
Venue: ACM SIGARCH Computer Architecture News (1986)

In this paper, we present a Lisp machine architecture that supports efficient list manipulation. This Lisp architecture is organized as two processing units: a List Processor (LP), that performs all list related operations and manages the list memory, and an Evaluation Processor (EP), that maintains the addressing and control environment. The LP contains a translation table (LPT) that maps a small set of list identifiers into the physical memory addresses of objects. Essentially, the LP and LPT virtualize a list. The EP then operates on these virtualized lists. Such an organization permits the overlap of EP function evaluation with LP memory accesses and management, thus reducing the performance penalties typically associated with Lisp list manipulation activities. We used trace-driven simulations to evaluate this architecture. From our evaluation a relatively small LPT is seen to be sufficient, and to yield &ldquo;hit rates&rdquo; on data accesses higher than those of a data cache of comparable size.
An automated design of minimum-area IC power/ground nets
Authors: S. Chowdhury
Venue: Proceedings of the 24th ACM/IEEE Design Automation Conference (1987)

Given tree topologies for routing power/ground (p/g) nets in integrated circuits, this paper formulates and solves the problem of determining the widths of the branches of the trees. Constraints are developed in order to maintain proper logic levels and switching speed, to prevent electromigration, and to satisfy certain design rule and regularity requirements. The area required by the p/g distribution system is minimized subject to these constraints. Some case studies are also presented.
Graph allocation in static dataflow systems
Authors: Y. C. Hong, T. H. Payne, L. B O Ferguson
Venue: Proceedings of the 13th annual international symposium on Computer architecture (1986)

One of the most important considerations for a dataflow multiprocessor is the algorithm by which the nodes of a program graph are allocated for execution to its processors. In the case of the static type of architecture one must consider pipelining as well as spatial concurrency. This paper uses a graph partitioning scheme to aid in the design of such algorithms and selection of the associated interconnection topology. The scheme first refines the usual dataflow program graph and then partitions it into &ldquo;trees.&rdquo; Our study shows that the hypercube interconnection accommodates these trees in a way that allows as to develop an algorithm that places producer nodes (of a dataflow graph) nears their consumers to keep the message path very short. The algorithm achieves concurrency in simultaneous execution of subgraphs that involve parallel operations, e.g., array operations, and subgraphs that are highly iterative or recursive. An analytical model is given to evaluate the performance of the algorithm.
On the algebraic definition of programming languages
Authors: Manfred Broy, Martin Wirsing, Peter Pepper
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (1987)

The algebraic specification of the semantics of programming languages is outlined. Particular emphasis is given to the problem of specifying least-fixed points by first-order conditional equations. To cover this issue, the theory of specifying partial heterogeneous algebras by abstract data types is slightly extended by a more general notion of homomorphism. In this framework the semantics of programming languages can be uniquely specified in a purely algebraic way, using particular models of a hierarchy of abstract types. This approach is demonstrated for a simple procedural programming language. Several increasingly complex versions of iterations are treated and analyzed with respect to their theoretical consequences. Finally, as a complementary algebraic technique, transformational semantics is explained and applied to our examples.
Planar point location using persistent search trees
Authors: Neil Sarnak, Robert E. Tarjan
Venue: Communications of the ACM (1986)

A classical problem in computational geometry is the planar point location problem. This problem calls for preprocessing a polygonal subdivision of the plane defined by n line segments so that, given a sequence of points, the polygon containing each point can be determined quickly on-line. Several ways of solving this problem in O(log n) query time and O(n) space are known, but they are all rather complicated. We propose a simple O(log n)-query-time, O(n)-space solution, using persistent search trees. A persistent search tree differs from an ordinary search tree in that after an insertion or deletion, the old version of the tree can still be accessed. We develop a persistent form of binary search tree that supports insertions and deletions in the present and queries in the past. The time per query or update is O(log m), where m is the total number of updates, and the space needed is O(1) per update. Our planar point location algorithm is an immediate application of this data structure. The structure also provides an alternative to Chazelle's "hive graph" structure, which has a variety of applications in geometric retrieval.
Principles of traditional animation applied to 3D computer animation
Authors: John Lasseter
Venue: Proceedings of the 14th annual conference on Computer graphics and interactive techniques (1987)

This paper describes the basic principles of traditional 2D hand drawn animation and their application to 3D computer animation. After describing how these principles evolved, the individual principles are detailed, addressing their meanings in 2D hand drawn animation and their application to 3D computer animation. This should demonstrate the importance of these principles to quality 3D computer animation.
Object-oriented programming with flavors
Authors: David A. Moon
Venue: ACM SIGPLAN Notices (1986)

This paper describes Symbolics' newly redesigned object-oriented programming system, Flavors. Flavors encourages program modularity, eases the development of large, complex programs, and provides high efficiency at run time. Flavors is integrated into Lisp and the Symbolics program development environment. This paper describes the philosophy and some of the major characteristics of Symbolics' Flavors and shows how the above goals are addressed. Full details of Flavors are left to the programmers' manual, Reference Guide to Symbolics Common Lisp. (5)
Practical uses of operators in Sharp APL/HP
Authors: Robert Hodgkinson
Venue: ACM SIGAPL APL Quote Quad (1987)

At APL86 in Manchester, the language features of SHARP APL/HP on a Hewlett Packard range of minicomputers were introduced in a paper written by this author, entitled 'APL PROCEDURES (USER DEFINED OPERATORS, FUNCTIONS AND TOKEN STRINGS)'. This is the first of several papers which have been planned to supplement this introductory work. The models of several new and existing operators are described in detail, all of which may be directly executed in SHARP APL/HP. The models take advantage of various features of SHARP APL/HP including extended assignment and procedure arrays [1] (often referred to as function arrays in their most common form). The paper will pursue a comparison of the less general implementation of operators in APL2, with special reference to Ed Eusebi's pioneering work in the field of 'Operators for Program Control and Recursion' [2 3], wherein an alternative definition for several of these operators will be proposed. The paper will then proceed to describe 'Operators applying to Enclosed Arrays' (for example a Pervasive Operator) and various 'Mathematical Operators' (instances of which are the Power and Transitive Closure operators), always highlighting these models with examples of their practical application.
General Criterion for Essential Nonfault Locatability of Logical Functions
Authors: F. Kremela
Venue: IEEE Transactions on Computers (1987)

This correspondence presents a solution of a well-known essential problem of diagnostics open till now. The method of solution is based on a straight application of mathematical structures theory 1121, [11]and on a topological representation of Boolean algebras [ 1]l[1] [ 41] The principle idea of this approach is as follows. The distribution of diagnostic information is controlled in Boolean combinational circuits (CC) by two relations generally, the first is a congruence relation and the other is a tolerance relation. This fact is given by a real construction of CC. The Boolean calculus is evidently a formal interpretation of one of these relations only. Hence, the Boolean calculus cannot be used to solve entirely such problems which are related to this distribution. If we want to disclose the essence, we have to use a more general mathematical apparatus to interpret both relations mathematically. The outline of mathematical model of CC is presented and a trace of model on its underlying set is employed to solve the problem.
Modeling the effect of the atmosphere on light
Authors: R. Victor Klassen
Venue: ACM Transactions on Graphics (TOG) (1987)

The interaction of light with particles suspended in the air is the cause of some beautiful effects. Among these effects are the colors of the sunset, the blue of the sky, and the appearance of a scene in fog. A lighting model that takes into account the effects of scattering by suspended particles is presented. A method of computing the colors of the sun and sky, for any sun position above the horizon, is derived from the lighting model. The model is also suitable for rendering fog under general lighting conditions. As an example of the use of the model for rendering fog, the special case of fog lit by the sun, without shadows, is considered.
Caching in the Sprite network file system
Authors: Michael N. Nelson, Brent B. Welch, John K. Ousterhout
Venue: ACM Transactions on Computer Systems (TOCS) (1988)

The Sprite network operating system uses large main-memory disk block caches to achieve high performance in its file system. It provides non-write-through file caching on both client and server machines. A simple cache consistency mechanism permits files to be shared by multiple clients without danger of stale data. In order to allow the file cache to occupy as much memory as possible, the file system of each machine negotiates with the virtual memory system over physical memory usage and changes the size of the file cache dynamically. Benchmark programs indicate that client caches allow diskless Sprite workstations to perform within O-12 percent of workstations with disks. In addition, client caching reduces server loading by 50 percent and network traffic by 90 percent.
An application of exploratory data analysis techniques to floorplan design
Authors: E. F. M. Kouka, G. Saucier
Venue: Proceedings of the 24th ACM/IEEE Design Automation Conference (1987)

This paper presents an advisory tool for fast cost estimation of floorplans made up of rectangular arbitrarily-sized building blocks. Emphasis is laid on efficient computer processing of available data. The floorplan information is translated into proximity matrices. Exploratory data analysis, based on a multivariate statistical approach, is used with a view to revealing patterns inherent in the data. The resultant patterns are then converted into metric representations.
Lisp on a Reduced-Instruction-Set Processor: Characterization and Optimization
Authors: Peter Steenkiste, John Hennessy
Venue: Computer (1988)

The factors that motivated the choice of a reduced-instruction-set computer (RISC) on which to implement Lisp are examined. Dynamic profiling measurements used to characterise Lisp are reported. The implementation of tags in Lisp and the cost of function calls are discussed. Interprocedural register allocation is examined. Execution results for various benchmarks are presented and discussed.