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.
? Tutorial for this page

Ian Neal

dblp:223/0804 · DBLP profile ↗
← Back
9ranked-venue papers
3as first author
5since 2021 · last 2025
0000-0001-9721-781XORCID · corroborated

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

Systems, architecture and hardware · 5 · 2 first-author · 2 since 2021Software engineering, systems software and programming languages · 4 · 2 first-author · 3 since 2021Security and privacy · 1 · 1 since 2021Databases, data management, data science and information retrieval · 1 · 1 first-author · 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
9 papers
Storage systems · 56% Memory systems · 27% Processor architecture and microarchitecture · 10%
Software engineering, system software, and programming languages
3 papers
Software testing · 45% Debugging and program repair · 26% Operating systems · 21%
Network and information security
2 papers
Hardware security and side channels · 100%

Topics — the 21 heaviest of 23, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Storage systems
crash consistency
2.552025
Scalable and Accurate Application-Level Crash-Consistency Testing via Representative Testing · Proc. ACM Program. Lang. 2025
Hippocrates: healing persistent memory bugs without doing any harm · ASPLOS 2021
AGAMOTTO: How Persistent is your Persistent Memory Application? · OSDI 2020
Memory systems › non-volatile memory
persistent memory
0.922021
Rethinking File Mapping for Persistent Memory · FAST 2021
AGAMOTTO: How Persistent is your Persistent Memory Application? · OSDI 2020
Processor architecture and microarchitecture
speculative execution
0.922021
DOLMA: Securing Speculation with the Principle of Transient Non-Observability · USENIX Security Symposium 2021
NDA: Preventing Speculative Execution Attacks at Their Source · MICRO 2019
Storage systems › crash consistency
crash consistency testing
0.912025
Scalable and Accurate Application-Level Crash-Consistency Testing via Representative Testing · Proc. ACM Program. Lang. 2025
Storage systems
file systems
0.722019
TxFS: Leveraging File-system Crash Consistency to Provide ACID Transactions · ACM Trans. Storage 2019
TxFS: Leveraging File-System Crash Consistency to Provide ACID Transactions · USENIX ATC 2018
Hardware security and side channels
side-channel attack
0.512021
DOLMA: Securing Speculation with the Principle of Transient Non-Observability · USENIX Security Symposium 2021
Debugging and program repair
automated program repair
0.512021
Hippocrates: healing persistent memory bugs without doing any harm · ASPLOS 2021
Memory systems
cache
0.512021
DMon: Efficient Detection and Correction of Data Locality Problems Using Selective Profiling · OSDI 2021
Memory systems
data locality
0.512021
DMon: Efficient Detection and Correction of Data Locality Problems Using Selective Profiling · OSDI 2021
Memory systems
non-volatile memory
0.512021
Hippocrates: healing persistent memory bugs without doing any harm · ASPLOS 2021
Performance modeling and evaluation
workload characterization
0.512021
DMon: Efficient Detection and Correction of Data Locality Problems Using Selective Profiling · OSDI 2021
Hardware security and side channels
microarchitectural attacks
0.412019
NDA: Preventing Speculative Execution Attacks at Their Source · MICRO 2019
Hardware security and side channels › microarchitectural attacks › transient execution attack
speculative execution attack
0.412019
NDA: Preventing Speculative Execution Attacks at Their Source · MICRO 2019
Storage systems › file systems
journaling file system
0.412019
TxFS: Leveraging File-system Crash Consistency to Provide ACID Transactions · ACM Trans. Storage 2019
Storage systems › file systems
transactional file system
0.412019
TxFS: Leveraging File-system Crash Consistency to Provide ACID Transactions · ACM Trans. Storage 2019
Operating systems › operating system interface
POSIX
0.312025
Scalable and Accurate Application-Level Crash-Consistency Testing via Representative Testing · Proc. ACM Program. Lang. 2025
Storage systems › i/o architecture › i/o subsystem
memory-mapped i/o
0.312025
Scalable and Accurate Application-Level Crash-Consistency Testing via Representative Testing · Proc. ACM Program. Lang. 2025
Transaction processing and concurrency control
ACID transactions
0.222019
TxFS: Leveraging File-system Crash Consistency to Provide ACID Transactions · ACM Trans. Storage 2019
TxFS: Leveraging File-System Crash Consistency to Provide ACID Transactions · USENIX ATC 2018
Program analysis › static analysis
bug detection
0.112021
Hippocrates: healing persistent memory bugs without doing any harm · ASPLOS 2021
Operating systems › resource management › storage management
file systems
0.112021
Rethinking File Mapping for Persistent Memory · FAST 2021
Distributed systems › fault tolerance
resilience
0.112020
AGAMOTTO: How Persistent is your Persistent Memory Application? · OSDI 2020

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

heuristic search · 1.7automated fixing · 1.0state-space pruning · 0.9state space pruning · 0.9journaling · 0.8selective profiling · 0.5persistence testing · 0.4
YearPublicationVenuePosition
2025 Scalable and Accurate Application-Level Crash-Consistency Testing via Representative Testing
abstract
Crash consistency is essential for applications that must persist data. Crash-consistency testing has been commonly applied to find crash-consistency bugs in applications. The crash-state space grows exponentially as the number of operations in the program increases, necessitating techniques for pruning the search space. However, state-of-the-art crash-state space pruning is far from ideal. Some techniques look for known buggy patterns or bound the exploration for efficiency, but they sacrifice coverage and may miss bugs lodged deep within applications. Other techniques eliminate redundancy in the search space by skipping identical crash states, but they still fail to scale to larger applications. In this work, we propose representative testing : a new crash-state space reduction strategy that achieves high scalability and high coverage. Our key observation is that the consistency of crash states is often correlated, even if those crash states are not identical. We build Pathfinder , a crash-consistency testing tool that implements an update behaviors-based heuristic to approximate a small set of representative crash states. We evaluate Pathfinder on POSIX-based and MMIO-based applications, where it finds 18 (7 new) bugs across 8 production-ready systems. Pathfinder scales more effectively to large applications than prior works and finds 4× more bugs in POSIX-based applications and 8× more bugs in MMIO-based applications compared to state-of-the-art systems.
Yile Gu, Ian Neal, Jiexiao Xu, Shaun Christopher Lee, Ayman Said, Musa Haydar, Jacob Van Geffen, Rohan Kadekodi, Andrew Quinn 0001, Baris Kasikci
Proc. ACM Program. Lang.2
2021 Hippocrates: healing persistent memory bugs without doing any harm
abstract
Persistent memory (PM) technologies aim to revolutionize storage systems, providing persistent storage at near-DRAM speeds. Alas, programming PM systems is error-prone, as the misuse or omission of the durability mechanisms (i.e., cache flushes and memory fences) can lead to durability bugs (i.e., unflushed updates in CPU caches that violate crash consistency). PM-specific testing and debugging tools can help developers find these bugs, however even with such tools, fixing durability bugs can be challenging. To determine the reason behind this difficulty, we first study durability bugs and find that although the solution to a durability bug seems simple, the actual reasoning behind the fix can be complicated and time-consuming. Overall, the severity of these bugs coupled with the difficultly of developing fixes for them motivates us to consider automated approaches to fixing durability bugs.
Ian Neal, Andrew Quinn 0001, Baris Kasikci
ASPLOS1
2021 Rethinking File Mapping for Persistent Memory
Ian Neal, Gefei Zuo, Eric Shiple, Tanvir Ahmed Khan 0001, Youngjin Kwon, Simon Peter 0001, Baris Kasikci
FAST1
2021 DMon: Efficient Detection and Correction of Data Locality Problems Using Selective Profiling
Tanvir Ahmed Khan 0001, Ian Neal, Gilles Pokam, Barzan Mozafari, Baris Kasikci
OSDI2
2021 DOLMA: Securing Speculation with the Principle of Transient Non-Observability
Kevin Loughlin, Ian Neal, Jiacheng Ma 0001, Elisa Tsai, Ofir Weisse, Satish Narayanasamy, Baris Kasikci
USENIX Security Symposium2
2020 AGAMOTTO: How Persistent is your Persistent Memory Application?
Ian Neal, Ben Reeves, Benjamin Stoler, Andrew Quinn 0001, Youngjin Kwon, Simon Peter 0001, Baris Kasikci
OSDI1
2019 NDA: Preventing Speculative Execution Attacks at Their Source
abstract
Speculative execution attacks like Meltdown and Spectre work by accessing secret data in wrong-path execution. Secrets are then transmitted and recovered by the attacker via a covert channel. Existing mitigations either require code modifications, address only specific exploit techniques, or block only the cache covert channel. Rather than battling exploit techniques and covert channels one by one, we seek to close off speculative execution attacks at their source. Our key observation is that these attacks require a chain of dependent wrong-path instructions to access and transmit secret data. We propose NDA, a technique to restrict speculative data propagation. NDA breaks the attacks' wrong-path dependence chains while still allowing speculation and dynamic scheduling. We describe a design space of NDA variants that differ in the constraints they place on dynamic scheduling and the classes of speculative execution attacks they prevent. NDA preserves much of the performance advantage of out-of-order execution: on SPEC CPU 2017, NDA variants close 68-96% of the performance gap between in-order and unconstrained (insecure) out-of-order execution.
Ofir Weisse, Ian Neal, Kevin Loughlin, Thomas F. Wenisch, Baris Kasikci
MICRO2
2019 TxFS: Leveraging File-system Crash Consistency to Provide ACID Transactions
abstract
We introduce TxFS, a transactional file system that builds upon a file system’s atomic-update mechanism such as journaling. Though prior work has explored a number of transactional file systems, TxFS has a unique set of properties: a simple API, portability across different hardware, high performance, low complexity (by building on the file-system journal), and full ACID transactions. We port SQLite, OpenLDAP, and Git to use TxFS and experimentally show that TxFS provides strong crash consistency while providing equal or better performance.
Yige Hu, Zhiting Zhu, Ian Neal, Youngjin Kwon, Vijay Chidambaram, Emmett Witchel
ACM Trans. Storage3
2018 TxFS: Leveraging File-System Crash Consistency to Provide ACID Transactions
Yige Hu, Zhiting Zhu, Ian Neal, Youngjin Kwon, Vijay Chidambaram, Emmett Witchel
USENIX ATC3