ppxscal/embedding_network huggingface dataset:
Run-time Compilation for Parallel Sparse Matrix Computations
Authors: Cong Fu, Tao Yang
Venue:  (1996)

Run-time compilation techniques have been shown effective for automating the parallelization of loops with unstructured indirect data accessing patterns. However, it is still an open problem to efficiently parallelize sparse matrix factorizations commonly used in iterative numerical problems. The difficulty is that a factorization process contains irregularly-interleaved communication and computation with varying granularities and it is hard to obtain scalable performance on distributed memory machines. In this paper, we present an inspector/executor approach for parallelizing such applications by embodying automatic graph scheduling techniques to optimize interleaved communication and computation. We describe a run-time system called RAPID that provides a set of library functions for specifying irregular data objects and tasks that access these objects. The system extracts a task dependence graph from data access patterns, and executes tasks efficiently on a distributed memory machine. We discuss a set of optimization strategies used in this system and demonstrate the application of this system in parallelizing sparse Cholesky and LU factorizations.
Limited Mobile Agents: A Practical Approach
Authors: Jesse M. Steinberg, Joseph Pasquale
Venue:  (1999)

Mobile Agents are a newly emerging network application technology in which programs can travel throughout a network to run on machines other than the originating host. Extensive research on Mobile Agents has been ongoing for many years and many Mobile Agent systems have been developed. However, there has not yet been any widespread acceptance of Mobile Agents as a viable technology by the Internet community. We examine the existing forms of mobile code technology and suggest using a limited form of Mobile Agent in conjunction with proxy servers for the purpose of client customization. We explore the issues of security, flexibility, deployability, and the utility of client customization using mobile agents and proxies, with the aim of developing a practical system that can be integrated into today''s Internet. The benefits of using these agents for customization include performance improvements through the reduction of network latency, as well as improving the client''s interface to distributed data sources through merging, filtering, and custom displays.
Representation is Representation of Similarities
Authors: S. Edelman
Venue:  (1996)

Intelligent systems are faced with the problem of securing a principled relationship between the world and its internal representation. I propose a unified approach to visual representation, based on Shepard''s (1968) notion of second-order isomorphism. According to the proposed theory, a shape is prepresented by its similarity to a number of reference shapes, measured in a high-dimensional space of elementary features. The result is a philosophically appealing, computationally feasible and formally veridical representation of a distal shape space, which addresses the needs of shape categorization and can be used to derive a range of models of perceived similarity.
Distributed Garbage Collection of Active Objects
Authors: Douglas M. Washabaugh, Dennis G. Kafura
Venue:  (1990)

This paper shows how to perform distributed automatic garbage collection of objects possessing their own thread of control. The relevance of garbage collection and concurrent objects used in the paper is explained. The collector is comprised of a collection of independent local collectors, one per node, loosely coupled to a distributed global collector. The mutator (application), the local collectors and the global collector run concurrently. The synchronization necessary to achieve correct and efficient concurrent operation between the collectors and the mutator is presented in detail. An interesting aspect of the distributed collector is the termination algorithm: the collector algorithm running on one node, which considers itself to be "done," may become "undone" by the action of a collector algorithm on another node.
Service Sockets: Design, Implementation and Interfaces
Authors: M. Schmitt, A. Acharya, M. Ibel
Venue:  (1999)

As network services have evolved, their communication structures have become increasingly complex. This increase in the complexity in the communication structure of services is mirrored by an increase in the complexity of the client code that interacts with and administers these services. In this paper, we propose the Service Socket abstraction. Conceptually, a Service Socket (or an S-socket) is a communication channel to a service instead of a particular host. Service Sockets abstract away the details of interacting with complex and dynamic services while retaining the conceptual simplicity, the familiar programming interface and the ease-of-use of Berkeley Sockets. The other attractive feature of the Service Sockets design is its modular construction: the service-specific components of a Service Sockets implement well-defined interfaces. Modularizing the different aspects of a service into a common core and pluggable components makes it easier to compose services as well as to reuse individual components. We describe the design and implementation of Service Sockets. Our experience with Service Sockets has been positive. The Service Sockets core consists of a shared library with a small footprint (60-75KB). We have developed S-sockets for a wide variety of services. A microbenchmark-based evaluation indicates that the modular design of Service Sockets does not impose a major performance penalty.
On the Approximability of Numerical Taxonomy (Fitting Distances by Tree Metrics)
Authors: Richa Agarwala, Vineet Bafna, Martin Farach, Mike Paterson, Mikkel Thorup
Venue:  (1997)

We consider the problem of fitting an n x n distance matrix D by a tree metric T. Let e be the distance to the closest tree metric under the Linf norm, that is e=minT{||T-D||inf}. First we present an O(n sup 2) algorithm for finding a tree metric T such that ||T-D||inf >= 3e. Second we show that it is NP-hard to find a tree metric T such that ||T-D||inf >= 9e/8. This paper presents the first algorithm for this problem with a performance guarantee.
Dynamic Dimensionality Reduction and Similarity Distance Computation by Inner Product Approximations
Authors: Omer Egecioglu, Hakan Ferhatosmanoglu
Venue:  (1999)

Developing efficient ways for dimensionality reduction is crucial for the query performance in multimedia databases. For approximation queries a careful analysis must be performed on the approximation quality of the dimensionality reduction technique. Besides having the lower-bound property, we expect the techniques to have good quality of distance measures when the similarity distance between two feature vectors is approximated by some notion of distance between two lower dimensional transformed vectors. Thus it is desirable to develop techniques which have accurate approximations to the original similarity distance when we eschew the lower-bound property. In this paper, we develop dynamic dimensionality reduction based on the approximation of the standard inner-product. The method uses the power symmetric functions of the components of the vectors, which are powers of the p-norms of the vectors for p = 1,2,.., m. The number m of such norms used is a parameter of the algorithm whose simplest instance gives a first-order approximation implied by the Cauchy-Schwarz inequality. We show how to compute fixed coefficients that work as universal weights based on the moments of the probability density function assumed for the distribution of the components of the input vectors in the data set. If the distribution of the components of the vectors is not known we show how the method can be adapted to work dynamically by incremental adjustment of the parameters. The experiments conducted on various distributions show that with this technique the similarity between two objects in high dimensional space can be accurately approximated by a significantly lower dimensional representation.
Low-overhead Software Dynamic Translation
Authors: Kevin Scott, Jack Davidson, Kevin Skadron
Venue:  (2001)

Software dynamic translation (SDT) is a technology that allows programs to be modified as they are running. The overhead of monitoring and modifying a running program s instructions is often substantial in SDT. As a result SDT can be impractically slow, especially in SDT systems that do not or can not employ dynamic optimization to offset overhead. This is unfortunate since SDT has obvious advantages in modern computing environments and interesting applications of SDT con-tinue to emerge. In this paper we introduce two novel overhead reduction techniques that can improve SDT performance by a factor of three even when no dynamic optimization is performed. To demonstrate the effectiveness of our overhead reduction techniques, and to show the type of useful tasks to which low-overhead, non-optimizing SDT systems might be put, we implemented two dynamic safety checkers with SDT. These dynamic safety checkers perform useful tasks pre-venting buffer-overrun exploits and restricting system call usage in untrusted binaries. Further their performance is similar to, and in some cases better than, state-of-the-art tools that perform the same functions without SDT.
An Aggressive Approach to Loop Unrolling
Authors: Jack W. Davidson, Sanjay Jinturkar
Venue:  (2001)

A well-known code transformation for improving the execution performance of a program is loop unrolling. The unrolled loop usually requires fewer instruction executions than the original loop. The reduction in instruction executions comes from two sources: the number of branch instructions executed is reduced, and the index variable is modified fewer times. In addition, for architectures with features designed to exploit instruction-level parallelism, loop unrolling can expose greater levels of instruction-level parallelism. Loop unrolling is an effective code transformation often improving the execution performance of programs that spend much of their execution time in loops by 10 to 30 percent. Unfortunately, it has not been studied as extensively as other code improvements such as register allocation or common subexpression elimination. The result is that many compilers employ simplistic loop unrolling algorithms that miss many opportunities for improving run-time performance. This paper describes how aggressive loop unrolling is done in a retargetable optimizing compiler. Using a set of 32 benchmark programs, the effectiveness of this more aggressive approach to loop unrolling is evaluated. Interactions between loop unrolling and other common optimizations are also discussed.
Testing the Functional Requirements of the Switch Interface Unit
Authors: Timothy Highley, Paul Reynolds, Craig Williams
Venue:  (2000)

Isotach networks provide special guarantees about message ordering and delivery times in a parallel or distributed computing environment. Although isotach networks can be implemented entirely in software running on commercial off-the-shelf hardware, an isotach network that uses custom hardware to maintain logical time may be particularly efficient. A hardware-based implementation of an isotach network has been designed and built using custom components, one of which is the switch interface unit (SIU). An SIU handles isotach functions for a host. These functions include the maintenance of logical time, the timestamping of outgoing isotach mesages, and the exchange of tokens with another custom hardware device,the token manager. We have designed and performed tests to analyze the switch interface units and increase confidence that the SIUs are functioning correctly. The analysis has indicated that the new units are working properly.
Reducing Load Delay to Improve Performance of Internet-Computing Programs
Authors: Chandra Krintz
Venue:  (2001)

Internet computing has been enabled by a mobile program execution model in which architecture-independent programs transfer to where they will be executed. The Java language model is designed to implement mobile execution by transferring bytecodes to a virtual machine which translates them into native machine instructions and then executes them on the target site. Implementing Java''s mobile execution model efficiently has proved challenging for two reasons. First, the time required to transfer program code from the place where it is stored to the Java Virtual Machine (JVM) that will execute it is perceived by the program''s user as execution delay. Current levels of deliverable Internet performance can cause this delay to be substantial. Second, once the code has arrived it must either be interpreted or compiled ``just-in-time'''' for its execution. Just-In-Time (JIT) compilation offers improved execution speed over interpretation by exploiting the opportunity for compile-time optimizations, but the compilation time is also perceived by the program''s user as execution delay. In this thesis, we define load delay as the unification of these two sources of overhead: transfer delay and compilation delay. We detail the causes of, describe the existing technology that contributes to, and show the degree to which load delay degrades performance of Internet-computing applications. We show that solutions to the problem of load delay in these mobile programs can be attacked in one of two ways regardless of the source: through avoidance and overlap. Avoidance is achieved by eliminating all or part of the cause of load delay and overlap by performing useful work concurrently with the delay. Both have the potential to reduce the effect of load delay and to improve performance of mobile programs. We present numerous solutions to load delay that implement either avoidance, overlap, or both. Our results show that both sources of load delay can be reduced substantially given currently available remote execution technology. In addition, our results suggest modifications that can be made to existing technology to further improve performance of Internet-computing applications.
Document Translation: Dissertations and Technical Reports
Authors: Kaushal Dalal, Edward A. Fox
Venue:  (1993)

This report describes the work on document translation, electronic publishing and integrating WATERS and Techrep carried out during Summer 93. The documents used for the project were Ph.D. dissertations and, in related efforts, technical reports. Because users often edit documents with different software and then experience problems moving them between different formats (e.g., MS Word to FrameMaker), it would be helpful to have a common format that is independent of the operating system and software on which the document was originally created. In this report, we describe different approaches possible to develop and establish sich a format. Section 2 discusses the access system necessary for a large database. Section 3 talks about the electronic page image approach for storing the document electronically. Section 4 describes the markup approach taken for developing an independent document format. Section 5 describes future work.
Service Differentiation in Real-Time Main Memory Databases
Authors: K. D. Kang, Sang H. Son, John A. Stankovic
Venue:  (2002)

The demand for real-time database services has been increasing recently. Examples include sensor data fusion, decision support applications, web information services, e-commerce, and data-intensive smart spaces. In these systems, it is essential to execute transactions in time using fresh (temporally consistent) data. Due to the high service demand and stringent timing/data temporal consistency constraints, real-time databases can be overloaded. As a result, users may suffer poor services. Many transaction deadlines can be missed or transactions may have to use stale data. To address these problems, we present a service differentiation architecture. Transactions are classified into several service classes based on their importance. Under overload, different degrees of deadline miss ratio guarantees are provided among the service classes according to their importance. A certain data freshness guarantee is also provided for the data accessed by timely transactions which finish within their deadlines. Feedback control is applied to support the miss ratio and freshness guarantees. In a simulation study, our service differentiation approach shows a significant performance improvement compared to the baseline approaches. The specified miss ratio and freshness are supported even in the presence of unpredictable workloads and data access patterns. Our approach also achieves a relatively low miss ratio for the less privileged service classes, thereby reducing potential starvation.
Minimax Programs and Bitonic Column Matrices
Authors: Paul A. Tucker, T. C. Hu
Venue:  (1999)

This report describes an optimization problem called a minimax program that is similar to a linear program, except that the addition operator is replaced by the maximum operator in the constraint inequalities. The relation of this problem to some well-known problems is clarified. An interesting special case, bitonic columns, is identified, and a new, efficient algorithm is presented for its solution. Also presented is an efficient algortihm for recognition of matrices with the bitonic columns property, which is an extension of the PQ-tree reduction algorithm.
DECIMATION OF TETRAHEDRAL GRIDS WITH ERROR CONTROL
Authors: Vivek Verma, Allen VanGelder
Venue:  (1998)

There has been significant work done in the field of surface simplification to reduce the amount of geometry that the renderer has to work on. Very little has been done to reduce the amount of geometry in a volumetric mesh so that faster volume rendering rates can be achieved. In this work we have proposed a model that allows decimation of volumetric meshes. Our model treats a volumetric grid as a volume of some material whose density values are defined at the vertices. Our method generates successive approximations of the original volume based on local changes in density. We use a direct volume rendering system based on a generalized software scan conversion of polygons, rather than the more conventional ray-casting, projection, or splatting of cells. A polygon-based volume renderer does not concern itself with the geometry of cells and, strictly speaking, cares only about polygons, which don''t have to be connected to form cells. Hence the only geometry involved in rendering is polygons and the problem of decimating a volume is reduced to choosing a subset of the polygons in the volume. We examine these polygons and throw away those that are not significant according to our error metric. A great advantage of this approach is that we do not have to regrid the data. The decimation method without regridding proves useless for volumes decimated more than 50% because it creates holes in the volume which result in objectionable artifacts in the volume rendered images. We have also implemented a decimation method that maintains a valid tetrahedralization at all times during decimation, and allows us to decimate more than 70% of the volume without much compromise in image quality. The advantage of regridding is that the decimated volume can be used for other applications like isosurface generation and streamline computation.
Billiard Quorums on the Grid
Authors: Divyakant Agrawal, Omer Egecioglu, Amr El Abbadi
Venue:  (1995)

Maekawa considered a simple but suboptimal grid based quorum generation scheme in which $N$ sites in a network are logically organized in the form of a $\sqrt{N} \times \sqrt{N}$ grid, and the quorum sets are row-column pairs. Even though the quorum size $2 \sqrt{N}$ of the grid scheme is twice as large as finite projective plane based optimal size quorums, it has the advantage of being simple and geometrically evident. In this paper we construct grid based quorums which use a modified grid, and paths that resemble billiard ball paths instead of horizontal and vertical line segments of rows and columns in the grid scheme. The size of these quorums is $\sqrt{2} \sqrt{N}$. The construction and its properties are geometrically evident as in the case of Maekawa''s grid, and the quorum sets can be generated efficiently.
Accurate Indirect Branch Prediction
Authors: Karel Driesen, Urs Holzle
Venue:  (1998)

Indirect branch prediction is likely to become increasingly important in the future because indirect branches occur more frequently in object-oriented programs. With misprediction rates of around 25% on current processors, indirect branches can incur a significant fraction of branch misprediction overhead even though they remain less frequent than the more predictable conditional branches. We investigate a wide range of two-level predictors dedicated exclusively to indirect branches. Starting with predictors that use full-precision addresses and unlimited tables, we progressively introduce hardware constraints and minimize the loss of predictor performance at each step. For programs from the SPECint95 suite as well as a suite of large C++ applications, a two-level predictor achieves a misprediction rate of 9.8% with a 1K-entry table and 7.3% with an 8K-entry table, representing more than a threefold improvement over an ideal BTB. A hybrid predictor further reduces the misprediction rates to 8.98% and 5.95%, respectively.
Software Quality Measurement: Validation of a Foundational Approach
Authors: James D. Arthur, Richard E. Nance, Gary N. Bundy, Edward V. Dorsey, Joel Henry
Venue:  (1991)

This report discusses the first year findings of a proposed three year investigation effort that focuses on the assessment and prediction of software quality. The research exploits fundamental linkages among software engineering Objectives, Principles and Attributes (the OPA framework). Process, code and document quality indicators are presented relative to the OPA framework, with elaboration on their individual roles in assessing and predicting software quality. The synthesis of an Ada code analyzer is discussed as well as proposed complementary tools comprising an automated data collection and report generation system. Key Words and Phrases: Simulation quality assessment and prediction; software engineering objectives, principles and attributes; software quality indicators, process indicators, code indicators, document quality indicators.
Database Selection Using Document and Collection Term Frequencies
Authors: Tram Phan, Nisanti Mohanraj, Allison Powell, Jim French
Venue:  (2000)

We examine the impact of two types of information - document frequency (df) and collection term frequency (ctf) - on the effectiveness of database selection. We introduce a family of database selection algorithms based on this information, and compare their effectiveness to two existing database selection approaches, CORI and gGlOSS. We demonstrate that a simple selection algorithm that uses only document frequency information is more effective than gGlOSS, and achieves effectiveness that is very close to that of CORI.
Generic Specification of Digital Hardware
Authors: Jeffrey J. Joyce
Venue:  (1990)

This paper argues that generic description is a powerful concept in the context of formal verification, in particular, the formal verification of digital hardware. The paper also describes a technique for creating generic specifications in any language with (at least) the expressive power of higher-order logic. This technique is based on the use of higher-order predicates parameterized by function variables and type variables. We believe that this technique is a very direct (if not the most direct) way to specify hardware generically. Two examples of generic specification are given in the pap er: a resettable counter and the programming level model of a very simple microprocessor.