ppxscal/embedding_network huggingface dataset:
Optimistic active messages: a mechanism for scheduling communication with computation
Authors: Deborah A. Wallach, Wilson C. Hsieh, Kirk L. Johnson, M. Frans Kaashoek, William E. Weihl
Venue: Proceedings of the fifth ACM SIGPLAN symposium on Principles and practice of parallel programming (1995)

Low-overhead message passing is critical to the performance of many applications. Active Messages reduce the software overhead for message handling: messages are run as handlers instead of as threads, which avoids the overhead of thread management and the unnecessary data copying of other communication models. Scheduling the execution of Active Messages is typically done by disabling and enabling interrupts, or by polling the network. This primitive scheduling control, combined with the fact that handlers are not schedulable entities, puts severe restrictions on the code that can be run in a message handler. This paper describes a new software mechanism, Optimistic Active Messages (OAM), that eliminates these restrictions; OAMs allow arbitrary user code to execute in handlers, and also allow handlers to block. Despite this gain in expressiveness, OAMs perform as well as Active Messages.We used OAM as the base for an RPC system, Optimistic RPC (ORPC), for the Thinking Machines CM-5 multiprocessor; it consists of an optimized thread package and a stub compiler that hides communication details from the programmer. ORPC is 1.5 to 5 times faster than traditional RPC (TRPC) for small messages and performs as well as Active Messages (AM). Applications that primarily communicate using large data transfers or are fairly coarse-grained perform equally well, independent of whether AMs, ORPCs, or TRPCs are used. For applications that send many short messages, however, the ORPC and AM implementations are up to three times faster than the TRPC implementations. Using ORPC, programmers obtain the benefits of well-proven programming abstractions such as threads, mutexes, and condition variables, do not have to be concerned with communication details, and yet obtain nearly the performance of hand-coded Active Message programs.
Space optimization in deductive databases
Authors: Divesh Srivastava, S. Sudarshan, Raghu Ramakrishnan, Jeffrey F. Naughton
Venue: ACM Transactions on Database Systems (TODS) (1995)

In the bottom-up evaluation of logic programs and recursively defined views on databases, all generated facts are usually assumed to be stored until the end of the evaluation. Discarding facts during the evaluation, however, can considerably improve the efficiency of the evaluation: the space needed to evaluate the program, the I/O costs, the costs of maintaining and accessing indices, and the cost of eliminating duplicates may all be reduced. Given an evaluation method that is sound, complete, and does not repeat derivation steps, we consider how facts can be discarded during the evaluation without compromising these properties. We show that every such space optimization method has certain components, the first to ensure soundness and completeness, the second to avoid redundancy (i.e., repetition of derivations), and the third to reduce &ldquo;fact lifetimes&rdquo; (i.e., the time period for which each fact must be retained during evaluation). We present new techniques based on providing bounds on the number of derivations and uses of facts, and using monotonicity constraints for each of the first two components, and provide novel synchronization techniques for the third component of a space optimization method. We describe how techniques for each of the three components can be combined in practice to obtain a space optimization method for a program. Our results are also of importance in applications such as sequence querying, and in active databases where triggers are defined over multiple &ldquo;events.&rdquo;
Operating system kernel automatic construction
Authors: Xiaohua Jia, Mamoru Maekawa
Venue: ACM SIGOPS Operating Systems Review (1995)

Each year a large amount of resources have been devoted into porting operating system kernels from one machine to another. This paper proposes a new system which is able to construct operating system kernel automatically based on kernel functions specification and hardware interface specification. The system can increase the efficiency and productivity of porting operating systems or building new systems. It can also generate more reliable kernels than human programmers.
Decision-theoretic troubleshooting
Authors: David Heckerman, John S. Breese, Koos Rommelse
Venue: Communications of the ACM (1995)

You have just finished typing that big report into your word processor. It is formatted correctly and looks beautiful on the screen. You hit print, go to the printer&mdash;and nothing is there. Your try again&mdash;still nothing. The report needs to go out today. What do you do?
The information zone system
Authors: Charles Kacmar, Dean Jue
Venue: Communications of the ACM (1995)

Spatial data is complex data composed of hundreds or thousands of attribute/value pairs that define logical, physical, and abstract geographic features. It has traditionally been available to researchers and other users as paper maps, but it is now commonplace to collect and distribute spatial data as structured graphical elements (e.g., vectors) and their associated relational data sets, or as scanned images (when no analysis is necessary). Even though vast stores of spatial data exist, awareness of and access to these data sets, images, and related documents remain tremendous problems [2]. This situation is due in part to the lack of integration between geographic information systems (GIS), storage management, and network tools. It also is due to the dependence on text-based menus and queries to support access. Text-based access is inconsistent for many spatial data users since users conceptualize and data is organized by geographic location [1].
Performance Analysis of Finite-Buffered Asynchronous Multistage Interconnection Networks
Authors: Prasant Mohapatra, Chita R. Das
Venue: IEEE Transactions on Parallel and Distributed Systems (1996)

In this paper, we present a queueing model for performance analysis of finite-buffered multistage interconnection networks. The proposed model captures network behavior in an asynchronous communication mode and is based on realistic assumptions. A uniform traffic model is developed first and then extended to capture nonuniform traffic in the presence of hot-spot. Throughput and delay are computed using the proposed model and the results are validated via simulation. The analysis is extended to predict performance of MIN-based multiprocessors. The effects of buffer length, switch size, and the maximum allowable outstanding requests on the system performance are discussed. Various design decisions using this model are drawn with respect to delay, throughput, and system power.
Nonholonomic Control Systems on Riemannian Manifolds
Authors: A. M. Bloch, P. E. Crouch
Venue: SIAM Journal on Control and Optimization (1995)

This paper gives a general formulation of the theory of nonholonomic control systems on a Riemannian manifold modeled by second-order differential equations and using the unique Riemannian connection defined by the metric. The main concern is to introduce a reduction scheme, replacing some of the second-order equations by first-order equations. The authors show how constants of motion together with the nonholonomic constraints may be combined to yield such a reduction. The theory is applied to a particular class of nonholonomic control systems that may be thought of as modeling a generalized rolling ball. This class reduces to the classical example of a ball rolling without slipping on a horizontal plane.
Factory automation and robotics
Authors: Herbert J. Bernstein
Venue: Communications of the ACM (1986)

Selected from papers presented at the Symposium on Factory Automation and Robotics held September 9-11, 1985, at New York University
Cohesion and reuse in an object-oriented system
Authors: James M. Bieman, Byung-Kyoo Kang
Venue: ACM SIGSOFT Software Engineering Notes (1995)

We define and apply two new measures of object-oriented class cohesion to a reasonably large C++ system. We find that most of the classes are quite cohesive, but that the classes that are reused more frequently via inheritance exhibit clearly lower cohesion.
Strategic layout planning and simulation for lean manufacturing a LayOPT tutorial
Authors: Eric S. Grajo
Venue: Proceedings of the 27th conference on Winter simulation (1995)

LayOPT is an innovative facilities layout analysis and optimization software package which can be used by layout planners and engineers in the optimal solution of single and multiple floor facility layout problems. LayOPT is ideal for the re-design of the overall layout for an existing facility or the development of a block layout for a new building. It can be applied to manufacturing, warehouse, office, and various service facility layout problems. This tutorial describes the LayOPT methodology and presents an overview of the software's features and capabilities.
Mobile robots teach machine-level programming
Authors: Patricia J. Teller, Ted Dunning
Venue: Proceedings of the 1995 ACM/IEEE conference on Supercomputing (CDROM) (1995)

We feel strongly that a contemporary introductory course in machine organization and assembly language should focus on the essentials of how computers execute programs, and not be distracted by the complications of the extraordinarily sophisticated microprocessors that are available today. These essentials should form a strong base of knowledge from which students can draw as they continue their education in computer science. Ideally these goals should be attained in an environment that fosters experimentation and cooperation, and with the aid of projects that generate interest and enthusiasm among the students. We have developed and are currently teaching a course at New Mexico State University that meets many of these goals. The course concentrates on a simple but relatively complete microprocessor architecture, that of the Motorola 68HC11 processor. Three different teaching techniques are used to encourage experimentation and team work: learning sessions, simulator labs, and microprocessor labs. New concepts are introduced in learning sessions, which combine traditional lecturing with student exploration. The understanding of these new concepts is strengthened through labs and assignments. Simulator labs and assignments, which require interaction with a simulator of the Motorola 68HC11 microprocessor, focus on the 68HC11's instruction set architecture. Microprocessor labs and assignments, which essentially are designing and building sessions, focus on the use of a 68HC11 microprocessor to control a motorized vehicle. During microprocessor labs students populate printed circuit cards, build motorized vehicles (or other roboticized exotica), and design and implement assembly language programs that provide communication between a personal computer and a 68HC11 processor, and a 68HC11 processor and a motorized vehicle. We have found that the costs of running this course are minimal and the results are very favorable in terms of student enthusiasm and achievement.
Downdating the Rank-Revealing URV Decomposition
Authors: Haesun Park, Lars Elden
Venue: SIAM Journal on Matrix Analysis and Applications (1995)

An accurate algorithm is presented for downdating a row in the rank-revealing URV decomposition that was recently introduced by Stewart. By downdating the full rank part and the noise part in two separate steps, the new algorithm can produce accurate results even for ill-conditioned problems. Such problems occur, for example, when the rank of the matrix is decreased as a consequence of the downdate. Other possible generalizations of existing QR decomposition downdating algorithms for the rank-revealing URV downdating are discussed. Numerical test results are presented that compare the performance of these new URV decomposition downdating algorithms in the sliding window method.
Asynchronous consensus and broadcast protocols
Authors: Gabriel Bracha, Sam Toueg
Venue: Journal of the ACM (JACM) (1985)

A consensus protocol enables a system of n asynchronous processes, some of which are faulty, to reach agreement. There are two kinds of faulty processes: fail-stop processes that can only die and malicious processes that can also send false messages. The class of asynchronous systems with fair schedulers is defined, and consensus protocols that terminate with probability 1 for these systems are investigated. With fail-stop processes, it is shown that &lceil;(n + 1)/2&rceil; correct processes are necessary and sufficient to reach agreement. In the malicious case, it is shown that &lceil;(2n + 1)/3&rceil; correct processes are necessary and sufficient to reach agreement. This is contrasted with an earlier result, stating that there is no consensus protocol for the fail-stop case that always terminates within a bounded number of steps, even if only one process can fail. The possibility of reliable broadcast (Byzantine Agreement) in asynchronous systems is also investigated. Asynchronous Byzantine Agreement is defined, and it is shown that &lceil;(2n + 1)/3&rceil; correct processes are necessary and sufficient to achieve it.
Business process simulation
Authors: Kerim Tumay
Venue: Proceedings of the 27th conference on Winter simulation (1995)

This introductory tutorial provides an overview of business process simulation, describes the modeling and analysis considerations, and lists typical model input, simulation and output requirements. A classification of simulation software products is provided to aid the user in understanding the business process simulation tools. Finally, a simulation exercise is presented to illustrate the power and suitability of simulation for analyzing a business process.
A Domain-Specific Software Architecture for Adaptive Intelligent Systems
Authors: Barbara Hayes-Roth, Karl Pfleger, Philippe Lalanda, Philippe Morignot, Marko Balabanovic
Venue: IEEE Transactions on Software Engineering (1995)

A good software architecture facilitates application system development, promotes achievement of functional requirements, and supports system reconfiguration. We present a domain-specific software architecture (DSSA) that we have developed for a large application domain of adaptive intelligent systems (AIS's). The DSSA provides: a) an AIS reference architecture designed to meet the functional requirements shared by applications in this domain, b) principles for decomposing expertise into highly reusable components, and c) an application configuration method for selecting relevant components from a library and automatically configuring instances of those components in an instance of the architecture. The AIS reference architecture incorporates features of layered, pipe and filter, and blackboard style architectures. We describe three studies demonstrating the utility of our architecture in the subdomain of mobile office robots and identify software engineering principles embodied in the architecture.
Centering: a framework for modeling the local coherence of discourse
Authors: Barbara J. Grosz, Scott Weinstein, Aravind K. Joshi
Venue: Computational Linguistics (1995)

This paper concerns relationships among focus of attention, choice of referring expression, and perceived coherence of utterances within a discourse segment. It presents a framework and initial theory of centering intended to model the local component of attentional state. The paper examines interactions between local coherence and choice of referring expressions; it argues that differences in coherence correspond in part to the inference demands made by different types of referring expressions, given a particular attentional state. It demonstrates that the attentional state properties modeled by centering can account for these differences.
Using test case metrics to predict code quality and effort
Authors: R. Harrison, L. G. Samaraweera
Venue: ACM SIGSOFT Software Engineering Notes (1996)

This paper reports on an investigation into the use of a design metric (the number of test cases) to predict code quality, development and testing time during the production of functional and object-oriented programs. We report on whether a significant difference exists in the number of test cases for equivalent functional and object-oriented programs as well as determining whether these test cases metrics are correlated with various development and design metrics for the different paradigms. The results of this investigation suggest that test case metrics could be used both as indicators of code quality and to predict the development and testing effort required for functional and object-oriented programs.
Change cases: use cases that identify future requirements
Authors: Earl F. Ecklund,  Jr., Lois M. L. Delcambre, Michael J. Freiling
Venue: ACM SIGPLAN Notices (1996)

Evolution of software systems is prompted by all sorts of changes. This paper demonstrates how the use case, a well known construct in object-oriented analysis, is adapted to form the change case, to identify and articulate anticipated system changes. A change case provides the ability to identify and incorporate expected future change into a design to enhance the long-term robustness of that design. In this paper, we define change cases and demonstrate how change cases are captured by the analyst. We present examples to illustrate how change cases can influence present system design and point the way toward designs that more easily accommodate expected future changes. Change cases can be effectively employed in the context of any methodology that supports use cases and traceability links.
Total Least Norm Formulation and Solution for Structured Problems
Authors: J. Ben Rosen, Haesun Park, John Glick
Venue: SIAM Journal on Matrix Analysis and Applications (1996)

A new formulation and algorithm is described for computing the solution to an overdetermined linear system, $Ax \approx b$, with possible errors in both $A$ and $b$. This approach preserves any affine structure of $A$ or $[A \:|\:b]$, such as Toeplitz or sparse structure, and minimizes a measure of error in the discrete $L_p$ norm, where $p=1,2$, or $\infty$. It can be considered as a generalization of total least squares and we call it structured total least norm (STLN). The STLN problem is formulated, the algorithm for its solution is presented and analyzed, and computational results that illustrate the algorithm convergence and performance on a variety of structured problems are summarized. For each test problem, the solutions obtained by least squares, total least squares, and STLN with $p = 1,2,$ and $\infty$ were compared. These results confirm that the STLN algorithm is an effective method for solving problems where $A$ or $b$ has a special structure or where errors can occur in only some of the elements of $A$ and $b$.
From VHDL to efficient and first-time-right designs: a formal approach
Authors: Peter F. A. Middelhoek, Sreeranga P. Rajan
Venue: ACM Transactions on Design Automation of Electronic Systems (TODAES) (1996)

In this article we provide a practical transformational approach to the synthesis of correct synchronous digital hardware designs from high-level specifications. We do this while taking into account the complete life cycle of a design from early prototype to full custom implementation. Besides time-to-market, both flexibility with respect to target architecture and efficiency issues are addressed by the methodology. The utilization of user-selected behavior-preserving transformation steps ensures first-time-right design while exploiting the experience, flexibility, and creativity of the designer.To ensure that design transformations are indeed behavior-preserving a novel mechanized approach to the specification and verification of design transformations on control data flow graphs which is independent of a specific behavioral model or graph size has been developed.As a demonstration of an industrial application we use a video processing algorithm needed for the conversion from a line-interlaced to progressively scanned video format. Both a video signal processor-based prototype implementation as well as a very efficient full custom implementation are developed starting from a single high-level behavioral specification of the algorithm in VHDL. Results are compared with those previously obtained using different tools and methodologies.
Automatic inheritance hierarchy restructuring and method refactoring
Authors: Ivan Moore
Venue: Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications (1996)

Most, object-oriented programs have imperfectly designed inheritance hierarchies and imperfectly factored methods, and these imperfections tend to increase with maintenance. Hence, even object-oriented programs are more expensive to maintain, harder to understand and larger than necessary. Automatic restructuring of inheritance hierarchies and refactoring of methods can improve the design of inheritance hierarchies, and the factoring of methods. This results in programs being smaller, having better code re-use and being more consistent. This paper describes Guru, a prototype tool for automatic inheritance hierarchy restructuring and method refactoring of Self programs. Results from realistic applications of the tool are presented.
Early bankruptcy detection using neural networks
Authors: Gottfried Rudorfer
Venue: ACM SIGAPL APL Quote Quad (1995)

In 1993, Austria had the highest number of bankruptcies since 1945. The total liabilities came to approximately US&dollar;3 billion.Powerful tools for the early detection of company risks are very important to avoid high economic losses. Artificial neural networks (ANN) are suitable for many tasks in pattern recognition and machine learning. In this paper we present an ANN for early detection of company failures using balance sheet ratios. The neural network has been successfully tested with real data of Austrian private limited companies. The research activities included the design of an APL application with a graphical user interface to find out the relevant input data and tune the ANN.The developed APL workspace takes advantage of modern windowing features running on IBM compatible computers.
uisGL: a C++ library to support graphics education
Authors: Scott Grissom
Venue: ACM SIGGRAPH Computer Graphics (1996)

Computer graphics is an important part of the computer science curriculum [8]. The advancement of graphical user interfaces and increased hardware performance allows almost anyone to create stunning pictures using commercial software. However, we are interested in teaching computer science students how to create these software tools rather than just use them [3, 11]. Students must have a firm understanding of the underlying algorithms and how the computer renders images.Content of the introductory course has increased in complexity to allow the advanced courses to remain at the frontier of graphics research [9]. Some suggest that an introductory course should emphasize 3D rendering of realistic images [10]. Most introductory graphics courses teach the traditional graphics pipeline that includes three steps: model building, transformations and rendering [5].
Optimality Conditions for a Constrained Control Problem
Authors: Gianna Stefani, Pierluigi Zezza
Venue: SIAM Journal on Control and Optimization (1996)

This paper is devoted to the study of necessary or sufficient second-order conditions for a weak local minimum in an optimal control problem. The problem is stated in the Mayer form and includes equality constraints both on the endpoints and on the state-control trajectory. The second-order conditions are stated through an associated linear--quadratic problem.