Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.

John N. Zigman

dblp:187/7247 · DBLP profile ↗
← Back
6ranked-venue papers
0as first author
2since 2021 · last 2025
0000-0002-1975-7308ORCID · verified

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

Systems, architecture and hardware · 4 · 2 since 2021Software engineering, systems software and programming languages · 3 · 1 since 2021

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
3 papers
Memory systems · 58% Performance modeling and evaluation · 27% Storage systems · 15%
Software engineering, system software, and programming languages
3 papers
Runtime systems and virtual machines · 77% Empirical software engineering · 23%

Topics — the 7 heaviest of 9, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Memory systems › hybrid memory
hybrid memory management
0.922021
Unified Holistic Memory Management Supporting Multiple Big Data Processing Frameworks over Hybrid Memories · ACM Trans. Comput. Syst. 2021
Panthera: holistic memory management for big data processing over hybrid memories · PLDI 2019
Performance modeling and evaluation › benchmarking
benchmarking methodology
0.912025
Rethinking Java Performance Analysis · ASPLOS (1) 2025
Runtime systems and virtual machines
garbage collection
0.512021
Unified Holistic Memory Management Supporting Multiple Big Data Processing Frameworks over Hybrid Memories · ACM Trans. Comput. Syst. 2021
Storage systems › data management
data placement and migration
0.512021
Unified Holistic Memory Management Supporting Multiple Big Data Processing Frameworks over Hybrid Memories · ACM Trans. Comput. Syst. 2021
Memory systems
non-volatile memory
0.512021
Unified Holistic Memory Management Supporting Multiple Big Data Processing Frameworks over Hybrid Memories · ACM Trans. Comput. Syst. 2021
Memory systems › non-volatile memory
non-volatile memory management
0.412019
Panthera: holistic memory management for big data processing over hybrid memories · PLDI 2019
Memory systems
in-memory computing
0.112019
Panthera: holistic memory management for big data processing over hybrid memories · PLDI 2019

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

workload analysis · 1.7profiling-guided optimization · 1.0access pattern analysis · 1.0memory management · 0.8garbage collection · 0.8
YearPublicationVenuePosition
2025 Rethinking Java Performance Analysis
abstract
Representative workloads and principled methodologies are the foundation of performance analysis, which in turn provides the empirical grounding for much of the innovation in systems research. However, benchmarks are hard to maintain, methodologies are hard to develop, and our field moves fast. The tension between our fast-moving fields and their need to maintain their methodological foundations is a serious challenge. This paper explores that challenge through the lens of Java performance analysis. Lessons we draw extend to other languages and other fields of computer science.
Steve Blackburn, Zixian Cai, Xi Yang 0021, John N. Zigman
ASPLOS (1)6
2021 Unified Holistic Memory Management Supporting Multiple Big Data Processing Frameworks over Hybrid Memories
abstract
To process real-world datasets, modern data-parallel systems often require extremely large amounts of memory, which are both costly and energy inefficient. Emerging non-volatile memory (NVM) technologies offer high capacity compared to DRAM and low energy compared to SSDs. Hence, NVMs have the potential to fundamentally change the dichotomy between DRAM and durable storage in Big Data processing. However, most Big Data applications are written in managed languages and executed on top of a managed runtime that already performs various dimensions of memory management. Supporting hybrid physical memories adds a new dimension, creating unique challenges in data replacement. This article proposes Panthera, a semantics-aware, fully automated memory management technique for Big Data processing over hybrid memories. Panthera analyzes user programs on a Big Data system to infer their coarse-grained access patterns, which are then passed to the Panthera runtime for efficient data placement and migration. For Big Data applications, the coarse-grained data division information is accurate enough to guide the GC for data layout, which hardly incurs overhead in data monitoring and moving. We implemented Panthera in OpenJDK and Apache Spark. Based on Big Data applications’ memory access pattern, we also implemented a new profiling-guided optimization strategy, which is transparent to applications. With this optimization, our extensive evaluation demonstrates that Panthera reduces energy by 32–53% at less than 1% time overhead on average. To show Panthera’s applicability, we extend it to QuickCached, a pure Java implementation of Memcached. Our evaluation results show that Panthera reduces energy by 28.7% at 5.2% time overhead on average.
Chenxi Wang 0005, John N. Zigman, Haris Volos 0001, Onur Mutlu, Xiaobing Feng 0002, Guoqing Harry Xu, Huimin Cui
ACM Trans. Comput. Syst.5
2019 Panthera: holistic memory management for big data processing over hybrid memories
abstract
Modern data-parallel systems such as Spark rely increasingly on in-memory computing that can significantly improve the efficiency of iterative algorithms. To process real-world datasets, modern data-parallel systems often require extremely large amounts of memory, which are both costly and energy-inefficient. Emerging non-volatile memory (NVM) technologies offers high capacity compared to DRAM and low energy compared to SSDs. Hence, NVMs have the potential to fundamentally change the dichotomy between DRAM and durable storage in Big Data processing. However, most Big Data applications are written in managed languages (e.g., Scala and Java) and executed on top of a managed runtime (e.g., the Java Virtual Machine) that already performs various dimensions of memory management. Supporting hybrid physical memories adds in a new dimension, creating unique challenges in data replacement and migration.
Chenxi Wang 0005, Huimin Cui, John N. Zigman, Haris Volos 0001, Onur Mutlu, Xiaobing Feng 0002, Guoqing Harry Xu
PLDI4
2016 Efficient Management for Hybrid Memory in Managed Language Runtime
Chenxi Wang 0005, John N. Zigman, Yunquan Zhang, Xiaobing Feng 0002
NPC3
2000 Fast portable orthogonally persistent Java
abstract
A powerful feature of the JavaTM programming language is its user-definable class loading policy, which when combined with the namespace independence between class loaders, allows portable implementation of semi-dynamic program transformations. Such transformations can be used for a range of purposes, including optimization and semantic extension. In this paper we present a framework for semantic extensions in Java. This framework consists of a number of simple but powerful transformations that, among other things, allow us to semantically extend Java to provide orthogonal persistence. The use of semi-dynamic program transformations lends our orthogonally persistent Java a number of important qualities, including simplicity, portability and a clean model of persistence. Significantly, our implementations are efficient and can outperform (in some cases) PJamaTM, a well-known orthogonally persistent Java, which is based on a modified virtual machine. In addition to describing the application of these transformations to orthogonally persistent Java, we foreshadow their use in a number of other contexts, including dynamic instance versioning and instrumentation. Copyright © 2000 John Wiley & Sons, Ltd.
Alonso Marquez, John N. Zigman, Steve Blackburn
Softw. Pract. Exp.2
1994 Reducing data communication overhead for DOACROSS loop nests
abstract
If the iterations of a loop nest cannot be partitioned into independent tasks, data communication for data dependence is inevitable in order to execute them on parallel machines. This kind of loop nest is referred to as a DOACROSS loop nest.
Peiyi Tang, John N. Zigman
International Conference on Supercomputing2