VLDB 2026 Research / reviewers in the wild / expert
Peter J. Keleher
dblp:k/PeterJKeleher
· DBLP profile ↗
55ranked-venue papers
11as first author
0since 2021 · last 2015
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 42 · 8 first-authorSoftware engineering, systems software and programming languages · 6 · 2 first-authorComputer networks · 4 · 2 first-authorApplied, interdisciplinary, general and emerging computing · 3Security and privacy · 2Databases, data management, data science and information retrieval · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Computer architecture, parallel and distributed computing, and storage systems
19 papers |
Distributed systems · 33% Parallel and multicore computing · 18% Cloud and datacenter computing · 18% | |
| Computer networks
1 paper |
Content delivery and video streaming · 77% Network measurement and analytics · 23% | |
| Software engineering, system software, and programming languages
5 papers |
Concurrent programming · 48% Operating systems · 36% Programming languages and type systems · 16% | |
| Network and information security
1 paper |
Cryptographic protocols and secure computation · 77% Network security · 23% |
Topics — the 30 heaviest of 50, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Content delivery and video streaming
bandwidth prediction |
0.1 | 1 | 2011 | Decentralized, accurate, and low-cost network bandwidth prediction · INFOCOM 2011 |
Cloud and datacenter computing
job scheduling |
0.1 | 3 | 2007 | Using content-addressable networks for load balancing in desktop grids · HPDC 2007 Randomization, Speculation, and Adaptation in Batch Schedulers · SC 2000 Job-Length Estimation and Performance in Backfilling Schedulers · HPDC 1999 |
Distributed systems
replication |
0.1 | 3 | 2003 | Deno: A Decentralized, Peer-to-Peer Object-Replication System for Weakly Connected Environments · IEEE Trans. Computers 2003 Exploiting precision vs. efficiency tradeoffs in symmetric replication environments · PODC 2002 Decentalized Replicated-Object Protocols · PODC 1999 |
Distributed systems › peer-to-peer systems › distributed hash table
content-addressable network |
0.1 | 1 | 2007 | Using content-addressable networks for load balancing in desktop grids · HPDC 2007 |
Distributed systems › grid computing
desktop grid |
0.1 | 1 | 2007 | Using content-addressable networks for load balancing in desktop grids · HPDC 2007 |
Storage systems
file systems |
0.1 | 1 | 2007 | Implementation and Performance Evaluation of Fuzzy File Block Matching · USENIX ATC 2007 |
Parallel and multicore computing
load balancing |
0.1 | 1 | 2007 | Using content-addressable networks for load balancing in desktop grids · HPDC 2007 |
Distributed systems
peer-to-peer systems |
0.1 | 1 | 2007 | Using content-addressable networks for load balancing in desktop grids · HPDC 2007 |
Memory systems › shared memory › distributed shared memory
software distributed shared memory |
0.1 | 4 | 2000 | A high-level abstraction of shared accesses · ACM Trans. Comput. Syst. 2000 Per-Node Multithreading and Remote Latency · IEEE Trans. Computers 1998 Evaluation of Release Consistent Software Distributed Shared Memory on Emerging Network Technology · ISCA 1993 |
Memory systems › shared memory
distributed shared memory |
0.1 | 5 | 2000 | Thread migration and communication minimization in DSM systems · Proc. IEEE 1999 Software Versus Hardware Shared-Memory Implementation: A Case Study · ISCA 1994 Evaluation of Release Consistent Software Distributed Shared Memory on Emerging Network Technology · ISCA 1993 |
Cloud and datacenter computing › job scheduling › batch scheduling
backfilling |
0.1 | 2 | 2000 | Randomization, Speculation, and Adaptation in Batch Schedulers · SC 2000 Job-Length Estimation and Performance in Backfilling Schedulers · HPDC 1999 |
Memory systems
shared memory |
0.0 | 2 | 2000 | A high-level abstraction of shared accesses · ACM Trans. Comput. Syst. 2000 Per-Node Multithreading and Remote Latency · IEEE Trans. Computers 1998 |
Cryptographic protocols and secure computation › secure multiparty computation
private set operations |
0.0 | 1 | 2004 | Trust-Preserving Set Operations · INFOCOM 2004 |
Concurrent programming › concurrency bug detection
data race detection |
0.0 | 2 | 2000 | A Protocol-Centric Approach to on-the-Fly Race Detection · IEEE Trans. Parallel Distributed Syst. 2000 Online Data-Race Detection via Coherency Guarantees · OSDI 1996 |
Distributed systems
consistency models |
0.0 | 1 | 2003 | Deno: A Decentralized, Peer-to-Peer Object-Replication System for Weakly Connected Environments · IEEE Trans. Computers 2003 |
Distributed systems
gossip protocols |
0.0 | 1 | 2003 | Deno: A Decentralized, Peer-to-Peer Object-Replication System for Weakly Connected Environments · IEEE Trans. Computers 2003 |
Network measurement and analytics
network embedding |
0.0 | 1 | 2011 | Decentralized, accurate, and low-cost network bandwidth prediction · INFOCOM 2011 |
Distributed systems
fault tolerance |
0.0 | 2 | 2003 | Decentalized Replicated-Object Protocols · PODC 1999 Deno: A Decentralized, Peer-to-Peer Object-Replication System for Weakly Connected Environments · IEEE Trans. Computers 2003 |
Memory systems
cache coherence |
0.0 | 4 | 1996 | Software Versus Hardware Shared-Memory Implementation: A Case Study · ISCA 1994 Evaluation of Release Consistent Software Distributed Shared Memory on Emerging Network Technology · ISCA 1993 Lazy Release Consistency for Software Distributed Shared Memory · ISCA 1992 |
Operating systems
resource management |
0.0 | 1 | 2001 | Efficient network and I/O throttling for fine-grain cycle stealing · SC 2001 |
Processor architecture and microarchitecture
cycle stealing |
0.0 | 1 | 2001 | Efficient network and I/O throttling for fine-grain cycle stealing · SC 2001 |
Parallel and multicore computing
parallel scheduling |
0.0 | 1 | 2001 | Efficient network and I/O throttling for fine-grain cycle stealing · SC 2001 |
Concurrent programming › concurrency bug detection › data race detection
on-the-fly race detection |
0.0 | 1 | 2000 | A Protocol-Centric Approach to on-the-Fly Race Detection · IEEE Trans. Parallel Distributed Syst. 2000 |
Cloud and datacenter computing › job scheduling
batch scheduling |
0.0 | 1 | 2000 | Randomization, Speculation, and Adaptation in Batch Schedulers · SC 2000 |
Cloud and datacenter computing › cluster resource management and scheduling
cluster resource management |
0.0 | 1 | 2000 | Randomization, Speculation, and Adaptation in Batch Schedulers · SC 2000 |
Parallel and multicore computing › parallel computing › parallel program debugging
deterministic replay |
0.0 | 1 | 2000 | A high-level abstraction of shared accesses · ACM Trans. Comput. Syst. 2000 |
Parallel and multicore computing
synchronization |
0.0 | 1 | 2000 | A high-level abstraction of shared accesses · ACM Trans. Comput. Syst. 2000 |
Programming languages and type systems
language design |
0.0 | 1 | 1999 | Tapeworm: High-Level Abstractions of Shared Accesses · OSDI 1999 |
Distributed systems › communication optimization
communication overhead reduction |
0.0 | 1 | 1999 | Thread migration and communication minimization in DSM systems · Proc. IEEE 1999 |
Parallel and multicore computing
parallel programming models |
0.0 | 1 | 1999 | Tapeworm: High-Level Abstractions of Shared Accesses · OSDI 1999 |
Methods — techniques the papers use, named apart from their topics
simulation · 0.2tree metric embedding · 0.1heuristics · 0.1fuzzy matching · 0.1system call interception · 0.1rate windows · 0.1bloom filter · 0.0RSA accumulator · 0.0weighted voting · 0.0epidemic information flow · 0.0precision-efficiency tradeoffs · 0.0speculation · 0.0runtime code modification · 0.0randomization · 0.0instrumentation batching · 0.0dynamic adaptation · 0.0data flow analysis · 0.0binary code rewriting · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2015 | A Ping Too Far: Real World Network Latency MeasurementabstractThere is risk when doing experiments on real world systems and making real world measurements. In a theoretical system, a simulation, or a test bed, we can make assumptions about real world behaviors and gloss over potential problems. In a real world system, however, we have to solve those problems to get science done. Sometimes these are technical problems, like making sure a tool chain is consistent across many hosts. Sometimes these are policy problems, such as obtaining permission and access. The other users of a system have a reasonable expectation that their work will not be disrupted, so researchers studying those systems must be careful accommodate that expectation. Sometimes, systems researchers encounter these problems and a study must be changed or canceled, though the problem may have nothing to do with the study itself. Our goal was to make a high-quality all-to-all network latency map that captures features not present in existing latency data sets. We solved most of the technical problems needed to make the required measurements. We solved most policy problems too, often with complex technical solutions to get around a policy obstacle without creating disruptions. However, we eventually ran out of technical solutions: we ran afoul of a policy obstacle to a technical solution to a technical problem. There is no one to blame, and no one has done anything obviously wrong: the policy decision was a conservative one designed to protect the data of the regular users of the system. Although our resulting latency data set is not complete, we believe it still has value for various network applications. Our goal was to make a high-quality all-to-all network latency map that captures features not present in existing latency data sets. We solved most of the technical problems needed to make the required measurements. We solved most policy problems too, often with complex technical solutions to get around a policy obstacle without creating disruptions. However, we eventually ran out of technical solutions: we ran afoul of a policy obstacle to a technical solution to a technical problem. There is no one to blame, and no one has done anything obviously wrong: the policy decision was a conservative one designed to protect the data of the regular users of the system. Although our resulting latency data set is not complete, we believe it still has value for various network applications. Gary Jackson, Peter J. Keleher, Alan Sussman |
e-Science | 2 |
| 2014 | Decentralized Scheduling and Load Balancing for Parallel ProgramsabstractWe present a completely decentralized algorithm for parallel job scheduling and load balancing in distributed peer-to-peer environments. This algorithm is useful for meta-scheduling across known clusters and scheduling on desktop grids. To accomplish this, we build on previous work to route jobs to appropriate resources then use the new algorithm to start parallel jobs and balance load across the grid. We also discuss what constitutes useful clustering's for this algorithm as well as inherent scaling limitations. Ultimately, we show that our algorithm performs comparably to one using centralized load balancing with global up-to-date information. The principal contribution of this work is that the parallel job scheduling is completely decentralized, which is not featured in previous work, and enables reliable ad hoc sharing of distributed resources to run parallel computations. Gary Jackson, Peter J. Keleher, Alan Sussman |
CCGRID | 2 |
| 2014 | Exploiting multi-core nodes in peer-to-peer grids
Jaehwan Lee 0001, Peter J. Keleher, Alan Sussman |
J. Parallel Distributed Comput. | 2 |
| 2014 | Decentralized multi-attribute range search for resource discovery and load balancing
Jaehwan Lee 0001, Peter J. Keleher, Alan Sussman |
J. Supercomput. | 2 |
| 2011 | Supporting Computing Element Heterogeneity in P2P GridsabstractWe propose resource discovery and load balancing techniques to accommodate computing nodes with many types of computing elements, such as multi-core CPUs and GPUs, in a peer-to-peer desktop grid architecture. Heterogeneous nodes can have multiple types of computing elements, and the performance and characteristics of each computing element can be very different. Our scheme takes into account these diverse aspects of heterogeneous nodes to maximize overall system throughput. However, straightforward methods of handling diverse computing elements that differ on many axes can result in high overheads, both in local state and in communication volume. We describe approaches that minimize messaging costs without sacrificing the failure resilience provided by an underlying peer-to-peer overlay network. Simulation results show that our scheme's load balancing performance is comparable to that of a centralized approach, that communication costs are reduced significantly compared to the existing system, and that failure resilience is not compromised. Jaehwan Lee 0001, Peter J. Keleher, Alan Sussman |
CLUSTER | 2 |
| 2011 | Searching for Bandwidth-Constrained ClustersabstractData-intensive distributed applications can increase their performance by running on a cluster of hosts connected via high-bandwidth interconnections. However, there is no effective method to find such a bandwidth-constrained cluster in a decentralized fashion. Our work is inspired by prior work that treats Internet bandwidth as an approximate tree metric space. This paper presents a decentralized, accurate, and efficient method to find a cluster of Internet hosts, given the desired cluster size and minimum interconnection bandwidth. We describe a centralized polynomial time algorithm for a tree metric space, along with a proof of correctness. We then provide a decentralized version of the algorithm. Simulation experiments with two real-world datasets confirm that our clustering approach achieves high accuracy and scalability. We also discuss the costs of decentralization and how the treeness of the dataset affects clustering accuracy. Sukhyun Song, Peter J. Keleher, Alan Sussman |
ICDCS | 2 |
| 2011 | Decentralized, accurate, and low-cost network bandwidth predictionabstractThe distributed nature of modern computing makes end-to-end prediction of network bandwidth increasingly important. Our work is inspired by prior work that treats the Internet and bandwidth as an approximate tree metric space. This paper presents a decentralized, accurate, and low cost system that predicts pairwise bandwidth between hosts. We describe an algorithm to construct a distributed tree that embeds bandwidth measurements. The correctness of the algorithm is provable when driven by precise measurements. We then describe three novel heuristics that achieve high accuracy for predicting bandwidth even with imprecise input data. Simulation experiments with a real-world dataset confirm that our approach shows high accuracy with low cost. Sukhyun Song, Peter J. Keleher, Bobby Bhattacharjee, Alan Sussman |
INFOCOM | 2 |
| 2010 | Decentralized resource management for multi-core desktop gridsabstractThe majority of CPUs now sold contain multiple computing cores. However, current desktop grid computing systems either ignore the multiplicity of cores, or treat them as distinct, independent machines. The latter approach ignores the resource contention present between cores in a single CPU, while the former approach fails to take advantage of significant computing power. We propose a decentralized resource management framework for exploiting multi-core nodes in peer-to-peer grids. We present two new load-balancing schemes that explicitly account for the resource sharing and contention of multiple cores, and propose a simple simulation model that can represent a continuum of resource sharing among cores of a CPU. We use simulation to confirm that our two algorithms match jobs w ith computing nodes efficiently, and balance load during the lifetime of the computing jobs. Jaehwan Lee 0001, Peter J. Keleher, Alan Sussman |
IPDPS | 2 |
| 2010 | Brief Announcement: Decentralized Network Bandwidth Prediction
Sukhyun Song, Peter J. Keleher, Bobby Bhattacharjee, Alan Sussman |
DISC | 2 |
| 2008 | Matchmaking and implementation issues for a P2P desktop gridabstractWe present some recent and ongoing work in our decentralized desktop computing grid project. Specifically, we discuss matching jobs with compute nodes in a peer-to-peer grid of heterogeneous platforms, and the implementation of our algorithms in a concrete system. Michael A. Marsh, Jik-Soo Kim, Beomseok Nam, Jaehwan Lee 0001, San Ratanasanya, Bobby Bhattacharjee, Peter J. Keleher, Derek Richardson, Dennis Wellnitz |
IPDPS | 7 |
| 2008 | Trade-offs in matching jobs and balancing load for distributed desktop grids
Jik-Soo Kim, Beomseok Nam, Peter J. Keleher, Michael A. Marsh, Bobby Bhattacharjee, Alan Sussman |
Future Gener. Comput. Syst. | 3 |
| 2007 | Distributed Ranked Search
Vijay Gopalakrishnan, Ruggero Morselli, Bobby Bhattacharjee, Peter J. Keleher, Aravind Srinivasan |
HiPC | 4 |
| 2007 | Using content-addressable networks for load balancing in desktop gridsabstractDesktop grids have evolved to combine Peer-to-Peer and Grid computing techniques to improve the robustness, reliability and scalability of job execution infrastructures. However, efficiently matching incoming jobs to available system resources and achieving good load balance in a fully decentralized and heterogeneous computing environment is a challenging problem. In this paper, we extend our prior work with a new decentralized algorithm for maintaining approximate global load information, and a job pushing mechanism that uses the global information to push jobs towards underutilized portions of the system. The resulting system more effectively balances load and improves overall system throughput. Through a comparative analysis of experimental results across different system configurations and job profiles, performed via simulation, we show that our system can reliably execute Grid applications on a distributed set of resources both with low cost and with good load balance. Jik-Soo Kim, Peter J. Keleher, Michael A. Marsh, Bobby Bhattacharjee, Alan Sussman |
HPDC | 2 |
| 2007 | Creating a Robust Desktop Grid using Peer-to-Peer ServicesabstractThe goal of the work described in this paper is to design and build a scalable infrastructure for executing grid applications on a widely distributed set of resources. Such grid infrastructure must be decentralized, robust, highly available, and scalable, while efficiently mapping application instances to available resources in the system. However, current desktop grid computing platforms are typically based on a client-server architecture, which has inherent shortcomings with respect to robustness, reliability and scalability. Fortunately, these problems can be addressed through the capabilities promised by new techniques and approaches in peer-to-peer (P2P) systems. By employing P2P services, our system allows users to submit jobs to be run in the system and to run jobs submitted by other users on any resources available in the system, essentially allowing a group of users to form an ad-hoc set of shared resources. The initial target application areas for the desktop grid system are in astronomy and space science simulation and data analysis. Jik-Soo Kim, Beomseok Nam, Michael A. Marsh, Peter J. Keleher, Bobby Bhattacharjee, Derek Richardson, Dennis Wellnitz, Alan Sussman |
IPDPS | 4 |
| 2007 | Implementation and Performance Evaluation of Fuzzy File Block Matching
Peter J. Keleher |
USENIX ATC | 2 |
| 2006 | File System Support for Collaboration in theWide AreaabstractWe describe the design, implementation, and performance of MFS, a new file system designed to support efficient widearea collaboration. MFS is structured around the twin abstractions of lightweight sessions and snapshots, along with a highly configurable capability-based security architecture. Sessions simplify and clarify collaborative semantics. Snapshots allow atomic access to arbitrary collections of files, and allow sharing to be defined in a simple and expressive fashion. MFS’s security architecture is a layered system that allows diverse usage scenarios. Pure capability-based access allows clients to access data without needing expensive public key or authentication servers, or complicated administration. However, MFS’s capabilities can also be watermarked, allowing a range of services to be added on a per-mount basis, up to and including traditional user authentication based on passwords or public keys. Basing the system around the use of immutable snapshots enables the underlying system to use several performance optimizations aggressively. Performance results from our MFS prototype show that, far from adding overhead, the use of snapshots allows the system to perform comparably to NFS in the local-area case and significantly outperform existing systems in wide-area environments. Vasile Gaburici, Peter J. Keleher, Bobby Bhattacharjee |
ICDCS | 2 |
| 2004 | Multi-dimensional quorum sets for read-few write-many replica control protocolsabstractWe describe d-spaces, a replica control protocol defined in terms of quorum sets on multi-dimensional logical structures. Our work is motivated by asymmetrical access patterns, where the number of read accesses to data are dominant relative to update accesses, i.e. where the protocols should be read-few write-many. D-spaces are optimal with respect to quorum group sizes. The quality of the tradeoff between read efficiency and update availability is not matched by existing quorum protocols. We also propose a novel scheme for implementing d-spaces that combines caching and local information to provide a best-effort form of global views. This allows quorum reconfiguration to be lightweight without impacting access latencies, even when the rate of membership changes is very high. Bujor D. Silaghi, Peter J. Keleher, Bobby Bhattacharjee |
CCGRID | 2 |
| 2004 | Adaptive Replication in Peer-to-Peer SystemsabstractPeer-to-peer systems can be used to form a low-latency decentralized data delivery system. Structured peer-to-peer systems provide both low latency and excellent load balance with uniform query and data distributions. Under the more common skewed access distributions, however, individual nodes are easily overloaded, resulting in poor global performance and lost messages. This paper describes a lightweight, adaptive, and system-neutral replication protocol, called LAR, that maintains low access latencies and good load balance even under highly skewed demand. We apply LAR to Chord and show that it has lower overhead and better performance than existing replication strategies. Vijay Gopalakrishnan, Bujor D. Silaghi, Bobby Bhattacharjee, Peter J. Keleher |
ICDCS | 4 |
| 2004 | Trust-Preserving Set OperationsabstractWe describe a method for performing trust-preserving set operations by untrusted parties. Our motivation for this is the problem of securely reusing content-based search results in peer-to-peer networks. We model search results and indexes as data sets. Such sets have value for answering a new query only if they are trusted. In the absence of any system-wide security mechanism, a data set is trusted by a node a only if it was generated by some node which is trusted by a. Our main contributions are a formal definition of the problem as well as an efficient scheme that solves this problem by allowing untrusted peers to perform set operations on trusted data sets while also producing unforgeable proofs of correctness. This is accomplished by requiring trusted nodes to sign appropriately-defined digests of generated sets; each such digest consists of an RSA accumulator and a Bloom filter. The scheme is general, and has other applications as well. We give an analysis demonstrating the low overhead of the scheme, and we include experimental data which confirm the analysis. Ruggero Morselli, Samrat Bhattacharjee, Jonathan Katz, Peter J. Keleher |
INFOCOM | 4 |
| 2004 | Hierarchical Routing with Soft-State Replicas in TerraDirabstractSummary form only given. Recent work on peer-to-peer systems has demonstrated the ability to deliver low latencies and good load balance when demand for data is relatively uniform. We describe an adaptive replication protocol that delivers low latencies, good load balance even when demand is heavily skewed. The protocol can withstand arbitrary and instantaneous changes in demand distribution. Our approach also addresses classical concerns related to topological constraints of asymmetrical namespaces, such as hierarchical bottlenecks in the context of hierarchical namespaces. The protocol replicates routing state in an ad-hoc manner based on profiled information, is lightweight, scalable, and requires no replica consistency guarantees. Bujor D. Silaghi, Vijay Gopalakrishnan, Bobby Bhattacharjee, Peter J. Keleher |
IPDPS | 4 |
| 2003 | Deno: A Decentralized, Peer-to-Peer Object-Replication System for Weakly Connected EnvironmentsabstractThis paper presents the design, implementation, and evaluation of the replication framework of Deno, a decentralized, peer-to-peer object-replication system targeted for weakly connected environments. Deno uses weighted voting for availability and pair-wise, epidemic information flow for flexibility. This combination allows the protocols to operate with less than full connectivity, to easily adapt to changes in group membership, and to make few assumptions about the underlying network topology. We present two versions of Deno's protocol that differ in the consistency levels they support. We also propose security extensions to handle a class of malicious actions that involve misrepresentation of protocol information. Deno has been implemented and runs on top of Linux and Win32 platforms. We use the Deno prototype to characterize the performance of the Deno protocols and extensions. Our study reveals several interesting results that provide fundamental insight into the benefits of decentralization and the mechanics of epidemic protocols. Ugur Çetintemel, Peter J. Keleher, Bobby Bhattacharjee, Michael J. Franklin |
IEEE Trans. Computers | 2 |
| 2002 | Exploiting precision vs. efficiency tradeoffs in symmetric replication environmentsabstractNo abstract available. Ugur Çetintemel, Peter J. Keleher, Yanif Ahmad |
PODC | 2 |
| 2002 | Efficient Distributed Precision Control in Symmetric Replication EnvironmentsabstractMaintaining strict consistency of replicated data can be prohibitively expensive for many distributed applications and environments. In order to alleviate this problem, some systems allow applications to access stale, imprecise data. Due to relaxed correctness requirements, many applications can tolerate stale data but require that the imprecision be properly bounded. This paper describes ReBound, a system that provides an adaptive framework for supporting and exploiting data precision vs. efficiency tradeoffs in symmetric replication environments via distributed precision control. Previous work proposed efficient precision control algorithms that support continuous read requests tagged with custom numerical precision ranges. ReBound generalizes and extends previous work with a new algorithm for continuous reads, support for ad-hoc reads, and light-weight adaptation mechanisms for coping with dynamically changing update patterns. This paper also presents preliminary experimental results, based on a prototype implementation, that demonstrate the performance advantages of exploiting precision vs. efficiency tradeoffs. Ugur Çetintemel, Peter J. Keleher |
SRDS | 2 |
| 2002 | Light-Weight Currency Management Mechanisms in Mobile and Weakly-Connected Environments
Ugur Çetintemel, Peter J. Keleher |
Distributed Parallel Databases | 2 |
| 2001 | Support for Speculative Update Propagation and Mobility in DenoabstractThis paper presents the replication framework of Deno, an object replication system specifically designed for mobile and weakly-connected environments. Deno uses weighted voting for availability and pair-wise, epidemic information flow for flexibility. This combination allows the protocols to operate with less than full connectivity, to easily adapt to changes in group membership, and to make few assumptions about the underlying network topology. Deno has been implemented and runs on top of Linux and Win32 platforms. We use the Deno prototype to characterize the performance of two versions of Deno's protocol. The first version enables globally serializable execution of update transactions. The second supports a weaker consistency level that still guarantees transactionally-consistent access to replicated data. We demonstrate that the incremental cost of providing global serializability is low, and that speculative dissemination of updates can significantly improve commit performance. Ugur Çetintemel, Peter J. Keleher, Michael J. Franklin |
ICDCS | 2 |
| 2001 | Object Distribution with Local InformationabstractWe investigate the problem of distributing communicating objects across wide-area environments. Our goals are to balance load, minimize network communication, and use resources efficiently. However, applications running in such environments are often dynamic and highly unpredictable. Furthermore, synchronous communication is usually too expensive to be used in disseminating load information. We therefore investigate policies that use local information to approximate desired global behaviors. Our results with Java applications show that simple, local approaches are surprisingly effective in capturing load information and object relationships, and in making migration and clustering decisions based on profiled information. Bujor D. Silaghi, Peter J. Keleher |
ICDCS | 2 |
| 2001 | Efficient network and I/O throttling for fine-grain cycle stealingabstractThis paper proposes and evaluates a new mechanism, rate windows, for I/O and network rate policing. The goal of the proposed system is to provide a simple, yet effective way to enforce resource limits on target classes of jobs in a system. This work was motivated by our Linger Longer infrastructure, which harvests idle cycles in networks of workstations. Network and I/O throttling is crucial because Linger Longer can leave guest jobs on non-idle nodes and machine owners should not be adversely affected. Our approach is quite simple. We use a sliding window of recent events to compute the average rate for a target resource. The assigned limit is enforced by the simple expedient of putting application processes to sleep when they issue requests that would bring their resource utilization out of the allowable profile. Our I/O system call intercept model makes the rate windows mechanism light-weight and highly portable. Our experimental results show that we are able to limit resource usage to within a few percent of target usages. Kyung Dong Ryu, Jeffrey K. Hollingsworth, Peter J. Keleher |
SC | 3 |
| 2000 | A Decision-Process Analysis of Implicit CoschedulingabstractThis paper presents a theoretical framework based on Bayesian decision theory for analyzing recently reported results on implicit coscheduling of parallel applications on clusters of workstations. Using probabilistic modeling, We show that the approach presented can be applied for processes with arbitrary communication mixes. We also note that our approach can be used for deciding the additional spin times in the case of spin-yield. Finally, we present arguments for the use of a different notion of fairness than assumed by prior work. Radha Poovendran, Peter J. Keleher, John S. Baras |
IPDPS | 2 |
| 2000 | Thread Migration and Load Balancing in Non-Dedicated EnvironmentsabstractNetworks of workstations are fast becoming the standard environment for parallel applications. However, the use of "found" resources as a platform for tightly-coupled runtime environments has at least three obstacles: contention for resources, differing processor speeds, and processor heterogeneity. All three obstacles result in load imbalance, leading to poor performance for scientific applications. This paper describes the use of thread migration in transparently addressing this load imbalance in the context of the CVM software distributed shared memory system. We describe the implementation and performance of mechanisms and policies that accommodate both resource contention, and heterogeneity in clock speed and processor type. Our results show that these cycles can indeed be effectively exploited, and that the runtime cost of processor heterogeneity can be quite manageable. Along the way, however, we identify a number of problems that need to be addressed before such systems can enjoy widespread use. Kritchalach Thitikamol, Peter J. Keleher |
IPDPS | 2 |
| 2000 | Randomization, Speculation, and Adaptation in Batch SchedulersabstractThis paper proposes extensions to the backfilling job-scheduling algorithm that significantly improve its performance. We introduce variations that sort the "backfilling order" in priority-based and randomized fashions. We examine the effectiveness of guarantees present in conservative backfilling and find that initial guarantees have limited practical value, while the performance of a "no-guarantee" algorithm can be significantly better when combined with extensions that we introduce. Our study differs from many similar studies in using traces that contain user estimates. We find that actual overestimates are large and significantly different from simple models. We propose the use of speculative backfilling and speculative test runs to counteract these large overestimations. Finally, we explore the impact of dynamic, system-directed adaptation of application parallelism. The cumulative improvements of these techniques decrease the bounded slowdown, our primary metric, to less then 15% of conservative backfilling. Dejan Perkovic, Peter J. Keleher |
SC | 2 |
| 2000 | Performance of Mobile, Single-Object, Replication ProtocolsabstractDiscusses the implementation and performance of bounded voting, which is a new object replication protocol designed for use in mobile and weakly-connected environments. We show that the protocol eliminates several restrictions of previous work, such as the need for (1) strong or complete connectivity, (2) complete knowledge of system membership, and (3) low update rates. The protocol implements an asynchronous, weighted-voting scheme via epidemic information flow, and commits updates in an entirely decentralized fashion. A proxy mechanism is used to enable transparent handling of planned disconnections. We use a detailed simulation study to characterize the performance of bounded voting under a variety of loads and environments, and to compare it to another decentralized epidemic protocol. We further investigate the performance impact of the proxy mechanism. Ugur Çetintemel, Peter J. Keleher |
SRDS | 2 |
| 2000 | The Impact of Symmetry on Software Distributed Shared Memory
Peter J. Keleher |
J. Parallel Distributed Comput. | 1 |
| 2000 | Consistency management in Deno
Peter J. Keleher, Ugur Çetintemel |
Mob. Networks Appl. | 1 |
| 2000 | A high-level abstraction of shared accessesabstractWe describe the design and use of thetapemechanism, a new high-level abstraction of accesses to shared data for software DSMs. Tapes consolidate and generalize a number of recent protocol optimizations, including update-based locks and recorded-replay barriers. Tapes are usually created by “recording” shared accesses. The resulting recordings can be used to anticipate future accesses by tailoring data movement to application semantics. Tapes-based mechanisms are layered on top of existing shared-memory protocols, and are largely independent of the underlying memory model. Tapes can also be used to emulate the data-movement semantics of several update-based protocol implementations, without altering the underlying protocol implementation. We have used tapes to create the Tapeworm synchronization library. Tapeworm implements sophisticated record-replay mechanisms across barriers, augments locks with data-movement semantics, and allows the use of producer-consumer segments, which move entire modified segments when any portion of the segment is accessed. We show that Tapeworm eliminates 85% of remote misses, reduces message traffic by 63%, and improves performance by an average of 29% for our application suite. Peter J. Keleher |
ACM Trans. Comput. Syst. | 1 |
| 2000 | A Protocol-Centric Approach to on-the-Fly Race DetectionabstractWe present the design and evaluation of a new data-race-detection technique. Our technique executes at runtime rather than post-mortem, and handles unmodified shared-memory applications that run on top of CVM, a software distributed shared memory system. We do not assume explicit associations between synchronization and shared data, and require neither compiler support nor program source. Instead, we use a binary code re-writer to instrument instructions that may access shared memory. The most novel aspect of our system is that we are able to use information from the underlying memory system implementation in order to reduce the number of comparisons made at runtime. We present an experimental evaluation of our techniques by using our system to look for data races in five common shared-memory programs. We quantify the effect of several optimizations to the basic technique: data flow analysis, instrumentation batching, runtime code modification, and instrumentation inlining. Our system correctly found races in three of the five programs, including two from a standard benchmark suite. The slowdown of this debugging technique averages less than 2.5 for our applications. Dejan Perkovic, Peter J. Keleher |
IEEE Trans. Parallel Distributed Syst. | 2 |
| 1999 | Job-Length Estimation and Performance in Backfilling SchedulersabstractBackfilling is a simple and effective way of improving the utilization of space-sharing schedulers. Simple first-come-first-served approaches are ineffective because large jobs can fragment the available resources. Backfilling schedulers address this problem by allowing jobs to move ahead in the queue, provided that they will not delay subsequent jobs. Previous research has shown that inaccurate estimates of execution times can lead to better backfilling schedules. We characterize this effect on several workloads, and show that average slowdowns can be effectively reduced by systematically lengthening estimated execution times. Further, we show that the average job slowdown metric can be addressed directly by sorting jobs by increasing execution time. Finally, we modify our sorting scheduler to ensure that incoming jobs can be given hard guarantees. The resulting scheduler guarantees to avoid starvation, and performs significantly better than previous backfilling schedulers. Dmitry N. Zotkin, Peter J. Keleher |
HPDC | 2 |
| 1999 | Exposing Application AlternativesabstractWe present the design of an interface to allow applications to export tuning alternatives to a higher-level system. By exposing different parameters that can be changed at runtime, applications can be made to adapt to changes in their execution environment due to other programs, or the addition or deletion of nodes, communication links, etc. An integral part of this interface is that an application not only exposes its options, but also the resource utilization of each option and the effect that the option will have on the application's performance. We discuss how these options can be evaluated to tune the overall performance of a collection of applications in the system. Finally, we show preliminary results from a database application that is automatically reconfigured by the system from query shipping to data shipping based on the number of active clients. Peter J. Keleher, Jeffrey K. Hollingsworth, Dejan Perkovic |
ICDCS | 1 |
| 1999 | Active Correlation TrackingabstractWe describe methods of identifying and exploiting sharing patterns in multi-threaded DSM applications. Active correlation tracking is used to determine the affinity, or amount of sharing, in pairs of threads. Thread affinities are combined to create correlation maps, which summarize sharing between all pairs of threads in the application. Correlation maps can be used in two ways. First, they can be used as an aid for performance tuning, Second, they can be used to estimate the impact on communication requirements of reconfiguring running applications through thread migration. Thread migration provides a way of tuning applications for which sharing information is not known a priori, and a means of adapting to dynamic algorithms or environments. We show that i) accurate thread affinities can be obtained without multiple rounds of migration, ii) thread affinities lead to good approximations of application communication requirements, iii) simple heuristics can use thread affinities to efficiently approximate optimal mappings of threads to nodes, and iv) good placement is essential for high performance. Kritchalach Thitikamol, Peter J. Keleher |
ICDCS | 2 |
| 1999 | Symmetry and performance in consistency protocolsabstractA consistency protocol can be termed symmetric if all processors are treated identically when they access common resources. By contrast, asymmetric protocols usually assign a home or manager to each resource. Use of the resource by the home incurs less overhead than use by other processors. The key to good performance in such systems is to ensure that the asymmetry of the underlying protocol is skewed in the same way as that of the application. This paper presents a comparative evaluation of a symmetric and an asymmetric DSM protocol. We pay particular attention to those performance differences caused by symmetric and asymmetric features of the protocols. We then present the design and evaluation of an improved asymmetric writer protocol that dynamically migrates ownership according to access patterns. We show that the new protocol outperforms and is more stable than the non-migrating asymmetric protocol, and has much less memory overhead than the symmetric protocol. 1. Peter J. Keleher |
International Conference on Supercomputing | 1 |
| 1999 | Responsiveness without interruptsabstractthis paper is a characterization of the delays actually observed in a suite of applications. We show that the majority of notification delays result from a small number of large delays. These delays can dominate any gains achieved through use of new network technologies. The impact of these delays can be considerable. Our applications averaged more than 31% slower without interrupts than with them. This result argues that the problem is serious, and needs to be addressed either by including interrupts in emerging standards, or through use of the techniques discussed below Dejan Perkovic, Peter J. Keleher |
International Conference on Supercomputing | 2 |
| 1999 | Mechanisms and policies for supporting fine-grained cycle stealingabstractThis paper presents an investigation into local mechanisms and scheduling policies that allow guest processes to efficiently exploit otherwissidle workstation resources.Unlike traditional policies that harvest cycles only from unused machines, we target policies that exploit resources even from machines that have active users.We present a set of kernel extensions that allow these policies to operate without significantly impacting host processes: 1) a new guesf process priority that prevents processes from stealing any processor time from host processes, 2) a new page replacement policy that imposes hard bounds on the number of physical pages that can be obtained by guest processes when host processes are active, and 3) a new page-out strategy that adaptively increases the pageout rate of guest processes when new host processes are started.We evaluate both the individual impacts of each mechanism, and their utility in supporting Linger-Longer, an aggressive cycleharvesting policy. Kyung Dong Ryu, Jeffrey K. Hollingsworth, Peter J. Keleher |
International Conference on Supercomputing | 3 |
| 1999 | Tapeworm: High-Level Abstractions of Shared Accesses
Peter J. Keleher |
OSDI | 1 |
| 1999 | Decentalized Replicated-Object ProtocolsabstractWe describe a new replicated-object protocol designed for use in mobile and weakly-connected environments. The protocol differs from previous protocols in combining epidemic information propagation with voting, and in using fixed per-object currencies for voting. The advantage of epidemic protocols is that data movement only requires pairwise communication. Hence, there is no need for a majority quorum to be available and simultaneously connected at any single time. The protocols increase availability by using voting, rather than primary copy or primary commit schemes. Finally, the use of per-object voting currencies allows votes to take place in an entirely decentralized fashion, without any server having complete knowledge of group membership. We show that currency allocation can be used to implement diverse policies. For example, uniform currency distributions emulate traditional dynamic voting schemes, while allocating all currency to a single server emulates a primary-copy scheme. We present simulation results showing both schemes, as well as the performance advantages of using currency proxies to temporarily reallocate currency during planned disconnections. Peter J. Keleher |
PODC | 1 |
| 1999 | Update protocols and cluster-based shared memory
Peter J. Keleher |
Comput. Commun. | 1 |
| 1999 | Thread migration and communication minimization in DSM systemsabstractNetworks of workstations are characterized by dynamic resource capacities. Such environments can only be efficiently exploited by applications that are dynamically reconfigurable. The paper explores mechanisms and policies that enable online reconfiguration of shared memory applications through thread migration. We describe the design and preliminary performance of a distributed shared memory (DSM) system that performs online remappings of threads to nodes based on sharing behavior. Our system obtains complete sharing information through a novel correlation tracking phase that avoids the thread thrashing that characterizes previous approaches. This information is used to evaluate the communication required by a given thread mapping and to predict the resulting performance. Kritchalach Thitikamol, Peter J. Keleher |
Proc. IEEE | 2 |
| 1998 | Prediction and Adaptation in Active HarmonyabstractWe describe the design and early functionality of the Active Harmony global resource management system. Harmony is an infrastructure designed to efficiently execute parallel applications in large scale, dynamic environments. Harmony differs from other projects with similar goals in that the system automatically adapts ongoing computations to changing conditions through online reconfiguration. This reconfiguration can consist of system directed migration of work at several different levels, or automatic application adaptation through the use of tuning options exported by Harmony aware applications. We describe early experience with work migration at the level of procedures, processes and lightweight threads. Jeffrey K. Hollingsworth, Peter J. Keleher |
HPDC | 2 |
| 1998 | General Data StreamingabstractThis work presents a new I/O system design and implementation targeted at applications that perform data streaming. The approach yields true zero-copy transfers between I/O devices in many instances. We give a general characterization of I/O elements and provide a framework that allows analysis of the potential for zero-copy transfers. Finally, we describe the design, implementation, and performance of a prototype I/O system in a real time, embeddable, 32-bit operating system whose design is based on the presented analysis to minimize data copying. Frank W. Miller, Peter J. Keleher, Satish K. Tripathi |
RTSS | 2 |
| 1998 | Per-Node Multithreading and Remote LatencyabstractThis paper evaluates the use of per-node multithreading to hide remote memory and synchronization latencies in software DSMs. As with hardware systems, multithreading in software systems can be used to reduce the costs of remote requests by running other threads when the current thread blocks. We added multithreading to the CVM software DSM and evaluated its impact on the performance of a suite of common shared memory programs. Multithreading resulted in speed improvements of at least 20 percent in two of the applications, and better than 15 percent for several other applications. However, we also found that good performance cannot always be achieved transparently for nontrivial applications. Also, the characteristics of the underlying DSM protocol can have a large effect on multithreading's utility. Kritchalach Thitikamol, Peter J. Keleher |
IEEE Trans. Computers | 2 |
| 1997 | Multi-threading and Remote Latency in Software DSMsabstractThis paper evaluates the use of per-node multi-threading to hide remote memory and synchronization latencies in a software DSM. As with hardware systems, multi-threading in software systems can be used to reduce the costs of remote requests by switching threads when the current thread blocks. We added multi-threading to the CVM software DSM and evaluated its impact on performance for a suite of common shared memory programs. Multi-threading resulted in speed improvements of at least 17% in three of the seven applications in our suite, and lesser improvements in the other applications. However, we found that: good performance is not always achievable transparently for non-trivial applications; multi-threading can negatively interact with DSM operations; multi-threading decreases cache and TLB locality; and any multi-threading speedup is dependent on available work. Kritchalach Thitikamol, Peter J. Keleher |
ICDCS | 2 |
| 1996 | The Relative Importance of Concurrent Writers and Weak Consistency ModelsabstractThis paper presents a detailed comparison of the relative importance of allowing concurrent writers versus the choice of the underlying consistency model. Our comparison is based on single- and multiple-writer versions of a lazy release consistent (LRC) protocol, and a single-writer sequentially consistent protocol, all implemented in the CVM software distributed shared memory system. We find that in our environment, which we believe to be representative of distributed systems today and in the near future, the consistency model has a much higher impact on overall performance than the choice of whether to allow concurrent writers. The multiple writer LRC protocol performs an average of 9% better than the single writer LRC protocol, but 34% better than the single-writer sequentially consistent protocol. Set against this, MW-LRC required an average of 72% memory overhead, compared to 10% overhead for the single-writer protocoIs. Peter J. Keleher |
ICDCS | 1 |
| 1996 | Online Data-Race Detection via Coherency GuaranteesabstractNo abstract available. Dejan Perkovic, Peter J. Keleher |
OSDI | 2 |
| 1995 | An Evaluation of Software-Based Release Consistent Protocols
Peter J. Keleher, Alan L. Cox, Sandhya Dwarkadas, Willy Zwaenepoel |
J. Parallel Distributed Comput. | 1 |
| 1994 | Software Versus Hardware Shared-Memory Implementation: A Case StudyabstractCompares the performance of software-supported shared memory on a general-purpose network to hardware-supported shared memory on a dedicated interconnect. Up to eight processors, the results are based on the execution of a set of application programs on a SGI 4D/480 multiprocessor and on TreadMarks, a distributed shared memory system that runs on a Fore ATM LAN of DECstation-5000/240s. Since the DECstation and the 4D/480 use the same processor, primary cache, and compiler, the shared-memory implementation is the principal difference between the systems. Beyond eight processors, the results are based on execution-driven simulation. Specifically, the authors compare a software implementation on a general-purpose network of uniprocessor nodes, a hardware implementation using a directory-based protocol on a dedicated interconnect, and a combined implementation using software to provide shared memory between multiprocessor nodes with hardware implementing shared memory within a node.> Alan L. Cox, Sandhya Dwarkadas, Peter J. Keleher, Honghui Lu, Ramakrishnan Rajamony, Willy Zwaenepoel |
ISCA | 3 |
| 1993 | Evaluation of Release Consistent Software Distributed Shared Memory on Emerging Network TechnologyabstractWe evaluate the effect of processor speed, network characteristics, and software overhead on the performance of release-consistent software distributed shared memory. We examine five different protocols for implementing release consistency: eager update, eager invalidate, lazy update, lazy invalidate, and a new protocol called lazy hybrid. This lazy hybrid protocol combines the benefits of both lazy update and lazy invalidate. Sandhya Dwarkadas, Peter J. Keleher, Alan L. Cox, Willy Zwaenepoel |
ISCA | 2 |
| 1992 | Lazy Release Consistency for Software Distributed Shared MemoryabstractRelaxed memory consistency models, such as release consistency, were introduced in order to reduce the impact of remote memory access latency in both software and hardware distributed shared memory (DSM). However, in a software DSM, it is also important to reduce the number of messages and the amount of data exchanged for remote memory access. Lazy release consistency is a new algorithm for implementing release consistency that lazily pulls modifications across the interconnect only when necessary. Trace-driven simulation using the SPLASH benchmarks indicates that lazy release consistency reduces both the number of messages and the amount of data transferred between processors. These reductions are especially significant for programs that exhibit false sharing and make extensive use of locks. Peter J. Keleher, Alan L. Cox, Willy Zwaenepoel |
ISCA | 1 |