2644770
Pulse: A Dynamic Deadlock Detection Mechanism Using Speculative Execution
Deadlock can occur wherever multiple processes interact. Most existing static and dynamic deadlock detection tools focus on simple types of deadlock, such as those caused by incorrect ordering of lock acquisitions. In this paper, we propose Pulse, a novel operating system mechanism that dynamically detects various types of deadlock in application programs. Pulse runs as a system daemon. Periodically, it scans the system for processes that have been blocked for a long time (e.g., waiting on I/O events). To determine if these processes are deadlocked, Pulse speculatively executes them ahead to discover their dependences. Based on this information, it constructs a general resource graph and detects deadlock by checking if the graph contains cycles. The ability to look into the future allows Pulse to detect deadlocks involving consumable resources, such as synchronization semaphores and pipes, which no existing tools can detect. We evaluate Pulse by showing that it can detect deadlocks in the classical dining-philosophers and smokers problems. Furthermore, we show that Pulse can detect a well-known deadlock scenario, which is widely referred to as a denial-of-service vulnerability, in the Apache web server. Our results show that Pulse can detect all these deadlocks within three seconds, and it introduces little performance overhead to normal applications that do not deadlock.
6096323
Quantifying instruction criticality for shared memory multiprocessors
Recent research on processor microarchitecture suggests using instruction criticality as a metric to guide hardware control policies. Fields et al. [3, 4] have proposed a directed acyclic graph (DAG) model for characterizing program microexecutions on uniprocessors. Under such a model, critical path analysis can be applied and instructions' slack values can be used to quantify instruction criticality. In this paper, we extend the uniprocessor DAG model to characterize parallel program executions on shared memory multiprocessor systems. We describe how critical path analysis can be applied, at a fine grain, in a multiprocessor system running both finite and continuous workloads. We provide detailed evaluations for various aspects of multiprocessor executions under the DAG model. To enable efficient offline critical path analysis, we propose a novel graph reduction technique that reduces a DAG to an equivalent but significantly smaller DAG.
6665649
My Brain is Full: When More Memory Helps
We consider the problem of finding good finite-horizon policies for POMDPs under the expected reward metric. The policies considered are free finite-memory policies with limited memory; a policy is a mapping from the space of observation-memory pairs to the space of action-memory pairs (the policy updates the memory as it goes), and the number of possible memory states is a parameter of the input to the policy-finding algorithms. The algorithms considered here are preliminary implementations of three search heuristics: local search. simulated annealing, and genetic algorithms. We compare their outcomes to each other and to the optimal policies for each instance. We compare run times of each policy and of a dynamic programming algorithm for POMDPs developed by Hansen that iteratively improves a finite-state controller - the previous state of the art for finite memory policies. The value of the best policy can only improve as the amount of memory increases, up to the amount needed for an optimal finite-memory policy. Our most surprising finding is that more memory helps in another way: given more memory than is needed for an optimal policy, the algorithms are more likely to converge to optimal-valued policies.
10443056
A large, fast instruction window for tolerating cache misses
Instruction window size is an important design parameter for many modern processors. Large instruction windows offer the potential advantage of exposing large amounts of instruction level parallelism. Unfortunately naively scaling conventional window designs can significantly degrade clock cycle time, undermining the benefits of increased parallelism.This paper presents a new instruction window design targeted at achieving the latency tolerance of large windows with the clock cycle time of small windows. The key observation is that instructions dependent on a long latency operation (e.g., cache miss) cannot execute until that source operation completes. These instructions are moved out of the conventional, small, issue queue to a much larger waiting instruction buffer (WIB). When the long latency operation completes, the instructions are reinserted into the issue queue. In this paper, we focus specifically on load cache misses and their dependent instructions. Simulations reveal that, for an 8-way processor, a 2K-entry WIB with a 32-entry issue queue can achieve speedups of 20%, 84%, and 50% over a conventional 32-entry issue queue for a subset of the SPEC CINT2000, SPEC CFP2000, and Olden benchmarks, respectively.
15890486
Interval Data Clustering with Applications
Interval data is described by a group of variables, each of which contains a range of continuous values instead of the traditional single continuous or discrete value. Traditional data analysis simply replaces each interval by its representative (e.g., center or mean) and ignores the structure information of intervals. In this paper, we study the problem of clustering interval data using the modified or extended interval data dissimilarity measures. Our contributions are two-fold. First, we discuss various approaches for measuring the dissimilarities/distances between interval data, investigate the relations among them, and present a comprehensive experimental study on clustering interval data. We show that the extended interval data clustering achieves better performance than traditional ones and produces more meaningful and explanatory results. Second, we propose a two-stage approach for clustering interval data by exploiting the relations between the traditional distances and the modified distances. Experimental results show the effectiveness of our approach
16509721
A location system using asynchronous distributed sensors
This paper describes a location system using an asynchronous distributed sensor network. The sensors' clocks operate independently and are not explicitly synchronized. The motion of the source, or the object, between two emitted pulses will cause the inter-arrival time of these two pulses at each sensor to vary. This inter-arrival time is a function of the source location and motion and is independent of the clock offsets among sensors. Thus, the independently calculated time-difference-of-arrival (TDOA) of successive pulses at each sensor provides a reliable source of information to estimate the source position as well as its motion. The Cramer-Rao lower bound (CRLB) is derived to assess the performance of the proposed method and to show that its performance can approach that of a synchronous network given a sufficient number of sensors and moderate source movement. Some sub-optimal but effective source trajectory tracking methods are proposed which further relax the assumption of source motion between consecutive pulses. The simulation results show that the proposed estimation and tracking methods are quite good.
8716577
Blind identification and deconvolution of linear systems driven by binary random sequences
The problem of blind identification and deconvolution of linear systems with independent binary inputs is addressed. To solve the problem, a linear system is applied to the observed data and adjusted so as to produce binary outputs. It is proved that the system coincides with the inverse of the unknown system (with scale and shift ambiguities), whether it is minimum or nonminimum phase. These results are derived for nonstationary independent binary inputs of infinite or finite length. Based on these results, an identification method is proposed for parametric linear systems. It is shown that under some mild conditions, a consistent estimator of the parameter can be obtained by minimizing a binariness criterion for the output data. Unlike many other blind identification and deconvolution methods, this criterion handles nonstationary signals and does not utilize any moment information of the inputs. Three numerical examples are presented to demonstrate the effectiveness of the proposed method. >
42024829
Strong consistency of the contraction mapping method for frequency estimation
Some statistical properties in regard to the contraction mapping (CM) method are discussed. One of the requirements in this method is that the filter be parameterized to satisfy a certain fundamental property. The parameterization clearly depends on the normalized noise spectrum which theoretically has to be known or estimated a priori. If this information is available, one can first whiten the noise with a linear filter and then apply the CM method to the filtered data. In this way, the parameterization only needs to be done under the white noise assumption and filters like the AR(2) can be used by the CM method. In applications, however, prewhitening may not always be necessary. >
17077200
A Clustering Model Based on Matrix Approximation with Applications to Cluster System Log Files
In system management applications, to perform automated analysis of the historical data across multiple components when problems occur, we need to cluster the log messages with disparate formats to automatically infer the common set of semantic situations and obtain a brief description for each situation. In this paper, we propose a clustering model where the problem of clustering is formulated as matrix approximations and the clustering objective is minimizing the approximation error between the original data matrix and the reconstructed matrix based on the cluster structures. The model explicitly characterizes the data and feature memberships and thus enables the descriptions of each cluster. We present a two-side spectral relaxation optimization procedure for the clustering model. We also establish the connections between our clustering model with existing approaches. Experimental results show the effectiveness of the proposed approach.