ppxscal/embedding_network huggingface dataset:
Single-Agent Parallel Window Search
Authors: Curt Powley, Richard E. Korf
Venue: IEEE Transactions on Pattern Analysis and Machine Intelligence (1991)

Parallel window search is applied to single-agent problems by having different processes simultaneously perform iteration of Iterative-Deepening-A* (IDA*) on the same problem but with different cost thresholds. This approach is limited by the time to perform the goal iteration. To overcome this disadvantage, the authors consider node ordering. They discuss how global node ordering by minimum h among nodes with equal f=g+h values can reduce the time complexity of serial IDA* by reducing the time to perform the iterations prior to the goal iteration. Finally, the two ideas of parallel window search and node ordering are combined to eliminate the weaknesses of each approach while retaining the strengths. The resulting approach, called simply parallel window search, can be used to find a near-optimal solution quickly, improve the solution until it is optimal, and then finally guarantee optimality, depending on the amount of time available.
Elements for a course on the design of distributed algorithms
Authors: N. Plouzeau, M. Raynal
Venue: ACM SIGCSE Bulletin (1992)

Sequential algorithms design and operating system principles have always been fundamental courses in any computer science curriculum. Protocols are now a well established discipline, and parallelism and concurrency issues are becoming more and more popular in academic courses. Along these guidelines distributed algorithms have now emerged as a proper topic of computer science; studying them demands some prerequisite on algorithms, parallelism and protocols but they cannot themselves be reduced to these three domains.In this paper we present elements for a course on the design of distributed algorithms performing common operating system services. The fundamental aspects of this course lie in teaching the students that no global state can be instantaneously caught because of the asynchronism of the processes and message transmission delays. We state basis problems addressed during the lecture (mutual exclusion, rendezvous implementation, snapshot computation, network traversals and distributed evaluation of predicates) and present how students are faced with distributed problems in practical classes, using a distributed memory parallel machine to implement their solutions.
Distributed compilation metrics (abstract)
Authors: Donal Gotterbarn, Timothy D. Hammer
Venue: Proceedings of the 1990 ACM annual conference on Cooperation (1990)

Software metrics typically are used to determine the complexity of code, the cost of software development, the effort required to develop software, or the probability of software errors. As programs increase in size and complexity, more of the limited CPU resource is consumed during compilation. In an effort to reduce the overall time for compilation of large (in excess of 1,000,000 lines of code) embedded Ada programs, a distributed Ada compilation system implemented on a network of computers has been developed. Tests of this system, using small to medium size (1,000 to 50,000 lines of code) Ada programs, have shown various levels of performance improvement over sequential compiles. The level of improvement, however, has not been consistent. At times, when the system is executing multiple concurrent compiles, there is a significant loss of efficiency. There has been relatively little work done on compilation time metrics [1,2]; and even less work done on distributed compilation time metrics which could be used to predict these major reductions in compilation performance. Our research presents two models for predicting compilation time for large Ada programs in a distributed environment. The first model involves the application of several standard metrics (lines of code, data structures, i/o intensity) and some non-standard metrics for compilation time. The weaknesses discovered in this model for a distributed environment are discussed. The second model combines some standard metrics with a scheduling algorithm to both predict distributed compilation time and determine an allocation of packages among distributed processors to optimize compilation time. We present tests of both of these models using modified PIWG Z tests. Compilation time predictions from these models are also shown for larger programs. Problems with an approach based on compilation time efficiency and recommendations for continued research in compilation metrics are discussed.
Optimum and heuristic data path scheduling under resource constraints
Authors: Cheng-Tsung Hwang, Yu-Chin Hsu, Youn-Long Lin
Venue: Proceedings of the 27th ACM/IEEE Design Automation Conference (1991)

This paper presents an integer linear programming model for the scheduling problem in high level synthesis under resource constraints. Extensive consideration is given to the following applications: Multi-cycle operations with non-pipelined function units, pipelined function units; Mutually exclusive operations; Functional pipelining; Loop folding; Scheduling under bus constraint. Using this model, we are able to solve all the benchmarks in the literature optimally in a few seconds. Besides the model, a new technique, called Zone Scheduling (ZS), is proposed to solve large size problems. ZS partitions the distribution graph into several zones and solves sequentially the problems contained. A novel feature of this technique is that it schedules more than one control step at a time, allowing us to take a more global view of a scheduling problem.
Detecting Unsafe Error Recovery Schedules
Authors: Robyn R. Lutz, Johnny S. K. Wong
Venue: IEEE Transactions on Software Engineering (1992)

A mechanism for modeling timing, precedence, and data-consistency constraints on concurrently executing processes is presented. The model allows durations and intervals between events to be specified. An algorithm is provided to detect schedules which may be unsafe with respect to the constraints. This work, motivated by the design and validation of autonomous error-recovery strategies on the Galileo spacecraft, appears to be applicable to a variety of asynchronous real-time systems.
CSCW
Authors: Jonathan Grudin
Venue: Communications of the ACM (1991)

Collaboration is a sign of maturation. A child is nurtured at home before venturing into the world. An idea is first developed then introduced to a larger community. We work on a software module in isolation before integrating it.
Analysis and refutation of the LCAS
Authors: W. Kahan
Venue: ACM SIGPLAN Notices (1992)

A Language Compatible Arithmetic Standard (LCAS) has been proposed as International Standard ISO/IEC 10967:1991 for Language Compatible Arithmetic, Project JTC. 22.28, Version 3.1 (1 March 1991), by Drs. Mary Payne and Brian Wichmann. An earlier version appeared in both ACM SIGNUM and ACM SIGPLAN 25 1 (Jan. 1990). The following remonstrance has been sent to ANSI X3-T2, the American committee in charge of the proposal:This proposed Language Compatible Arithmetic Standard is so severely flawed that the computing world must reject it.
Implementation of the PIPE Processor
Authors: Matthew K. Farrens, Andrew R. Pleszkun
Venue: Computer (1991)

The PIPE (parallel instruction with pipelined execution) processor, which is the result of a research project initiated to investigate high-performance computer architectures for VLSI implementation, is described. The lessons learned from the implementation are discussed. The most important result was the discovery that supporting architectural queues does not complicate the instruction issue logic and fees the processor clock rate from external memory speed influences. It was also found that the decision to support an instruction set with two instruction sizes and to allow consecutive two-parcel instruction issues profoundly affected the instruction fetch logic design. Other significant results concerned the issue logic, barrel shifter, cache control logic, and branch count.
Active messages: a mechanism for integrated communication and computation
Authors: Thorsten von Eicken, David E. Culler, Seth Copen Goldstein, Klaus Erik Schauser
Venue: Proceedings of the 19th annual international symposium on Computer architecture (1992)

The design challenge for large-scale multiprocessors is (1) to minimize communication overhead, (2) allow communication to overlap computation, and (3) coordinate the two without sacrificing processor cost/performance. We show that existing message passing multiprocessors have unnecessarily high communication costs. Research prototypes of message driven machines demonstrate low communication overhead, but poor processor cost/performance. We introduce a simple communication mechanism, Active Messages, show that it is intrinsic to both architectures, allows cost effective use of the hardware, and offers tremendous flexibility. Implementations on nCUBE/2 and CM-5 are described and evaluated using a split-phase shared-memory extension to C, Split-C. We further show that active messages are sufficient to implement the dynamically scheduled languages for which message driven machines were designed. With this mechanism, latency tolerance becomes a programming/compiling concern. Hardware support for active messages is desirable and we outline a range of enhancements to mainstream processors.
Perceptions of Missouri secondary and area vocational school computer teachers toward trends of computer hardware and software technologies by year 1995 (abstract)
Authors: Alireza Salehnia
Venue: Proceedings of the 1990 ACM annual conference on Cooperation (1990)

The purpose of this study was to determine whether there is a difference between the perceptions of secondary school and area vocational school computer teachers regarding the trends and advancement of computer hardware and software technologies. Data for this study were collected by questionnaire. A total of 135 (63%) questionnaires from computer teachers in secondary schools and 60 (75%) questionnaires from computer teachers in vocational schools were used in the study. The null hypothesis was tested at the .05 level of significance. A significant difference among the perceptions of secondary school computer teachers and area vocational school computer teachers was found. Therefore, the null hypothesis was rejected. The conclusions reached were: (1) less than one-tenth of the secondary school and one-tenth of the area vocational school computer teachers hold computer science degrees; (2) on an average, there are 12.6 computers available in the secondary schools and 28.9 computers available in the area vocational schools; (3) BASIC language is being taught in three-fourths of secondary and vocational schools; and (4) secondary and vocational computer teachers anticipate that Missouri will require computer literacy courses as a part of secondary school graduation requirements and that computer teachers will be required to obtain program specific teaching certificates.
Incremental relevance feedback
Authors: IJsbrand Jan Aalbersberg
Venue: Proceedings of the 15th annual international ACM SIGIR conference on Research and development in information retrieval (1992)

Although relevance feedback techniques have been investigated for more than 20 years, hardly any of these techniques has been implemented in a commercial full-text document retrieval system. In addition to pure performance problems, this is due to the fact that the application of relevance feedback techniques increases the complexity of the user interface and thus also the use of a document retrieval system. In this paper we concentrate on a relevance feedback technique that allows easily understandable and manageable user interfaces, and at the same time provides high-quality retrieval results. Moreover, the relevance feedback technique introduced unifies as well as improves other well-known relevance feedback techniques.
Convolution surfaces
Authors: Jules Bloomenthal, Ken Shoemake
Venue: ACM SIGGRAPH Computer Graphics (1991)

Smoothly blended articulated models are often difficult to construct using current techniques. Our solution in this paper is to extend the surfaces introduced by Blinn [Blinn 1982] by using three-dimensional convolution with skeletons composed of polygons or curves. The resulting convolution surfaces permit fluid topology changes, seamless part joins, and efficient implementation.
The design and implementation of a log-structured file system
Authors: Mendel Rosenblum, John K. Ousterhout
Venue: Proceedings of the thirteenth ACM symposium on Operating systems principles (1991)

This paper presents a new technique for disk storage management called a log-structured file system. A log-structured file system writes all modifications to disk sequentially in a log-like structure, thereby speeding up both file writing and crash recovery. The log is the only structure on disk; it contains indexing information so that files can be read back from the log efficiently. In order to maintain large free areas on disk for fast writing, we divide the log into segments and use a segment cleaner to compress the live information from heavily fragmented segments. We present a series of simulations that demonstrate the efficiency of a simple cleaning policy based on cost and benefit. We have implemented a prototype log-structured file system called Sprite LFS; it outperforms current Unix file systems by an order of magnitude for small-file writes while matching or exceeding Unix performance for reads and large writes. Even when the overhead for cleaning is included, Sprite LFS can use 70% of the disk bandwidth for writing, whereas Unix file systems typically can use only 5--10%.
An architecture for bounded rationality
Authors: Stuart J. Russell
Venue: ACM SIGART Bulletin (1991)

This paper is specifically concerned with the topic of limited rationality--- the generation of utility-maximizing behaviour in a non-static environment by a system with finite computational resources. The design of the RALPH (Rational Agent with Limited Performance Hardware) architecture aims to tie together, in a unified theoretical framework and a single system design, three strands of research relevant to this problem: the study of metareasoning procedures, that is, decision procedures that select computations to direct the course of another decision procedure; the compilation of decision processes that explicitly maximize utility into efficiently-executable policies and goals, and their integration into the decision procedure; and the generation of planning behaviour, directed towards an explicitly-represented goal, in the context of decision theory. Decision procedures are implemented by four distinct execution architectures, running in parallel, each characterized by the types of knowledge employed. Only fragments of the architecture are currently implemented, but some progress has been made on the individual topics.
Minimizing the Lennard-Jones potential function on a massively parallel computer
Authors: G. L. Xue, R. S. Maier, J. B. Rosen
Venue: Proceedings of the 6th international conference on Supercomputing (1992)

The Lennard-Jones potential energy function arises in the study of low-energy states of proteins and in the study of cluster statics. This paper presents a mathematical treatment of the potential function, deriving lower bounds as a function of the cluster size, in both two and three dimensional configurations. These results are applied to the minimization of a linear chain, or polymer, in two-dimensional space to illustrate the relationship between energy and cluster size. An algorithm is presented for finding the minimum-energy lattice structure in two dimensions. Computational results obtained on the CM-5, a massively parallel processor, support a mathematical proof showing an essentially linear relationship between minimum potential energy and the number of atoms in a cluster. Computational results for as many as 50000 atoms are presented. This largest case was solved on the CM-5 in approximately 40 minutes at an approximate rate of 1.1 32-bit gigaflops.
The RHET system
Authors: James F. Allen
Venue: ACM SIGART Bulletin (1991)

The RHET system is a knowledge representation tool that is intended to support the development of advanced prototype natural language understanding and planning systems. The key requirements on the system are that it be general and expressive enough to support basic experimental systems, that it is efficient enough to allow such systems to be effectively built, and that its behavior be precisely specified independent of the actual program. It is a hybrid representation consisting of a set of separately defined specialized reasoning systems that are presented to the user within a single uniform framework.
The implications of cache affinity on processor scheduling for multiprogrammed, shared memory multiprocessors
Authors: Raj Vaswani, John Zahorjan
Venue: ACM SIGOPS Operating Systems Review (1991)

In a shared memory multiprocessor with caches, executing tasks develop "affinity" to processors by filling their caches with data and instructions during execution. A scheduling policy that ignores this affinity may waste processing power by causing excessive cache refilling.Our work focuses on quantifying the effect of processor reallocation on the performance of various parallel applications multiprogrammed on a shared memory multiprocessor, and on evaluating how the magnitude of this cost affects the choice of scheduling policy.We first identify the components of application response time, including processor reallocation costs. Next, we measure the impact of reallocation on the cache behavior of several parallel applications executing on a Sequent Symmetry multiprocessor. We also measure, the performance of these applications under a number of alternative allocation policies. These experiments lead us to conclude that on current machines processor affinity has only a very weak influence on the choice of scheduling discipline, and that the benefits of frequent processor reallocation (in response to the changing parallelism of jobs) outweigh the penalties imposed by such reallocation. Finally, we use this experimental data to parameterize a simple analytic model, allowing us to evaluate the effect of processor affinity on future machines, those containing faster processors and larger caches.
Dynamic Scheduling of Hard Real-Time Tasks and Real-Time Threads
Authors: Karsten Schwan, Hongyi Zhou
Venue: IEEE Transactions on Software Engineering (1992)

The authors investigate the dynamic scheduling of tasks with well-defined timing constraints. They present a dynamic uniprocessor scheduling algorithm with an O(n log n) worst-case complexity. The preemptive scheduling performed by the algorithm is shown to be of higher efficiency than that of other known algorithms. Furthermore, tasks may be related by precedence constraints, and they may have arbitrary deadlines and start times (which need not equal their arrival times). An experimental evaluation of the algorithm compares its average case behavior to the worst case. An analytic model used for explanation of the experimental results is validated with actual system measurements. The dynamic scheduling algorithm is the basis of a real-time multiprocessor operating system kernel developed in conjunction with this research. Specifically, this algorithm is used at the lowest, threads-based layer of the kernel whenever threads are created.
Experiences in building the Clemson computational sciences program
Authors: D. E. Stevenson, R. M. Panoff
Venue: Proceedings of the 1990 ACM/IEEE conference on Supercomputing (1990)

We describe the evolution and current status of the Computational Science program at Clemson. Faculty interest generated by the acquisition of a distributed memory machine in 1986 led to the formation of a computational science working group. Various activities of the group members contributed to the formulation of certain fundamental principles of our view of computational science. We discuss these principles and indicate how they appear in our curriculum, including how currently recognized subjects may be incorporated. The syllabus of our current offering at the graduate level, which includes a significant laboratory component, is given. Rationale for an undergraduate offering and an outline of a proposed course with laboratory are presented, as well. Criteria for assessing our courses and setting directions for future changes are also discussed. We summarize the difficulties in starting interdisciplinary computational science programs and conclude with our future plans, which include statewide efforts through 'telecampus' facilities.
Parametric optimization of sequence alignment
Authors: D. Gusfield, K. Balasubramanian, D. Naor
Venue: Proceedings of the third annual ACM-SIAM symposium on Discrete algorithms (1992)

The optimal alignment or the weighted minimum edit distance between two DNA or amino acid sequences for a given set of weights is computed by classical dynamic programming techniques, and is widely used in Molecular Biology. However, in DNA and amino acid sequences there is considerable disagreement about how to weight matches, mismatches, insertions/deletions (indels) and gaps. Parametric Sequence alignment is the problem of computing the optimal valued alignment between two sequences as a function of variable weights for matches, mismatches, spaces and gaps. The goal is to partition the parameter space into regions (which are necessarily convex) such that in each region one alignment is optimal throughout and such that the regions are maximal for this property. In this paper we are primarily concerned with the structure of this convex decomposition, and secondarily with the complexity of computing the decomposition. The most striking results are the following: For the special case where only matches, mismatches and spaces are counted, and where spaces are counted throughout the alignment, we show that the decomposition is surprisingly simple: all regions are infinite; there are at most n2/3 regions; the lines that bound the regions are all of the form &bgr; = c+(c + 0.5)&agr;; and the entire decomposition can be found in O(knm) time, where k is the actual number of regions and n < m are the lengths of the two strings. These results were found while implementing a large software package to do parametric sequence analysis, and in turn have led to faster algorithms for those tasks.
Requirements for deadlock-free, adaptive packet routing
Authors: Robert Cypher, Luis Gravano
Venue: Proceedings of the eleventh annual ACM symposium on Principles of distributed computing (1992)

This paper studies the problem of deadlock-free packet routing in parallel and distributed architectures. We present three main results. First, we show that the standard technique of ordering the queues so that every packet always has the possibility of moving to a higher ordered queue is not necessary for deadlock-freedom. Second, we show that every deadlock-free, adaptive packet routing algorithm can be restricted, by limiting the adaptivity available, to obtain an oblivious algorithm which is also deadlock-free. Third, we show that any packet routing algorithm for a cycle or torus network which is free of deadlock and which uses only minimal length paths must require at least three queues in some node. This matches the known upper bound of three queues per node for deadlock-free, minimal packet routing on cycle and torus networks.