EDBT 2026 Demo / reviewers in the wild / expert
Jonathan W. Berry
dblp:48/646
· DBLP profile ↗
24ranked-venue papers
8as first author
3since 2021 · last 2022
0000-0002-1768-685XORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 12 · 2 first-author · 2 since 2021Theory of computation · 6 · 4 first-authorDatabases, data management, data science and information retrieval · 4 · 1 since 2021Software engineering, systems software and programming languages · 1 · 1 first-authorHuman-computer interaction and ubiquitous computing · 1 · 1 first-author
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.
| Databases, data mining, and information retrieval
4 papers |
Data stream processing · 53% Indexing and storage engines · 38% Data mining · 9% | |
| Computer architecture, parallel and distributed computing, and storage systems
3 papers |
Parallel and multicore computing · 45% Performance modeling and evaluation · 32% Electronic design automation · 23% | |
| Theoretical computer science
3 papers |
Graph algorithms and graph theory · 87% Algorithms and data structures · 11% Mathematical optimization · 2% |
Topics — the 14 heaviest of 16, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Data stream processing › frequency estimation
heavy hitter detection |
0.9 | 2 | 2021 | Timely Reporting of Heavy Hitters Using External Memory · ACM Trans. Database Syst. 2021 Timely Reporting of Heavy Hitters using External Memory · SIGMOD Conference 2020 |
Parallel and multicore computing › graph processing
heterogeneous graph processing |
0.6 | 1 | 2022 | A Block-Based Triangle Counting Algorithm on Heterogeneous Environments · IEEE Trans. Parallel Distributed Syst. 2022 |
Graph algorithms and graph theory › subgraph counting
triangle counting |
0.6 | 1 | 2022 | A Block-Based Triangle Counting Algorithm on Heterogeneous Environments · IEEE Trans. Parallel Distributed Syst. 2022 |
Indexing and storage engines
external memory data structure |
0.5 | 1 | 2021 | Timely Reporting of Heavy Hitters Using External Memory · ACM Trans. Database Syst. 2021 |
Electronic design automation
benchmark generation |
0.4 | 1 | 2019 | Scalable generation of graphs for benchmarking HPC community-detection algorithms · SC 2019 |
Performance modeling and evaluation
synthetic graph generation |
0.4 | 1 | 2019 | Scalable generation of graphs for benchmarking HPC community-detection algorithms · SC 2019 |
Indexing and storage engines
b-tree |
0.2 | 1 | 2016 | Anti-Persistence on Persistent Storage: History-Independent Sparse Tables and Dictionaries · PODS 2016 |
Parallel and multicore computing
task partitioning |
0.2 | 1 | 2022 | A Block-Based Triangle Counting Algorithm on Heterogeneous Environments · IEEE Trans. Parallel Distributed Syst. 2022 |
Performance modeling and evaluation
benchmarking |
0.1 | 1 | 2021 | Timely Reporting of Heavy Hitters Using External Memory · ACM Trans. Database Syst. 2021 |
Data mining › structured data mining › graph mining
community detection |
0.1 | 1 | 2019 | Scalable generation of graphs for benchmarking HPC community-detection algorithms · SC 2019 |
Data mining › structured data mining
graph mining |
0.1 | 1 | 2019 | Scalable generation of graphs for benchmarking HPC community-detection algorithms · SC 2019 |
Algorithms and data structures › memory hierarchy › external memory algorithms
cache-oblivious algorithms |
0.1 | 1 | 2016 | Anti-Persistence on Persistent Storage: History-Independent Sparse Tables and Dictionaries · PODS 2016 |
Mathematical optimization
combinatorial optimization |
0.0 | 1 | 1995 | Path Optimization and Near-Greedy Analysis for Graph Partitioning: An Empirical Study · SODA 1995 |
Graph algorithms and graph theory
graph partitioning |
0.0 | 1 | 1995 | Path Optimization and Near-Greedy Analysis for Graph Partitioning: An Empirical Study · SODA 1995 |
Methods — techniques the papers use, named apart from their topics
task streaming · 1.1block-based partitioning · 1.1multi-threaded implementation · 1.0LFR graph generator · 0.8packed-memory array · 0.5external-memory skip list · 0.5external-memory algorithm · 0.5external memory algorithms · 0.5path optimization · 0.0greedy analysis · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2022 | Automatic HBM Management: Models and AlgorithmsabstractSome past and future supercomputer nodes incorporate High- Bandwidth Memory (HBM). Compared to standard DRAM, HBM has similar latency, higher bandwidth and lower capacity. Daniel DeLayo, Kenny Zhang, Kunal Agrawal 0001, Michael A. Bender, Jonathan W. Berry, Rathish Das, Benjamin Moseley, Cynthia A. Phillips |
SPAA | 5 |
| 2022 | A Block-Based Triangle Counting Algorithm on Heterogeneous EnvironmentsabstractTriangle counting is a fundamental building block in graph algorithms. In this article, we propose a block-based triangle counting algorithm to reduce data movement during both sequential and parallel execution. Our block-based formulation makes the algorithm naturally suitable for heterogeneous architectures. The problem of partitioning the adjacency matrix of a graph is well-studied. Our task decomposition goes one step further: it partitions the set of triangles in the graph. By streaming these small tasks to compute resources, we can solve problems that do not fit on a device. We demonstrate the effectiveness of our approach by providing an implementation on a compute node with multiple sockets, cores and GPUs. The current state-of-the-art in triangle enumeration processes the Friendster graph in 2.1 seconds, not including data copy time between CPU and GPU. Using that metric, our approach is 20 percent faster. When copy times are included, our algorithm takes 3.2 seconds. This is 5.6 times faster than the fastest published CPU-only time. Abdurrahman Yasar, Sivasankaran Rajamanickam, Jonathan W. Berry, Ümit V. Çatalyürek |
IEEE Trans. Parallel Distributed Syst. | 3 |
| 2021 | Timely Reporting of Heavy Hitters Using External MemoryabstractGiven an input stream S of size N , a ɸ-heavy hitter is an item that occurs at least ɸN times in S . The problem of finding heavy-hitters is extensively studied in the database literature. We study a real-time heavy-hitters variant in which an element must be reported shortly after we see its T = ɸ N-th occurrence (and hence it becomes a heavy hitter). We call this the Timely Event Detection ( TED ) Problem. The TED problem models the needs of many real-world monitoring systems, which demand accurate (i.e., no false negatives) and timely reporting of all events from large, high-speed streams with a low reporting threshold (high sensitivity). Like the classic heavy-hitters problem, solving the TED problem without false-positives requires large space (Ω (N) words). Thus in-RAM heavy-hitters algorithms typically sacrifice accuracy (i.e., allow false positives), sensitivity, or timeliness (i.e., use multiple passes). We show how to adapt heavy-hitters algorithms to external memory to solve the TED problem on large high-speed streams while guaranteeing accuracy, sensitivity, and timeliness. Our data structures are limited only by I/O-bandwidth (not latency) and support a tunable tradeoff between reporting delay and I/O overhead. With a small bounded reporting delay, our algorithms incur only a logarithmic I/O overhead. We implement and validate our data structures empirically using the Firehose streaming benchmark. Multi-threaded versions of our structures can scale to process 11M observations per second before becoming CPU bound. In comparison, a naive adaptation of the standard heavy-hitters algorithm to external memory would be limited by the storage device’s random I/O throughput, i.e., ≈100K observations per second. Shikha Singh 0002, Prashant Pandey 0001, Michael A. Bender, Jonathan W. Berry, Martin Farach-Colton, Rob Johnson 0001, Tom M. Kroeger, Cynthia A. Phillips |
ACM Trans. Database Syst. | 4 |
| 2020 | Timely Reporting of Heavy Hitters using External MemoryabstractGiven an input stream of size N, a φ-heavy hitter is an item that occurs at least φ N times in S. The problem of finding heavy-hitters is extensively studied in the database literature. We study a real-time heavy-hitters variant in which an element must be reported shortly after we see its T = φ N-th occurrence (and hence becomes a heavy hitter). We call this the Timely Event Detection (TED) Problem. The TED problem models the needs of many real-world monitoring systems, which demand accurate (i.e., no false negatives) and timely reporting of all events from large, high-speed streams, and with a low reporting threshold (high sensitivity). Like the classic heavy-hitters problem, solving the TED problem without false-positives requires large space (Ω(N) words). Thus in-RAM heavy-hitters algorithms typically sacrifice accuracy (i.e., allow false positives), sensitivity, or timeliness (i.e., use multiple passes). We show how to adapt heavy-hitters algorithms to external memory to solve the TED problem on large high-speed streams while guaranteeing accuracy, sensitivity, and timeliness. Our data structures are limited only by I/O-bandwidth (not latency) and support a tunable trade-off between reporting delay and I/O overhead. With a small bounded reporting delay, our algorithms incur only a logarithmic I/O overhead. We implement and validate our data structures empirically using the Firehose streaming benchmark. Multi-threaded versions of our structures can scale to process 11M observations per second before becoming CPU bound. In comparison, a naive adaptation of the standard heavy-hitters algorithm to external memory would be limited by the storage device's random I/O throughput, i.e., ~100K observations per second. Prashant Pandey 0001, Shikha Singh 0002, Michael A. Bender, Jonathan W. Berry, Martin Farach-Colton, Rob Johnson 0001, Tom M. Kroeger, Cynthia A. Phillips |
SIGMOD Conference | 4 |
| 2020 | How to Manage High-Bandwidth Memory AutomaticallyabstractThis paper develops an algorithmic foundation for automated management of the multilevel-memory systems common to new supercomputers. In particular, the High-Bandwidth Memory (HBM) of these systems has a similar latency to that of DRAM and a smaller capacity, but it has much larger bandwidth. Systems equipped with HBM do not fit in classic memory-hierarchy models due to HBM's atypical characteristics. Rathish Das, Kunal Agrawal 0001, Michael A. Bender, Jonathan W. Berry, Benjamin Moseley, Cynthia A. Phillips |
SPAA | 4 |
| 2019 | Scalable generation of graphs for benchmarking HPC community-detection algorithmsabstractCommunity detection in graphs is a canonical social network analysis method. We consider the problem of generating suites of teras-cale synthetic social networks to compare the solution quality of parallel community-detection methods. The standard method, based on the graph generator of Lancichinetti, Fortunato, and Radicchi (LFR), has been used extensively for modest-scale graphs, but has inherent scalability limitations. George M. Slota, Jonathan W. Berry, Simon D. Hammond, Stephen Olivier, Cynthia A. Phillips, Sivasankaran Rajamanickam |
SC | 2 |
| 2018 | Optimizing for KNL Usage Modes When Data Doesn't Fit in MCDRAMabstractTechnologies such as Multi-Channel DRAM (MCDRAM) or High Bandwidth Memory (HBM) provide significantly more bandwidth than conventional memory. This trend has raised questions about how applications should manage data transfers between levels. This paper focuses on evaluating different usage modes of the MCDRAM in Intel Knights Landing (KNL) manycore processors. We evaluate these usage modes with a sorting kernel and a sorting-based streaming benchmark. We develop a performance model for the benchmark and use experimental evidence to demonstrate the correctness of the model. The model projects near-optimal numbers of copy threads for memory bandwidth bound computations. We demonstrate on KNL up to a 1.9X speedup for sort when the problem does not fit in MCDRAM over an OpenMP GNU sort that does not use MCDRAM. Neil Butcher, Stephen Olivier, Jonathan W. Berry, Simon D. Hammond, Peter M. Kogge |
ICPP | 3 |
| 2017 | Two-level main memory co-design: Multi-threaded algorithmic primitives, analysis, and simulation
Michael A. Bender, Jonathan W. Berry, Simon D. Hammond, Karl S. Hemmert, Samuel McCauley, Branden Moore, Benjamin Moseley, Cynthia A. Phillips, David S. Resnick, Arun Rodrigues |
J. Parallel Distributed Comput. | 2 |
| 2016 | Anti-Persistence on Persistent Storage: History-Independent Sparse Tables and DictionariesabstractWe present history-independent alternatives to a B-tree, the primary indexing data structure used in databases. A data structure is history independent (HI) if it is impossible to deduce any information by examining the bit representation of the data structure that is not already available through the API. We show how to build a history-independent cache-oblivious B-tree and a history-independent external-memory skip list. One of the main contributions is a data structure we build on the way---a history-independent packed-memory array (PMA). The PMA supports efficient range queries, one of the most important operations for answering database queries. Michael A. Bender, Jonathan W. Berry, Rob Johnson 0001, Tom M. Kroeger, Samuel McCauley, Cynthia A. Phillips, Bertrand Simon 0001, Shikha Singh 0002, David Zage |
PODS | 2 |
| 2015 | Two-Level Main Memory Co-Design: Multi-threaded Algorithmic Primitives, Analysis, and SimulationabstractA fundamental challenge for supercomputer architecture is that processors cannot be fed data from DRAM as fast as CPUs can consume it. Therefore, many applications are memory-bandwidth bound. As the number of cores per chip increases, and traditional DDR DRAM speeds stagnate, the problem is only getting worse. A variety of non-DDR 3D memory technologies (Wide I/O 2, HBM) offer higher bandwidth and lower power by stacking DRAM chips on the processor or nearby on a silicon interposer. However, such a packaging scheme cannot contain sufficient memory capacity for a node. It seems likely that future systems will require at least two levels of main memory: high-bandwidth, low-power memory near the processor and low-bandwidth high-capacity memory further away. This near memory will probably not have significantly faster latency than the far memory. This, combined with the large size of the near memory (multiple GB) and power constraints, may make it difficult to treat it as a standard cache. In this paper, we explore some of the design space for a user-controlled multi-level main memory. We present algorithms designed for the heterogeneous bandwidth, using streaming to exploit data locality. We consider algorithms for the fundamental application of sorting. Our algorithms asymptotically reduce memory-block transfers under certain architectural parameter settings. We use and extend Sandia National Laboratories' SST simulation capability to demonstrate the relationship between increased bandwidth and improved algorithmic performance. Memory access counts from simulations corroborate predicted performance. This co-design effort suggests implementing two-level main memory systems may improve memory performance in fundamental applications. Michael A. Bender, Jonathan W. Berry, Simon D. Hammond, Karl S. Hemmert, Samuel McCauley, Branden Moore, Benjamin Moseley, Cynthia A. Phillips, David S. Resnick, Arun Rodrigues |
IPDPS | 2 |
| 2015 | Cooperative Computing for Autonomous Data CentersabstractWe present a new distributed model for graph computations motivated by limited information sharing. Two or more independent entities have collected large social graphs. They wish to compute the result of running graph algorithms on the entire set of relationships. Because the information is sensitive or economically valuable, they do not wish to simply combine the information in a single location. We consider two models for computing the solution to graph algorithms in this setting: 1) limited-sharing: the two entities can share only a poly logarithmic size subgraph, 2) low-trust: the entities must not reveal any information beyond the query answer, assuming they are all honest but curious. We believe this model captures realistic constraints on cooperating autonomous data centres' have results for both models for s-t connectivity, one of the simplest graph problems that requires global information in the worst case. In the limited-sharing model, our results exploit social network structure. Standard communication complexity gives polynomial lower bounds on s-t connectivity for general graphs. However, if the graph for each data centre has a giant component and these giant components intersect, then we can overcome this lower bound, computing-t connectivity while exchanging O(log ^2 n) bits for a constant number of data centers. We can also test the assumption that the giant components overlap using O(log ^2 n) bits provided the (unknown) overlap is sufficiently large. The second result is in the low trust model. We give a secure multi-party computation (MPC) algorithm that 1) does not make cryptographic assumptions when there are 3 or more entities, and 2) is efficient, especially when compared to the usual garbled circuit approach. The entities learn only the yes/no answer. No party learns anything about the others' graph, not even node names. This algorithm does not require any special graph structure. This secure MPC result for s-t connectivity is one of the first that involves a few parties computing on large inputs, instead of many parties computing on a few local values. Jonathan W. Berry, Michael J. Collins 0003, Aaron Kearns, Cynthia A. Phillips, Jared Saia, Randy Smith |
IPDPS | 1 |
| 2014 | Why do simple algorithms for triangle enumeration work in the real world?abstractTriangle enumeration is a fundamental graph operation. Despite the lack of provably efficient (linear, or slightly super-linear) worst-case algorithms for this problem, practitioners run simple, efficient heuristics to find all triangles in graphs with millions of vertices. How are these heuristics exploiting the structure of these special graphs to provide major speedups in running time? Jonathan W. Berry, Luke Fostvedt, Daniel J. Nordman, Cynthia A. Phillips, Seshadhri Comandur, Alyson G. Wilson |
ITCS | 1 |
| 2009 | Implementing a portable Multi-threaded Graph Library: The MTGL on QthreadsabstractDeveloping multi-threaded graph algorithms, even when using the MTGL infrastructure, provides a number of challenges, including discovering appropriate levels of parallelism, preventing memory hot spotting, and eliminating accidental synchronization. In this paper, we have demonstrated that using the combination of Qthreads and MTGL with commodity processors enables the development and testing of algorithms without the expense and complexity of a Cray XMT. While achievable performance is lower for both the Opteron and Niagara platform, performance issues are similar. While we believe it is possible to port Qthreads to the Cray XMT, this work is still on-going. Therefore, porting work still must be done to move algorithm implementations between commodity processors and the XMT. Although it is likely that the Qthreads-version of an algorithm will not be as optimized as a natively implemented version of the algorithm, such a performance impact may be an acceptable trade-off for ease of implementation. Brian W. Barrett, Jonathan W. Berry, Richard C. Murphy, Kyle B. Wheeler |
IPDPS | 2 |
| 2007 | An Experimental Study of A Parallel Shortest Path Algorithm for Solving Large-Scale Graph InstancesabstractWe present an experimental study of the single source shortest path problem with non-negative edge weights (NSSP) on large-scale graphs using the Δ-stepping parallel algorithm. We report performance results on the Cray MTA-2, a multithreaded parallel computer. The MTA-2 is a high-end shared memory system offering two unique features that aid the efficient parallel implementation of irregular algorithms: the ability to exploit fine-grained parallelism, and low-overhead synchronization primitives. Our implementation exhibits remarkable parallel speedup when compared with competitive sequential algorithms, for low-diameter sparse graphs. For instance, Δ-stepping on a directed scale-free graph of 100 million vertices and 1 billion edges takes less than ten seconds on 40 processors of the MTA-2, with a relative speedup of close to 30. To our knowledge, these are the first performance results of a shortest path problem on realistic graph instances in the order of billions of vertices and edges. Kamesh Madduri, David A. Bader, Jonathan W. Berry, Joseph R. Crobak |
ALENEX | 3 |
| 2007 | Software and Algorithms for Graph Queries on Multithreaded ArchitecturesabstractSearch-based graph queries, such as finding short paths and isomorphic subgraphs, are dominated by memory latency. If input graphs can be partitioned appropriately, large cluster-based computing platforms can run these queries. However, the lack of compute-bound processing at each vertex of the input graph and the constant need to retrieve neighbors implies low processor utilization. Furthermore, graph classes such as scale-free social networks lack the locality to make partitioning clearly effective. Massive multithreading is an alternative architectural paradigm, in which a large shared memory is combined with processors that have extra hardware to support many thread contexts. The processor speed is typically slower than normal, and there is no data cache. Rather than mitigating memory latency, multithreaded machines tolerate it. This paradigm is well aligned with the problem of graph search, as the high ratio of memory requests to computation can be tolerated via multithreading. In this paper, we introduce the multithreaded graph library (MTGL), generic graph query software for processing semantic graphs on multithreaded computers. This library currently runs on serial machines and the Cray MTA-2, but Sandia is developing a run-time system that will make it possible to run MTGL-based code on symmetric multiprocessors. We also introduce a multithreaded algorithm for connected components and a new heuristic for inexact subgraph isomorphism We explore the performance of these and other basic graph algorithms on large scale-free graphs. We conclude with a performance comparison between the Cray MTA-2 and Blue Gene/Light for s-t connectivity. Jonathan W. Berry, Bruce Hendrickson, Simon Kahan, Petr Konecny |
IPDPS | 1 |
| 2007 | Advanced Shortest Paths Algorithms on a Massively-Multithreaded ArchitectureabstractWe present a study of multithreaded implementations of Thorup's algorithm for solving the Single Source Shortest Path (SSSP) problemfor undirected graphs. Our implementations leverage thefledgling MultiThreaded Graph Library (MTGL) to perform operations such as finding connected components and extracting induced subgraphs. To achieve good parallel performance from this algorithm, we deviate from several theoretically optimal algorithmic steps. In this paper; we present simplifications that perform better in practice, and we describe details of the multithreaded implementation that were necessary for scalability. We study synthetic graphs that model unstructured networks, such as social networks and economic transaction networks. Most of the recent progress in shortest path algorithms relies on structure that these networks do not have. In this work, we take a step back and explore the synergy between an elegant theoretical algorithm and an elegant computer architecture. Finally, we conclude with a prediction that this work will become relevant to shortest path computation on structured networks. Joseph R. Crobak, Jonathan W. Berry, Kamesh Madduri, David A. Bader |
IPDPS | 2 |
| 2007 | Analyzing the Scalability of Graph Algorithms on EldoradoabstractThe Cray MTA-2 system provides exceptional performance on a variety of sparse graph algorithms. Unfortunately, it was an extremely expensive platform. Cray is preparing an Eldorado platform that leverages the Cray XT3 network and system infrastructure while integrating a new revision of the MTA-2 processors that is pin compatible with the AMD Opteron socket. Unlike the MTA-2, this platform will have a more constrained network bisection bandwidth and will pay a high penalty for random memory accesses. This work assesses the hardware level scalability of the Eldorado platform on several graph algorithms. Keith D. Underwood, Megan Vance, Jonathan W. Berry, Bruce Hendrickson |
IPDPS | 3 |
| 2006 | Realizing parallelism in database operations: insights from a massively multithreaded architectureabstractA new trend in processor design is increased on-chip support for multithreading in the form of both chip multiprocessors and simultaneous multithreading. Recent research in database systems has begun to explore increased thread-level parallelism made possible by these new multicore and multithreaded processors. The question of how best to use this new technology remains open, particularly as the number of cores per chip and threads per core increase. In this paper we use an existing massively multithreaded architecture, the Cray MTA-2, to explore the implications that a larger degree of on-chip multithreading may have for parallelism in database operations. We find that parallelism in database operations is easy to achieve on the MTA-2 and that, with little effort, parallelism can be made to scale linearly with the number of available processor cores. John Cieslewicz, Jonathan W. Berry, Bruce Hendrickson, Kenneth A. Ross |
DaMoN | 2 |
| 2004 | Scheduling an Industrial Production Facility
Eyjólfur Ingi Ásgeirsson, Jonathan W. Berry, Cynthia A. Phillips, David J. Phillips, Clifford Stein 0001, Joel Wein |
IPCO | 2 |
| 2000 | LINK: a system for graph computationabstractThis paper describes the LINK software system, which provides not only a graph editor and graph library, but a computing environment that employs object-oriented Scheme to provide a flexible workbench for algorithm learners and experimenters. Copyright © 2000 John Wiley & Sons, Ltd. Jonathan W. Berry, Nathaniel Dean, Mark K. Goldberg, Gregory E. Shannon, Steven Skiena |
Softw. Pract. Exp. | 1 |
| 1999 | Path Optimization for Graph Partitioning Problems
Jonathan W. Berry, Mark K. Goldberg |
Discret. Appl. Math. | 1 |
| 1997 | Graph Drawing and Manipulation with LINK
Jonathan W. Berry, Nathaniel Dean, Mark K. Goldberg, Gregory E. Shannon, Steven Skiena |
GD | 1 |
| 1997 | Improving discrete mathematics and algorithms curricula with LINKabstractThis paper introduces the LINK system as an educational tool which can be used to visualize and experiment with discrete algorithms. An extended example demonstrates the flexibility of the system in the context of a fundamental graph algorithm: finding the strongly connected components of a directed graph. Jonathan W. Berry |
ITiCSE | 1 |
| 1995 | Path Optimization and Near-Greedy Analysis for Graph Partitioning: An Empirical Study
Jonathan W. Berry, Mark K. Goldberg |
SODA | 1 |