VLDB 2026 Research / reviewers in the wild / expert
Pin Zhou
dblp:96/4192
· DBLP profile ↗
17ranked-venue papers
5as first author
1since 2021 · last 2025
0000-0002-5047-3637ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 14 · 4 first-authorSecurity and privacy · 4 · 1 first-authorSoftware engineering, systems software and programming languages · 3 · 2 first-authorArtificial intelligence and machine learning · 1 · 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
6 papers |
Processor architecture and microarchitecture · 52% Performance modeling and evaluation · 18% Memory systems · 15% | |
| Software engineering, system software, and programming languages
6 papers |
Program analysis · 36% Concurrent programming · 26% Operating systems · 17% | |
| Network and information security
1 paper |
Systems and software security · 100% |
Topics — the 22 heaviest of 24, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Processor architecture and microarchitecture
debugging support |
0.2 | 3 | 2007 | HARD: Hardware-Assisted Lockset-based Race Detection · HPCA 2007 Efficient and flexible architectural support for dynamic monitoring · ACM Trans. Archit. Code Optim. 2005 iWatcher: Efficient Architectural Support for Software Debugging · ISCA 2004 |
Program analysis › static analysis › bug detection
dynamic bug detection |
0.1 | 2 | 2006 | PathExpander: Architectural Support for Increasing the Path Coverage of Dynamic Bug Detection · MICRO 2006 iWatcher: Efficient Architectural Support for Software Debugging · ISCA 2004 |
Concurrent programming › concurrency bug detection
data race detection |
0.1 | 1 | 2007 | HARD: Hardware-Assisted Lockset-based Race Detection · HPCA 2007 |
Concurrent programming › concurrency bug detection › data race detection
hardware-assisted race detection |
0.1 | 1 | 2007 | HARD: Hardware-Assisted Lockset-based Race Detection · HPCA 2007 |
Processor architecture and microarchitecture › debugging support
race detection hardware |
0.1 | 1 | 2007 | HARD: Hardware-Assisted Lockset-based Race Detection · HPCA 2007 |
Program analysis › static analysis
bug detection |
0.1 | 2 | 2005 | iWatcher: Efficient Architectural Support for Software Debugging · ISCA 2004 Efficient and flexible architectural support for dynamic monitoring · ACM Trans. Archit. Code Optim. 2005 |
Software testing › test coverage
path coverage |
0.1 | 1 | 2006 | PathExpander: Architectural Support for Increasing the Path Coverage of Dynamic Bug Detection · MICRO 2006 |
Performance modeling and evaluation › performance monitoring
hardware-assisted monitoring |
0.1 | 1 | 2005 | Efficient and flexible architectural support for dynamic monitoring · ACM Trans. Archit. Code Optim. 2005 |
Systems and software security › memory safety
memory error detection |
0.0 | 1 | 2004 | AccMon: Automatically Detecting Memory-Related Bugs via Program Counter-Based Invariants · MICRO 2004 |
Systems and software security
memory safety |
0.0 | 1 | 2004 | AccMon: Automatically Detecting Memory-Related Bugs via Program Counter-Based Invariants · MICRO 2004 |
Debugging and program repair
fault localization |
0.0 | 1 | 2004 | AccMon: Automatically Detecting Memory-Related Bugs via Program Counter-Based Invariants · MICRO 2004 |
Operating systems › resource management › memory management
memory allocation |
0.0 | 1 | 2004 | Dynamic tracking of page miss ratio curve for memory management · ASPLOS 2004 |
Operating systems › resource management › memory management
virtual memory |
0.0 | 1 | 2004 | Dynamic tracking of page miss ratio curve for memory management · ASPLOS 2004 |
Performance modeling and evaluation › performance monitoring
hardware monitoring |
0.0 | 1 | 2004 | iWatcher: Efficient Architectural Support for Software Debugging · ISCA 2004 |
Memory systems › memory access
memory access monitoring |
0.0 | 1 | 2004 | iWatcher: Efficient Architectural Support for Software Debugging · ISCA 2004 |
Energy-efficient computing › power management › device power management
memory and disk power management |
0.0 | 1 | 2004 | Performance directed energy management for main memory and disks · ASPLOS 2004 |
Memory systems
memory management |
0.0 | 1 | 2004 | Dynamic tracking of page miss ratio curve for memory management · ASPLOS 2004 |
Parallel and multicore computing › speculative parallelization
thread-level speculation |
0.0 | 2 | 2005 | Efficient and flexible architectural support for dynamic monitoring · ACM Trans. Archit. Code Optim. 2005 iWatcher: Efficient Architectural Support for Software Debugging · ISCA 2004 |
Program analysis
dynamic analysis |
0.0 | 1 | 2007 | HARD: Hardware-Assisted Lockset-based Race Detection · HPCA 2007 |
Processor architecture and microarchitecture
speculative execution |
0.0 | 1 | 2006 | PathExpander: Architectural Support for Increasing the Path Coverage of Dynamic Bug Detection · MICRO 2006 |
Energy-efficient computing › power management
memory power management |
0.0 | 1 | 2004 | Dynamic tracking of page miss ratio curve for memory management · ASPLOS 2004 |
Performance modeling and evaluation
workload characterization |
0.0 | 1 | 2004 | Performance directed energy management for main memory and disks · ASPLOS 2004 |
Methods — techniques the papers use, named apart from their topics
bloom filter · 0.2thread-level speculation · 0.2bitwise logic operations · 0.1sandbox execution · 0.1hardware-assisted checking · 0.1simulation · 0.1program counter invariants · 0.1hardware performance monitor · 0.1check look-aside buffer · 0.1OS-level tracking · 0.1optimization-based threshold-free control · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | Strategic analysis of an ad-supported content platform's subsidy policy: The perspective of the producer's pricing strategies
Pin Zhou |
Decis. Support Syst. | 3 |
| 2016 | Finding Consistency in an Inconsistent World: Towards Deep Semantic Understanding of Scale-out Distributed Databases
Neville Carvalho, Hyojun Kim, Maohua Lu, Prasenjit Sarkar, Rohit Shekhar, Tarun Thakur, Pin Zhou, Remzi H. Arpaci-Dusseau |
HotStorage | 7 |
| 2015 | Improving Reliability with Dynamic Syndrome Allocation in Intelligent Software Defined Data CentersabstractWe propose new algorithms for implementing a software-defined data center (SDDC) to improve the dependability of storage systems without the addition of new hardware. We define the construction of a system that can predict its future resource requirements and act on these predictions to allocate overprovisioned resources to improve reliability. We introduce algorithms for implementing a smart SDDC (SSDDC) that characterizes user I/O transactions (writes and deletes), and use these models to predict the level of overprovisioning within a system, overbooking excess resources to improve reliability, while mitigating the impact on quality of service. We compare several implementations of our methods experimentally, and discuss methods for improving the fault-tolerance of our S2DDC, present experimental results showcasing our ability to improve system reliability showing the decrease in expected annual block loss due to disk failures and latent sector errors, and highlight the benefit of dependence based usage models in estimating overprovisioning. Ulya Bayram, Dwight Divine, Pin Zhou, Eric William Davis |
DSN | 3 |
| 2014 | Taming IO Spikes in Enterprise and Campus VM DeploymentabstractEnterprises and campuses have widely employed virtualization to improve resource utilization and save capital costs. The virtualized storage infrastructure usually comprises a pool of storage nodes (disks, RAID groups and storage servers), each consolidating a number of virtual machines (VMs). The IO workload on each storage node is highly bursty where a few overloaded periods, namely IO spikes, incur lags and greatly affect VM performance. In this paper, we design VMpart, a system that automatically reconfigures VM deployment to remove IO spikes from a deployed VM environment. Firstly, VMpart collects IO parameters and identifies IO spikes for deployed VMs during production periods. Secondly, during the maintenance phase, VMpart divides every VM based on its disk partitions and reconfigures the system with a fine-grained optimized partition deployment for better load balancing. We set up a representative VM environment with desktop and server VMs used in enterprises and campuses to evaluate VMpart. Our experiments show that the optimized deployment reduces the average booting time of desktop VMs during boot storm from 9% to 28%, improves server VM throughput by more than 60% and reduces VM storage migration time by about 57%. Mingyuan Xia 0001, Pin Zhou, David Pease, Xue (Steve) Liu |
SYSTOR | 2 |
| 2013 | SMIO: I/O similarity aware virtual machine management invirtual desktop environmentsabstractVirtual desktop environments (VDEs) typically employ shared storage with the goal to benefit from the I/O optimizations therein. However, the Virtual Machine (VM) management that enables VDEs is typically agnostic of VM I/O characteristics. Thus, the opportunities for I/O reduction techniques, e.g., deduplication, which improve storage scalability and efficiency are constrained. We present SMIO, a VM management system that detects VM I/O similarities, and places the VMs such that the effectiveness of I/O reduction techniques is enhanced--as much as 4.9× compared to the standard approach. Sushil Mantri, Pin Zhou, Ali Raza Butt |
ICS | 3 |
| 2013 | Building intelligence for software defined data centers: modeling usage patternsabstractAs both the amount of data to be stored and the rate of data production grows, data center designers and operators face the challenge of planning and managing systems whose characteristics, workloads, and performance, availability, and reliability goals change rapidly. As we move towards software-defined data centers (SDDCs) the ability to reconfigure and adapt our solutions is increasing, but to take full advantage of that increase we must design smarter, more intelligent systems that are aware of how they are being used and able to deliver accurate predictions of their characteristics, workloads, and goals. In this paper we propose a novel algorithm for use in an intelligent, user-aware SDDC which performs run-time analysis of user storage system activity in a manner that has a minimal impact on performance and provides accurate estimations of future user activity. Eric William Davis, Pin Zhou, Dwight Divine |
SYSTOR | 2 |
| 2011 | Modeling the Fault Tolerance Consequences of DeduplicationabstractModern storage systems are employing data deduplication with increasing frequency. Often the storage systems on which these techniques are deployed contain important data, and utilize fault-tolerant hardware and software to improve the reliability of the system and reduce data loss. We suggest that data deduplication introduces inter-file relationships that may have a negative impact on the fault tolerance of such systems by creating dependencies that can increase the severity of data loss events. We present a framework composed of data analysis methods and a model of data deduplication that is useful in studying the reliability impact of data deduplication. The framework is useful for determining a deduplication strategy that is estimated to satisfy a set of reliability constraints supplied by a user. Eric William Davis, William H. Sanders, Pin Zhou, NagaPramod Mandagere, Sandeep Uttamchandani, Mark L. Yakushev |
SRDS | 3 |
| 2010 | GAUL: Gestalt Analysis of Unstructured Logs for Diagnosing Recurring Problems in Large Enterprise Storage SystemsabstractWe present GAUL, a system to automate the whole log comparison between a new problem and the ones diagnosed in the past to identify recurring problems. GAUL uses a fuzzy match algorithm based on the contextual overlap between log lines and efficiently implements this using scalable index/search. The accuracy and efficiency of the comparison is further improved by leveraging problem set information and noise tolerance techniques. We evaluate GAUL using 4339 customer problems that occurred in all field deployments of an enterprise storage system over the course of a year. Our results show that with human-filtered logs, GAUL can identify the correct problem set 66% of the time among the top10 matches, which is 15% more accurate than the VSM system that uses cosine similarity and 19% more accurate than the ERRCMP system that uses error codes for log comparison. With unfiltered logs, the top10 match accuracy of GAUL is 40%, which is 22% more accurate than VSM and 26% more accurate than ERRCMP. Pin Zhou, Binny S. Gill, Wendy Belluomini, Avani Wildani |
SRDS | 1 |
| 2009 | Evaluating the impact of Undetected Disk Errors in RAID systemsabstractDespite the reliability of modern disks, recent studies have made it clear that a new class of faults, UndetectedDisk Errors (UDEs) also known as silent data corruption events, become a real challenge as storage capacity scales. While RAID systems have proven effective in protecting data from traditional disk failures, silent data corruption events remain a significant problem unaddressed by RAID. We present a fault model for UDEs, and a hybrid framework for simulating UDEs in large-scale systems. The framework combines a multi-resolution discrete event simulator with numerical solvers. Our implementation enables us to model arbitrary storage systems and workloads and estimate the rate of undetected data corruptions. We present results for several systems and workloads, from gigascale to petascale. These results indicate that corruption from UDEs is a significant problem in the absence of protection schemes and that such schemes dramatically decrease the rate of undetected data corruption. Eric William Davis, Wendy Belluomini, Veera Deenadhayalan, James Lee Hafner, K. K. Rao, Pin Zhou |
DSN | 6 |
| 2007 | HARD: Hardware-Assisted Lockset-based Race DetectionabstractThe emergence of multicore architectures will lead to an increase in the use of multithreaded applications that are prone to synchronization bugs, such as data races. Software solutions for detecting data races generally incur large overheads. Hardware support for race detection can significantly reduce that overhead. However, all existing hardware proposals for race detection are based on the happens-before algorithm which is sensitive to thread interleaving and cannot detect races that are not exposed during the monitored run. The lockset algorithm addresses this limitation. Unfortunately, due to the challenging issues such as storing the lockset information and performing complex set operations, so far it has been implemented only in software with 10-30 times performance hit. This paper proposes the first hardware implementation (called HARD) of the lockset algorithm to exploit the race detection capability of this algorithm with minimal overhead. HARD efficiently stores lock sets in hardware bloom filters and converts the expensive set operations into fast bitwise logic operations with negligible overhead. We evaluate HARD using six SPLASH-2 applications with 60 randomly injected bugs. Our results show that HARD can detect 54 out of 60 tested bugs, 20% more than happens-before, with only 0.1-2.6% of execution overhead. We also show our hardware design is cost-effective by comparing with the ideal lockset implementation, which would require a large amount of hardware resources Pin Zhou, Radu Teodorescu |
HPCA | 1 |
| 2006 | PathExpander: Architectural Support for Increasing the Path Coverage of Dynamic Bug DetectionabstractDynamic software bug detection tools are commonly used because they leverage run-time information. However, they suffer from a fundamental limitation, the path coverage problem: they detect bugs only in taken paths but not in non-taken paths. In other words, they require bugs to be exposed in the monitored execution. This paper makes one of the first attempts to address this fundamental problem with a simple hardware extension. First, we propose PathExpander, a novel design that dynamically increases the code path coverage of dynamic bug detection tools with no programmer involvement. As a program executes, PathExpander selectively executes non-taken paths in a sandbox without side effects. This enables dynamic bug detection tools to find bugs that are present in these non-taken paths and would otherwise not be detected. Second, we propose a simple hardware extension to control the huge overhead in its pure software implementation to a moderate level. To further minimize overhead, PathExpander provides an optimization option to execute non-taken paths on idle cores in chip multi-processor architectures that support speculative execution. To evaluate PathExpander, we use three dynamic bug detection methods: dynamic software-only checker (CCured), dynamic hardware-assisted checker (iWatcher) and assertions; and conduct side-by-side comparison with PathExpander's counterpart software implementation. Our experiments with seven buggy programs using general inputs that do not expose the tested bugs show that PathExpander is able to help these tools detect 21 (out of 38) tested bugs that are otherwise missed. This is because PathExpander increases the code coverage of each test case from 40% to 65% on average, based on the branch coverage metric. When applications are tested with multiple inputs, the cumulative coverage also significantly improves by 19%. We also show that PathExpander introduces modest false positives (4 on average) and overhead (less than 9.9%). The 3-4 orders of magnitude lower overhead compared with pure-software implementation further justifies the hardware design in PathExpander Shan Lu 0001, Pin Zhou, Wei Liu 0014, Yuanyuan Zhou 0001, Josep Torrellas |
MICRO | 2 |
| 2005 | Efficient and flexible architectural support for dynamic monitoringabstractRecent impressive performance improvements in computer architecture have not led to significant gains in the case of debugging. Software debugging often relies on inserting run-time software checks. In many cases, however, it is hard to find the root cause of a bug. Moreover, program execution typically slows down significantly, often by 10--100 times.To address this problem, this paper introduces the intelligent watcher (iWatcher) , a novel architectural scheme to monitor dynamic execution automatically, flexibly, and with minimal overhead. iWatcher associates program-specified monitoring functions with memory locations. When any such location is accessed, the monitoring function is automatically triggered with low overhead. To further reduce overhead and support rollback, iWatcher can optionally leverage thread-level speculation (TLS). The iWatcher architecture can be used to detect various bugs, including buffer overflow, accessing freed locations, memory leaks, stack-smashing and value-invariant violations. To evaluate iWatcher, we use seven applications with various real and injected bugs. Our results show that iWatcher detects many more software bugs than Valgrind, a well-known open-source bug detector. Moreover, iWatcher only induces a 0.1--179% execution overhead, which is orders of magnitude less than Valgrind. Our sensitivity study shows that even with 20% of the dynamic loads monitored in a program, iWatcher adds only 72--182% overhead. Finally, TLS is effective at reducing overheads for programs with substantial monitoring. Yuanyuan Zhou 0001, Pin Zhou, Feng Qin 0003, Wei Liu 0014, Josep Torrellas |
ACM Trans. Archit. Code Optim. | 2 |
| 2004 | Performance directed energy management for main memory and disksabstractMuch research has been conducted on energy management for memory and disks. Most studies use control algorithms that dynamically transition devices to low power modes after they are idle for a certain threshold period of time. The control algorithms used in the past have two major limitations. First, they require painstaking, application-dependent manual tuning of their thresholds to achieve energy savings without significantly degrading performance. Second, they do not provide performance guarantees. In one case, they slowed down an application by 835.This paper addresses these two limitations for both memory and disks, making memory/disk energy-saving schemes practical enough to use in real systems. Specifically, we make three contributions: (1) We propose a technique that provides a performance guarantee for control algorithms. We show that our method works well for all tested cases, even with previously proposed algorithms that are not performance-aware. (2) We propose a new control algorithm, Performance-directed Dynamic (PD), that dynamically adjusts its thresholds periodically, based on available slack and recent workload characteristics. For memory, PD consumes the least energy, when compared to previous hand-tuned algorithms combined with a performance guarantee. However, for disks, PD is too complex and its self-tuning is unable to beat previous hand-tuned algorithms. (3) To improve on PD, we propose a simple, optimization-based, threshold-free control algorithm, Performance-directed Static (PS). PS periodically assigns a static configuration by solving an optimization problem that incorporates information about the available slack and recent traffic variability to different chips/disks. We find that PS is the best or close to the best across all performanceguaranteed disk algorithms, including hand-tuned versions. Zhenmin Li, Francis M. David, Pin Zhou, Yuanyuan Zhou 0001, Sarita V. Adve |
ASPLOS | 4 |
| 2004 | Dynamic tracking of page miss ratio curve for memory managementabstractMemory can be efficiently utilized if the dynamic memory demands of applications can be determined and analyzed at run-time. The page miss ratio curve(MRC), i.e. page miss rate vs. memory size curve, is a good performance-directed metric to serve this purpose. However, dynamically tracking MRC at run time is challenging in systems with virtual memory because not every memory reference passes through the operating system (OS).This paper proposes two methods to dynamically track MRC of applications at run time. The first method is using a hardware MRC monitor that can track MRC at fine time granularity. Our simulation results show that this monitor has negligible performance and energy overheads. The second method is an OS-only implementation that can track MRC at coarse time granularity. Our implementation results on Linux show that it adds only 7--10% overhead.We have also used the dynamic MRC to guide both memory allocation for multiprogramming systems and memory energy management. Our real system experiments on Linux with applications including Apache Web Server show that the MRC-directed memory allocation can speed up the applications' execution/response time by up to a factor of 5.86 and reduce the number of page faults by up to 63.1%. Our execution-driven simulation results with SPEC2000 benchmarks show that the MRC-directed memory energy management can improve the Energy * Delay metric by 27--58% over previously proposed static and dynamic schemes. Pin Zhou, Vivek Pandey, Jagadeesan Sundaresan, Anand Raghuraman |
ASPLOS | 1 |
| 2004 | iWatcher: Efficient Architectural Support for Software DebuggingabstractRecent impressive performance improvements in computer architecture have not led to significant gains in ease of debugging. Software debugging often relies on inserting run-time software checks. In many cases, however, it is hard to find the root cause of a bug. Moreover, program execution typically slows down significantly, often by 10-100 times. To address this problem, this paper introduces the Intelligent Watcher (iWatcher), novel architectural support to monitor dynamic execution with minimal overhead, automatically, and flexibly. iWatcher associates program-specified monitoring functions with memory locations. When any such location is accessed, the monitoring function is automatically triggered with low overhead. To further reduce overhead and support rollback, iWatcher can leverage Thread-Level Speculation (TLS). To test iWatcher, we use applications with various bugs. Our results show that iWatcher detects many more software bugs than Valgrind, a well-known open-source bug detector. Moreover, iWatcher only induces a 4-80% execution overhead, which is orders of magnitude less than Valgrind. Even with 20% of the dynamic loads monitored in a program, iWatcher adds only 66-174% overhead. Finally, TLS is effective at reducing overheads for programs with substantial monitoring. Pin Zhou, Feng Qin 0003, Wei Liu 0014, Yuanyuan Zhou 0001, Josep Torrellas |
ISCA | 1 |
| 2004 | AccMon: Automatically Detecting Memory-Related Bugs via Program Counter-Based InvariantsabstractThis paper makes two contributions to architectural support for software debugging. First, it proposes a novel statistics-based, on-the-fly bug detection method called PC-based invariant detection. The idea is based on the observation that, in most programs, a given memory location is typically accessed by only a few instructions. Therefore, by capturing the invariant of the set of PCs that normally access a given variable, we can detect accesses by outlier instructions, which are often caused by memory corruption, buffer overflow, stack smashing or other memory-related bugs. Since this method is statistics-based, it can detect bugs that do not violate any programming rules and that, therefore, are likely to be missed by many existing tools. The second contribution is a novel architectural extension called the Check Look-aside Buffer (CLB). The CLB uses a Bloom filter to reduce monitoring overheads in the recently-proposed iWatcher architectural framework for software debugging. The CLB significantly reduces the overhead of PC-based invariant debugging. We demonstrate a PC-based invariant detection tool called AccMon that leverages architectural, run-time system and compiler support. Our experimental results with seven buggy applications and a total of ten bugs, show that AccMon can detect all ten bugs with few false alarms (0 for five applications and 2-8 for two applications) and with low overhead (0.24-2.88 times). Several existing tools evaluated, including Purify, CCured and value-based invariant detection tools, fail to detect some of the bugs. In addition, Purify's overhead is one order of magnitude higher than AccMon's. Finally, we show that the CLB is very effective at reducing overhead. Pin Zhou, Wei Liu 0014, Long Fei, Shan Lu 0001, Feng Qin 0003, Yuanyuan Zhou 0001, Samuel P. Midkiff, Josep Torrellas |
MICRO | 1 |
| 2003 | Fragmentation based D-MAC Protocol in Wireless Ad Hoc NetworkabstractDirectional antennas have been recently suggested to be used in wireless ad hoc networks to reduce interference outside the antenna direction and to increase spatial reuse of wireless channels. Several MAC schemes that exploit directional antennas have been proposed, among which the two D-MAC schemes proposed in [5] may have received the most attention. In this paper, we carefully analyze how the second D-MAC scheme proposed in [5] operates in the hidden/exposed terminal scenarios and show that it not only introduces new collisions, but also reduces spatial reuse to some extent. To remedy these problems, we propose an enhanced version of the second D-MAC scheme, called fragmentation based D-MAC (FD-MAC), to reduce collision, to achieve better spatial reuse (than the second D-MAC scheme), and to improve fairness. Through ns-2 simulation, we demonstrate the effectiveness of FD-MAC, and in particular, we show that in complex scenarios such as multihop forwarding and mesh topologies, FD-MAC significantly outperforms DCF with RTS/CTS and the two D-MAC schemes, both in terms of throughput and fairness. Zhenmin Li, Pin Zhou, Jennifer C. Hou |
ICDCS | 2 |