David R. O'Hallaron

dblp:29/1660 · DBLP profile ↗
← Back
42ranked-venue papers
4as first author
0since 2021 · last 2012
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 27 · 3 first-authorSoftware engineering, systems software and programming languages · 4Databases, data management, data science and information retrieval · 4 · 1 first-authorComputer networks · 3Human-computer interaction and ubiquitous computing · 3Theory of computation · 3 · 1 first-authorSecurity and privacy · 2Artificial intelligence and machine learning · 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
High-performance computing · 47% Performance modeling and evaluation · 13% Parallel and multicore computing · 12%
Databases, data mining, and information retrieval
5 papers
Spatial and temporal data management · 39% Information retrieval · 32% Query processing and optimization · 19%
Computer graphics and multimedia
3 papers
Rendering · 78% Visualization and visual analytics · 22%
Theoretical computer science
4 papers
Mathematical optimization · 47% Automated reasoning and model checking · 27% Algorithms and data structures · 18%

Topics — the 30 heaviest of 61, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
High-performance computing
scientific computing systems
0.362008
Materialized community ground models for large-scale earthquake simulation · SC 2008
Scalable systems software - From mesh generation to scientific visualization: an end-to-end approach to parallel supercomputing · SC 2006
Analytics challenge - Remote runtime steering of integrated terascale simulation and visualization · SC 2006
High-performance computing
performance optimization at scale
0.122006
Scalable systems software - From mesh generation to scientific visualization: an end-to-end approach to parallel supercomputing · SC 2006
Scalable Parallel Octree Meshing for TeraScale Applications · SC 2005
Spatial and temporal data management
spatial indexing
0.122006
Efficient query processing on unstructured tetrahedral meshes · SIGMOD Conference 2006
A Computational Database System for Generatinn Unstructured Hexahedral Meshes with Billions of Elements · SC 2004
High-performance computing › scientific computing systems
earthquake simulation
0.112008
Materialized community ground models for large-scale earthquake simulation · SC 2008
Performance modeling and evaluation › simulation
trace replay
0.112007
//TRACE: Parallel Trace Replay with Approximate Causal Events · FAST 2007
Spatial and temporal data management
spatial query processing
0.112006
Efficient query processing on unstructured tetrahedral meshes · SIGMOD Conference 2006
Rendering › volume rendering
parallel volume rendering
0.112006
Analytics challenge - Remote runtime steering of integrated terascale simulation and visualization · SC 2006
Rendering
volume rendering
0.112006
Analytics challenge - Remote runtime steering of integrated terascale simulation and visualization · SC 2006
Storage systems
content-addressable storage
0.112006
Design Tradeoffs in Applying Content Addressable Storage to Enterprise-scale Systems Based on Virtual Machines · USENIX ATC, General Track 2006
High-performance computing › scientific visualization
in situ visualization
0.112006
Analytics challenge - Remote runtime steering of integrated terascale simulation and visualization · SC 2006
Cloud and datacenter computing
resource management
0.122001
Evaluation of a Resource Selection Mechanism for Complex Network Services · HPDC 2001
An Evaluation of Linear Models for Host Load Prediction · HPDC 1999
Parallel and multicore computing › parallel computing › parallel scientific computing
parallel mesh generation
0.112005
Scalable Parallel Octree Meshing for TeraScale Applications · SC 2005
Memory systems
cache management
0.012004
Big Wins with Small Application-Aware Caches · SC 2004
Performance modeling and evaluation
workload characterization
0.022007
An Evaluation of Linear Models for Host Load Prediction · HPDC 1999
//TRACE: Parallel Trace Replay with Approximate Causal Events · FAST 2007
Environmental and earth informatics › geophysics
earthquake simulation
0.012003
High Resolution Forward And Inverse Earthquake Modeling on Terascale Computers · SC 2003
High-performance computing
wave propagation simulation
0.012003
High Resolution Forward And Inverse Earthquake Modeling on Terascale Computers · SC 2003
Mathematical optimization
inverse problems
0.012003
High Resolution Forward And Inverse Earthquake Modeling on Terascale Computers · SC 2003
Information retrieval › distributed information retrieval
distributed search
0.012002
A Secure Distributed Search System · HPDC 2002
Information retrieval › distributed information retrieval
peer-to-peer search
0.012002
A Secure Distributed Search System · HPDC 2002
Information retrieval › query understanding
query analysis
0.012002
Locality in Search Engine Queries and Its Implications for Caching · INFOCOM 2002
Query processing and optimization
query result caching
0.012002
Locality in Search Engine Queries and Its Implications for Caching · INFOCOM 2002
Information retrieval
search engines
0.012002
Locality in Search Engine Queries and Its Implications for Caching · INFOCOM 2002
Authentication and access control
access control
0.012002
A Secure Distributed Search System · HPDC 2002
Visualization and visual analytics › scientific visualization
parallel visualization
0.022006
Scalable systems software - From mesh generation to scientific visualization: an end-to-end approach to parallel supercomputing · SC 2006
Scalable Parallel Octree Meshing for TeraScale Applications · SC 2005
Network measurement and analytics
topology discovery
0.012001
Topology discovery for large ethernet networks · SIGCOMM 2001
Cloud and datacenter computing › resource allocation
resource selection
0.012001
Evaluation of a Resource Selection Mechanism for Complex Network Services · HPDC 2001
Network measurement and analytics › bandwidth estimation
available bandwidth estimation
0.011999
Direct Queries for Discovering Network Resource Properties in a Distributed Environment · HPDC 1999
Performance modeling and evaluation › performance prediction
host load prediction
0.011999
An Evaluation of Linear Models for Host Load Prediction · HPDC 1999
Parallel and multicore computing › load balancing
load prediction
0.011999
An Evaluation of Linear Models for Host Load Prediction · HPDC 1999
Automated reasoning and model checking › model checking
symbolic model checking
0.011999
Optimizing Symbolic Model Checking for Constraint-Rich Models · CAV 1999

Methods — techniques the papers use, named apart from their topics

space-filling curves · 0.3tightly coupled parallel components · 0.1shared data structures · 0.1parallel volume rendering · 0.1in-situ visualization · 0.1directed local search · 0.1parallel octree decomposition · 0.1tree cache · 0.1parallel scalable inversion · 0.1multiresolution hexahedral meshes · 0.1data-parallel construction · 0.1single sign-on · 0.1inverted index · 0.1causal events · 0.1content addressable storage · 0.1database-aware algorithms · 0.0zipf distribution fitting · 0.0trace analysis · 0.0
YearPublicationVenuePosition
2012 Nifty assignments
abstract
No abstract available.
Nick Parlante, Julie Zelenski, Daniel Zingaro, Kevin Wayne, David R. O'Hallaron, Joshua T. Guerin, Stephen Davies, Zachary Kurmas, Keen Debby
SIGCSE5
2010 BEMC: A Searchable, Compressed Representation for Large Seismic Wavefields
Julio López 0002, Leonardo Ramírez-Guzmán, Jacobo Bielak, David R. O'Hallaron
SSDBM4
2009 Distributed Parallel Inference on Large Factor Graphs
Joseph Gonzalez 0001, Yucheng Low, Carlos Guestrin, David R. O'Hallaron
UAI4
2008 Materialized community ground models for large-scale earthquake simulation
abstract
Large-scale earthquake simulation requires source datasets which describe the highly heterogeneous physical characteristics of the earth in the region under simulation. Physical characteristic datasets are the first stage in a simulation pipeline which includes mesh generation, partitioning, solving, and visualization. In practice, the data is produced in an ad-hoc fashion for each set of experiments, which has several significant shortcomings including lower performance, decreased repeatability and comparability, and a longer time to science, an increasingly important metric. As a solution to these problems, we propose a new approach for providing scientific data to ground motion simulations, in which ground model datasets are fully materialized into octress stored on disk, which can be more efficiently queried (by up to two orders of magnitude) than the underlying community velocity model programs. While octrees have long been used to store spatial datasets, they have not yet been used at the scale we propose. We further propose that these datasets can be provided as a service, either over the Internet or, more likely, in a datacenter or supercomputing center in which the simulations take place. Since constructing these octrees is itself a challenge, we present three data-parallel techniques for efficiently building them, which can significantly decrease the build time from days or weeks to hours using commodity clusters. This approach typifies a broader shift toward science as a service techniques in which scientific computation and storage services become more tightly intertwined.
Steven W. Schlosser, Michael P. Ryan, Ricardo Taborda-Rios, Julio López 0002, David R. O'Hallaron, Jacobo Bielak
SC5
2007 //TRACE: Parallel Trace Replay with Approximate Causal Events
Michael P. Mesnier, Matthew Wachs, Raja R. Sambasivan, Julio López 0002, James Hendricks, Gregory R. Ganger, David R. O'Hallaron
FAST7
2007 Interactive Resource-Intensive Applications Made Easy
H. Andrés Lagar-Cavilla, Niraj Tolia, Eyal de Lara, Mahadev Satyanarayanan, David R. O'Hallaron
Middleware5
2006 Protecting Privacy in Key-Value Search Systems
abstract
This paper investigates the general problem of efficiently performing key-value search at untrusted servers without loss of user privacy. Given key-value pairs from multiple owners that are stored across untrusted servers, how can a client efficiently search these pairs such that no server, on its own, can reconstruct the key-value pairs? We propose a system, called Peekaboo, that is applicable and practical to any type of key-value search while protecting both data owner privacy and client privacy. The main idea is to separate the key-value pairs across different servers. Supported by access control and user authentication, Peekaboo allows search to be performed by only authorized clients without reducing the level of user privacy.
Yinglian Xie, Michael K. Reiter, David R. O'Hallaron
ACSAC3
2006 Analytics challenge - Remote runtime steering of integrated terascale simulation and visualization
abstract
We have developed a novel analytic capability for scientists and engineers to obtain insight from ongoing large-scale parallel unstructured mesh simulations running on thousands of processors. The breakthrough is made possible by a new approach that visualizes partial differential equation (PDE) solution data simultaneously while a parallel PDE solver executes. The solution field is pipelined directly to volume rendering, which is computed in parallel using the same processors that solve the PDE equations. Because our approach avoids the bottlenecks associated with transferring and storing large volumes of output data, it offers a promising approach to overcoming the challenges of visualization of petascale simulations. The submitted video demonstrates real-time on-the-fly monitoring, interpreting, and steering from a remote laptop computer of a 1024-processor simulation of the 1994 Northridge earthquake in Southern California.
Tiankai Tu, Hongfeng Yu 0001, Jacobo Bielak, Omar Ghattas, Julio C. López 0001, Kwan-Liu Ma, David R. O'Hallaron, Leonardo Ramírez-Guzmán, Nathan Stone, Ricardo Taborda-Rios, John Urbanic
SC7
2006 Scalable systems software - From mesh generation to scientific visualization: an end-to-end approach to parallel supercomputing
abstract
Parallel supercomputing has traditionally focused on the inner kernel of scientific simulations: the solver. The front and back ends of the simulation pipeline - problem description and interpretation of the output - have taken a back seat to the solver when it comes to attention paid to scalability and performance, and are often relegated to offline, sequential computation. As the largest simulations move beyond the realm of the terascale and into the petascale, this decomposition in tasks and platforms becomes increasingly untenable. We propose an end-to-end approach in which all simulation components - meshing, partitioning, solver, and visualization - are tightly coupled and execute in parallel with shared data structures and no intermediate I/O. We present our implementation of this new approach in the context of octree-based finite element simulation of earthquake ground motion. Performance evaluation on up to 2048 processors demonstrates the ability of the end-to-end approach to overcome the scalability bottlenecks of the traditional approach
Tiankai Tu, Hongfeng Yu 0001, Leonardo Ramírez-Guzmán, Jacobo Bielak, Omar Ghattas, Kwan-Liu Ma, David R. O'Hallaron
SC7
2006 Efficient query processing on unstructured tetrahedral meshes
abstract
Modern scientific applications such as fluid dynamics and earthquake modeling heavily depend on massive volumes of data produced by computer simulations. Such applications require new data management capabilities in order to scale to terabyte-scale data volumes. The most common way to discretize the application domain is to decompose it into pyramids, forming an unstructured tetrahedral mesh. Modern simulations generate meshes of high resolution and precision, to be queried by a visualization or analysis tool. Tetrahedral meshes are extremely flexible and therefore vital to accurately model complex geometries, but also are difficult to index. To reduce query execution time, applications either use only subsets of the data or rely on different (less flexible) structures, thereby trading accuracy for speed.This paper presents efficient indexing techniques for common spatial (point and range) on tetrahedral meshes. Because the prevailing multidimensional indexing techniques attempt to approximate the tetrahedra using simpler shapes (primarily rectangles) the query performance deteriorates significantly as a function of the mesh's geometric complexity. We develop Directed Local Search (DLS), an efficient indexing algorithm based on mesh topology information that is practically insensitive to the geometric properties of meshes. We show how DLS can be easily and efficiently implemented within modern DBMS without requiring new exotic index structures and complex preprocessing. Finally, we present a new data layout approach for tetrahedral mesh datasets that provides better performance for scientific applications.compared to the traditional space filling curves. In our PostgreSQL implementation DLS reduces the number of disk page accesses by 26% to 4x, and improves the overall query execution time by 25% to 4.
Stratos Papadomanolakis, Anastasia Ailamaki, Julio C. López 0001, Tiankai Tu, David R. O'Hallaron, Gerd Heber
SIGMOD Conference5
2006 Design Tradeoffs in Applying Content Addressable Storage to Enterprise-scale Systems Based on Virtual Machines
Partho Nath, Michael A. Kozuch, David R. O'Hallaron, Jan Harkes, Mahadev Satyanarayanan, Niraj Tolia, Matt Toups
USENIX ATC, General Track3
2005 Scalable Parallel Octree Meshing for TeraScale Applications
abstract
We present a new methodology for generating and adapting octree meshes for terascale applications. Our approach combines existing methods, such as parallel octree decomposition and space-filling curves, with a set of new methods that address the special needs of parallel octree meshing. We have implemented these techniques in a parallel meshing tool called Octor. Performance evaluations on up to 2000 processors show that Octor has good isogranular scalability, fixed-size scalability, and absolute running time. Octor also provides a novel data access interface to parallel PDE solvers and parallel visualization pipelines, making it possible to develop tightly coupled end-to-end finite element simulations on terascale systems.
Tiankai Tu, David R. O'Hallaron, Omar Ghattas
SC2
2005 Towards seamless mobility on pervasive hardware
Mahadev Satyanarayanan, Michael A. Kozuch, Casey Helfrich, David R. O'Hallaron
Pervasive Mob. Comput.4
2004 Seurat: A Pointillist Approach to Anomaly Detection
Yinglian Xie, Hyang-Ah Kim, David R. O'Hallaron, Michael K. Reiter, Hui Zhang 0001
RAID3
2004 Big Wins with Small Application-Aware Caches
abstract
Large datasets, on the order of GB and TB, are increasingly common as abundant computational resources allow practitioners to collect, produce and store data at higher rates. As dataset sizes grow, it becomes more challenging to interactively manipulate and analyze these datasets due to the large amounts of data that need to be moved and processed. Application-independent caches, such as operating system page caches and database buffer caches, are present throughout the memory hierarchy to reduce data access times and alleviate transfer overheads. We claim that an application-aware cache with relatively modest memory requirements can effectively exploit dataset structure and application information to speed access to large datasets. We demonstrate this idea in the context of a system named the tree cache, to reduce query latency to large octree datasets by an order of magnitude.
Julio C. López 0001, David R. O'Hallaron, Tiankai Tu
SC2
2004 A Computational Database System for Generatinn Unstructured Hexahedral Meshes with Billions of Elements
abstract
For a large class of physical simulations with relatively simple geometries, unstructured octree-based hexahedral meshes provide a good compromise between adaptivity and simplicity. However, generating unstructured hexahedral meshes with over 1 billion elements remains a challenging task. We propose a database approach to solve this problem. Instead of merely storing generated meshes into conventional databases, we have developed a new kind of software system called Computational Database System (CDS) to generate meshes directly on databases. Our basic idea is to extend existing database techniques to organize and index mesh data, and use database-aware algorithms to manipulate database structures and generate meshes. This paper presents the design, implementation, and evaluation of a prototype CDS named Weaver, which has been used successfully by the CMU Quake project to generate queryable high-resolution finite element meshes for earthquake simulations with up to 1.22B elements and 1.37B nodes.
Tiankai Tu, David R. O'Hallaron
SC2
2003 Counting network flows in real time
abstract
We are concerned with the problem of counting the distinct flows on a high speed network link. Flow counting programs, which must peek at all incoming packets, must run very quickly in order to keep up with the high packet arrival rates of modern networks. Previous approaches for flow counting based on bitmap algorithms can underestimate the number of flows. We propose a new timestamp-vector algorithm that retains the fast estimation and small memory requirement of the bitmap-based algorithms, while reducing the possibility of underestimating the number of active flows.
Hyang-Ah Kim, David R. O'Hallaron
GLOBECOM2
2003 High Resolution Forward And Inverse Earthquake Modeling on Terascale Computers
abstract
For earthquake simulations to play an important role in the reduction of seismic risk, they must be capable of high resolution and high fidelity. We have developed algorithms and tools for earthquake simulation based on multiresolution hexahedral meshes. We have used this capability to carry out 1 Hz simulations of the 1994 Northridge earthquake in the LA Basin using 100 million grid points. Our wave propagation solver sustains 1.21 teraflop/s for 4 hours on 3000 AlphaServer processors at 80% parallel efficiency. Because of uncertainties in characterizing earthquake source and basin material properties, a critical remaining challenge is to invert for source and material parameter fields for complex 3D basins from records of past earthquakes. Towards this end, we present results for material and source inversion of high-resolution models of basins undergoing antiplane motion using parallel scalable inversion algorithms that overcome many of the difficulties particular to inverse heterogeneous wave propagation problems.
Volkan Akcelik, Jacobo Bielak, George Biros, Ioannis Epanomeritakis, Antonio Fernandez, Omar Ghattas, Eui Joong Kim, Julio C. López 0001, David R. O'Hallaron, Tiankai Tu, John Urbanic
SC9
2002 A Secure Distributed Search System
abstract
This paper presents the design, implementation and evaluation of Mingle, a secure distributed search system. Each participating host runs a Mingle server, which maintains an inverted index of the local file system. Users initiate peer-to-peer keyword searches by typing keywords to lightweight Mingle clients. Central to Mingle are its access control mechanisms and its insistence on user convenience. For access control, we introduce the idea of access-right mapping, which provides a convenient way for file owners to specify access permissions. Access control is supported through a single sign-on mechanism that allows users to conveniently establish their identity to Mingle servers, such that subsequent authentication occurs automatically, with minimal manual involvement. Preliminary performance evaluation suggests that Mingle is both feasible and scalable.
Yinglian Xie, David R. O'Hallaron, Michael K. Reiter
HPDC2
2002 Locality in Search Engine Queries and Its Implications for Caching
abstract
Caching is a popular technique for reducing both server load and user response time in distributed systems. We consider the question of whether caching might be effective for search engines as well. We study two real search engine traces by examining query locality and its implications for caching. Our trace analysis produced three results. One result shows that queries have significant locality, with query frequency following a Zipf distribution. Very popular queries are shared among different users and can be cached at servers or proxies, while 16% to 22% of the queries are from the same users and should be cached at the user side. Multiple-word queries are shared less and should be cached mainly at the user side. Another result shows that if caching is to be done at the user side, short-term caching for hours is enough to cover query temporal locality, while server/proxy caching should use longer periods, such as days. The third result showed that most users have small lexicons when submitting queries. Frequent users who submit many search requests tend to reuse a small subset of words to form queries. Thus, with proxy or user side caching, prefetching based on the user lexicon looks promising.
Yinglian Xie, David R. O'Hallaron
INFOCOM2
2001 Evaluation of a Resource Selection Mechanism for Complex Network Services
abstract
Providing complex (resource-intensive) network services is challenging because the resources they need and the resources that are available can vary significantly from request to request. To address this issue, we have proposed a flexible mechanism, called active frames, that provides a basis for selecting a set of available distributed computing resources, and then mapping tasks onto those resources. As a proof of concept, we have used active frames to build a remote visualization service, called Dv, that allows users to visualize the contents of scientific datasets stored at remote locations. We evaluate the performance of active frames, in the context of Dv. In particular, we address the following two questions: (1) what performance penalty do we pay for the flexibility of the active frames mechanism? (2) can the throughput of a service based on active frames be predicted with reasonable accuracy from micro-benchmarks? The results of the evaluation suggest that the overhead imposed by active frames is reasonable (roughly 5%), and that simple models based on micro-benchmarks can conservatively predict measured throughput with reasonable accuracy (at most 20%).
Julio C. López 0001, David R. O'Hallaron
HPDC2
2001 Topology discovery for large ethernet networks
abstract
Accurate network topology information is important for both network management and application performance prediction. Most topology discovery research has focused on wide-area networks and examined topology only at the IP router level, ignoring the need for LAN topology information. Recent work has demonstrated that bridged Ethernet topology can be determined using standard SNMP MIBs; however, these algorithms require each bridge to learn about all other bridges in the network. Our approach to Ethernet topology discovery can determine the connection between a pair of the bridges that share forwarding entries for only three hosts. This minimal knowledge requirement significantly expands the size of the network that can be discovered. We have implemented the new algorithm, and it has accurately determined the topology of several different networks using a variety of hardware and network configurations. Our implementation requires access to only one endpoint to perform the queries needed for topology discovery.
Bruce Lowekamp, David R. O'Hallaron, Thomas R. Gross
SIGCOMM2
2001 Introducing computer systems from a programmer's perspective
abstract
The course "Introduction to Computer Systems" at Carnegie Mellon University presents the underlying principles by which programs are executed on a computer. It provides broad coverage of processor operation, compilers, operating systems, and networking. Whereas most systems courses present material from the perspective of one who designs or implements part of the system, our course presents the view visible to application programmers. Students learn that, by understanding aspects of the underlying system, they can make their programs faster and more reliable. This approach provides immediate benefits for all computer science and engineering students and also prepares them for more advanced systems courses. We have taught our course for five semesters with enthusiastic responses by the students, the instructors, and the instructors of subsequent systems courses.
Randal E. Bryant, David R. O'Hallaron
SIGCSE2
1999 Optimizing Symbolic Model Checking for Constraint-Rich Models
Bwolen Yang, Reid G. Simmons, Randal E. Bryant, David R. O'Hallaron
CAV4
1999 An Evaluation of Linear Models for Host Load Prediction
abstract
Evaluates linear models for predicting the Digital Unix five-second host load average from 1 to 30 seconds into the future. A detailed statistical study of a large number of long, fine-grain load traces from a variety of real machines leads to consideration of the Box-Jenkins (1994) models (AR, MA, ARMA, ARIMA), and the ARFIMA (autoregressive fractional integrated moving average) models (due to self-similarity). These models, as well as a simple windowed-mean scheme, are then rigorously evaluated by running a large number of randomized test cases on the load traces and by data-mining their results. The main conclusions are that the load is consistently predictable to a very useful degree, and that the simpler models, such as AR, are sufficient for performing this prediction.
Peter A. Dinda, David R. O'Hallaron
HPDC2
1999 Direct Queries for Discovering Network Resource Properties in a Distributed Environment
abstract
The development and performance of network-aware applications depends on the availability of accurate predictions of network resource properties. Obtaining this information directly from the network is a scalable solution that provides the accurate performance predictions and topology information needed for planning and adapting application behavior across a variety of networks. The performance predictions obtained directly from the network are as accurate as application-level benchmarks, but the network-based technique provides the added advantages of scalability and topology discovery. We describe how to determine network properties directly from the network using SNMP. We provide an overview of SNMP and describe the features it provides that make it possible to extract both available bandwidth and network topology information from network devices. The available bandwidth predictions based on network queries using SNMP are compared with traditional predictions based on application history to demonstrate that they are equally useful. To demonstrate the feasibility of topology discovery, we present results for a large Ethernet at CMU.
Bruce Lowekamp, David R. O'Hallaron, Thomas R. Gross
HPDC2
1998 Space- and Time-Efficient BDD Construction via Working Set Control
abstract
Binary decision diagrams (BDDs) have been shown to be a powerful tool in formal verification. Efficient BDD construction techniques become more important as the complexity of protocol and circuit designs increases. This paper addresses this issue by introducing three techniques based on working set control. First, we introduce a novel BDD construction algorithm based on partial breadth-first expansion. This approach has the good memory locality of the breadth-first BDD construction while maintaining the low memory overhead of the depth-first approach. Second, we describe how memory management on a per-variable basis can improve spatial locality of BDD construction at all levels, including expansion, reduction, and rehashing. Finally, we introduce a memory compacting garbage collection algorithm to remove unreachable BDD nodes and minimize memory fragmentation. Experimental results show that when the applications fit in physical memory, our approach has speedups of up to 1.6 in comparison to both depth-first (CUDD) and breadth-first (GAL) packages. When the applications do not fit into physical memory, our approach outperforms both CUDD and CAL by up to an order of magnitude. Furthermore, the good memory locality and low memory overhead of this approach has enabled us to be the first to have successfully constructed the entire C6288 multiplication circuit from the ISCAS85 benchmark set using only conventional BDD representations.
Bwolen Yang, Yirng-An Chen, Randal E. Bryant, David R. O'Hallaron
ASP-DAC4
1998 A Performance Study of BDD-Based Model Checking
Bwolen Yang, Randal E. Bryant, David R. O'Hallaron, Armin Biere, Olivier Coudert, Geert Janssen, Rajeev Ranjan 0001, Fabio Somenzi
FMCAD3
1998 Architectural Implications of a Family of Irregular Applications
abstract
Irregular applications based on sparse matrices are at the core of many important scientific computations. Since the importance of such applications is likely to increase in the future, high-performance parallel and distributed systems must provide adequate support for such applications. We characterize a family of irregular scientific applications and derive the demands they will place on the communication systems of future parallel systems. Running time of these applications is dominated by repeated sparse matrix vector product (SMVP) operations. Using simple performance models of the SMVP, we investigate requirements for bisection bandwidth, sustained bandwidth on each processing element (PE), burst bandwidth during block transfers, and block latencies for PEs under different assumptions about sustained computational throughput. Our model indicates that block latencies are likely to be the most problematic engineering challenge for future communication networks.
David R. O'Hallaron, Jonathan Richard Shewchuk, Thomas R. Gross
HPCA1
1997 Parallel Breadth-First BDD Construction
abstract
With the increasing complexity of protocol and circuit designs, formal verification has become an important research area and binary decision diagrams (BDDs) have been shown to be a powerful tool in formal verification. This paper presents a parallel algorithm for BDD construction targeted at shared memory multiprocessors and distributed shared memory systems. This algorithm focuses on improving memory access locality through specialized memory managers and partial breadth-first expansion, and on improving processor utilization through dynamic load balancing. The results on a shared memory system show speedups of over two on four processors and speedups of up to four on eight processors. The measured results clearly identify the main source of bottlenecks and point out some interesting directions for further improvements. 1 Introduction With the increasing complexity of protocol and circuit designs, formal verification has become an important research area. As an example, in 1994, In...
Bwolen Yang, David R. O'Hallaron
PPoPP2
1996 Fast Message Assembly Using Compact Address Relations
Peter A. Dinda, David R. O'Hallaron
SIGMETRICS2
1995 Decoupling Synchronization and Data Transfer in Message Passing Systems of Parallel Computers
abstract
Article Decoupling synchronization and data transfer in message passing systems of parallel computers Share on Authors: T. Stricker School of Computer Science, Carnegie Mellon University, Pittsburgh, PA School of Computer Science, Carnegie Mellon University, Pittsburgh, PAView Profile , J. Stichnoth School of Computer Science, Carnegie Mellon University, Pittsburgh, PA School of Computer Science, Carnegie Mellon University, Pittsburgh, PAView Profile , D. O'Hallaron School of Computer Science, Carnegie Mellon University, Pittsburgh, PA School of Computer Science, Carnegie Mellon University, Pittsburgh, PAView Profile , S. Hinrichs School of Computer Science, Carnegie Mellon University, Pittsburgh, PA School of Computer Science, Carnegie Mellon University, Pittsburgh, PAView Profile , T. Gross School of Computer Science, Carnegie Mellon University, Pittsburgh, PA and Institut für Computer Systeme, ETH Zürich, CH 8092 Zürich School of Computer Science, Carnegie Mellon University, Pittsburgh, PA and Institut für Computer Systeme, ETH Zürich, CH 8092 ZürichView Profile Authors Info & Claims ICS '95: Proceedings of the 9th international conference on SupercomputingJuly 1995 Pages 1–10https://doi.org/10.1145/224538.224539Online:03 July 1995Publication History 25citation370DownloadsMetricsTotal Citations25Total Downloads370Last 12 Months2Last 6 weeks1 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteGet Access
Thomas Stricker, James M. Stichnoth, David R. O'Hallaron, Susan Hinrichs, Thomas R. Gross
International Conference on Supercomputing3
1994 Communication and memory requirements as the basis for mapping task and data parallel programs
abstract
For a wide variety of applications, both task and data parallelism must be exploited to achieve the best possible performance on a multicomputer. Recent research has underlined the importance of exploiting task and data parallelism in a single compiler framework, and such a compiler can map a single source program in many different ways onto a parallel machine. The tradeoffs between task and data parallelism are complex and depend on the characteristics of the program to be executed, most significantly the memory and communication requirements, and the performance parameters of the target parallel machine. We present a framework to isolate and examine the specific characteristics of programs that determine the performance for different mappings. Our focus is on applications that process a stream of input, and whose computation structure is fairly static and predictable. We describe three such applications that were developed with our compiler: fast Fourier transforms, narrowband tracking radar; and multibaseline stereo. We examine the tradeoffs between various mappings for them and show how the framework is used to obtain efficient mappings.>
Jaspal Subhlok, David R. O'Hallaron, Thomas R. Gross, Peter A. Dinda, Jon A. Webb
SC2
1994 An Architecture for Optimal All-to-All Personalized Communication
abstract
In all-to-all personalized communication (AAPC), every node of a parallel system sends a potentially unique packet to every other node. AAPC is an important primitive operation for modern parallel compilers, since it is used to redistribute data structures during parallel computations. As an extremely dense communication pattern, AAPC causes congestion in many types of networks and therefore executes very poorly on general purpose, asynchronous message passsing routers.
Susan Hinrichs, Corey Kosak, David R. O'Hallaron, Thomas Stricker, Riichiro Take
SPAA3
1994 Generating Communication for Array Statement: Design, Implementation, and Evaluation
James M. Stichnoth, David R. O'Hallaron, Thomas R. Gross
J. Parallel Distributed Comput.2
1993 Programming Task and Data Parallelism on a Multicomputer
abstract
For many applications, achieving good performance on a private memory parallel computer requires exploiting data parallelism as well as task parallelism. Depending on the size of the input data set and the number of nodes (i.e., processors), different tradeoffs between task and data parallelism are appropriate for a parallel system. Most existing compilers focus on only one of data parallelism and task parallelism. Therefore, to achieve the desired results, the programmer must separately program the data and task parallelism. We have taken a unified approach to exploiting both kinds of parallelism in a single framework with an existing language. This approach eases the task of programming and exposes the tradeoffs between data and task parallelism to the compiler. We have implemented a parallelizing Fortran compiler for the iWarp system based on this approach. We discuss the design of our compiler, and present performance results to validate our approach. 1 Introduction Many applicati...
Jaspal Subhlok, James M. Stichnoth, David R. O'Hallaron, Thomas R. Gross
PPoPP3
1992 Subset Barrier Synchronization on a Private-Memory Parallel System
abstract
A global barrier synchronizes all processors in a parallel system.This paper investigates algorithms that allow disjoint subsets of processors to synchronize independently and in parallel.The user model of a subset barrier is straight forward; a processor that participates in a subset barrier needs to know only the name of the barrier and the number of participating processors.This paper identifies two general communication models for private-memory parallel systems: the bounded buffer broadcast model and the anonymous destination messagepassing model and presents algorithms fior barrier synchronization in the terms of these models.The models are detailed enough to allow meaningful cost estimates for their primitives, yet independent of a specific architecture and ~canbe supported efficiently by a modem private-memory parallel system.The anonymous destination message passing model is the most attractive.The time complexity to synchronize over a uni-directional ring of N processors is O(log N) for common cases, and 0( m) in the worst case.The algorithms have been implemented on iWarp, a private-memory parallel system and are now in daily use.The paper concludes with timing measurements obtained on a 64-node system. 1 Introduction Barrier synchronization is a useful technique for organizing 'the execution of a parallel program into a sequence of loosely coordinated phases.For example, a phase of a data-parallel program running on a private memory system might consist of a communication step,
Anja Feldmann, Thomas R. Gross, David R. O'Hallaron, Thomas Stricker
SPAA3
1991 Improved Algorithms for Mapping Pipelined and Parallel Computations
abstract
Recent work on the problem of mapping pipelined or parallel computations onto linear array, shared memory, and host-satellite systems is extended. It is shown how these problems can be solved even more efficiently when computation module execution times are bounded from below, intermodule communication times are bounded from above, and the processors satisfy certain homogeneity constraints. The improved algorithms have significantly lower time and space complexities than the more general algorithms: in one case, an O(nm/sup 3/) time algorithm for mapping m modules onto n processors is replaced with an O(nm log m) time algorithm, and the space requirements are reduced from O(nm/sup 2/) to O(m). Run-time complexity is reduced further with parallel mapping algorithms based on these improvements, which run on the architectures for which they create mappings.>
David M. Nicol, David R. O'Hallaron
IEEE Trans. Computers2
1991 Uniform Approach for Solving some Classical Problems on a Linear Array
abstract
It is shown that a number of classical problems from linear algebra and graph theory, including instances of the algebraic path problem, matrix multiplication, matrix triangularization, and matrix transpose, can be solved using the same basic recurrence. A simple mapping of the recurrence onto a unidirectional linear array is discussed. Qualitative advantages to programming linear arrays using this approach include uniformity of design, simplicity of programming, and scalability to larger problems. The major disadvantage is that the resulting algorithms are not necessarily optimal.>
David R. O'Hallaron
IEEE Trans. Parallel Distributed Syst.1
1990 Building blocks for a new generation of application specific computing systems
abstract
The iWarp processor, which integrates both communication and computation functions on a single VLSI component, is described. The iWarp component and subsystems including it are powerful building blocks for constructing a new generation of application-specific computing systems. These special-purpose systems can achieve very high performance, while maintaining a high degree of flexibility to address different needs of an application. In particular, iWarp systems deliver high computation bandwidth (up to 20 GFLOPS for a 1024 cell system), as well as high communication bandwidth (320 Mbytes/s per cell). Programming these systems is assisted by modern tools such as optimizing compilers and parallel program generators.>
Brent Baxter, George W. Cox, Thomas R. Gross, H. T. Kung 0001, David R. O'Hallaron, Craig Peterson, Jon A. Webb, Paul Wiley
ASAP5
1989 Uniform Approach for Solving Some Classical Problems on a Linear Array
David R. O'Hallaron
ICPP (3)1
1986 A Generalized Deadlock Predicate
David R. O'Hallaron, P. E. Reynolds
Inf. Process. Lett.1