Ed Nightingale

dblp:97/1336 · also Edmund B. Nightingale · DBLP profile ↗
← Back
23ranked-venue papers
9as first author
1since 2021 · last 2024
—ORCID · none

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

Systems, architecture and hardware · 10 · 4 first-author · 1 since 2021Software engineering, systems software and programming languages · 9 · 6 first-authorComputer networks · 6Databases, data management, data science and information retrieval · 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
Storage systems · 30% Distributed systems · 18% Memory systems · 15%
Software engineering, system software, and programming languages
8 papers
Operating systems · 68% Concurrent programming · 27% Compilers and program optimization · 4%
Computer networks
2 papers
Routing and switching · 50% Internet architecture and protocols · 25% Internet of things and sensor networks · 24%

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

TopicWeightPapersLastEvidence papers
Storage systems
file systems
0.352010
quFiles: The right file at the right time · ACM Trans. Storage 2010
quFiles: The Right File at the Right Time · FAST 2010
Speculative execution in a distributed file system · SOSP 2005
Distributed systems › distributed database
distributed transactions
0.212015
No compromises: distributed transactions with consistency, availability, and performance · SOSP 2015
Interconnection networks and networks-on-chip › remote direct memory access
RDMA-based replication
0.212015
No compromises: distributed transactions with consistency, availability, and performance · SOSP 2015
Distributed systems › replication › replication and fault tolerance
replication and recovery
0.212015
No compromises: distributed transactions with consistency, availability, and performance · SOSP 2015
Memory systems
non-volatile memory
0.222010
Dynamically replicated memory: building reliable systems from nanoscale resistive memories · ASPLOS 2010
Better I/O through byte-addressable, persistent memory · SOSP 2009
Storage systems › storage architecture › block storage
cloud block storage
0.212014
Blizzard: Fast, Cloud-scale Block Storage for Cloud-oblivious Applications · NSDI 2014
Storage systems › file systems
distributed file system
0.232007
Sprockets: Safe Extensions for Distributed File Systems · USENIX ATC 2007
Speculative execution in a distributed file system · ACM Trans. Comput. Syst. 2006
Speculative execution in a distributed file system · SOSP 2005
Processor architecture and microarchitecture
speculative execution
0.122008
Parallelizing security checks on commodity hardware · ASPLOS 2008
Speculative execution in a distributed file system · ACM Trans. Comput. Syst. 2006
Cloud and datacenter computing
datacenter storage
0.112012
Flat Datacenter Storage · OSDI 2012
Hardware reliability and fault tolerance
soft errors
0.112011
Cycles, cells and platters: an empirical analysisof hardware failures on a million consumer PCs · EuroSys 2011
Concurrent programming
speculative execution
0.122006
Speculative execution in a distributed file system · ACM Trans. Comput. Syst. 2006
Speculative execution in a distributed file system · SOSP 2005
Operating systems › resource management › storage management
file systems
0.112010
quFiles: The Right File at the Right Time · FAST 2010
Hardware reliability and fault tolerance
memory reliability
0.112010
Dynamically replicated memory: building reliable systems from nanoscale resistive memories · ASPLOS 2010
Memory systems › non-volatile memory
phase change memory
0.112010
Dynamically replicated memory: building reliable systems from nanoscale resistive memories · ASPLOS 2010
Memory systems › non-volatile memory
resistive memory
0.112010
Dynamically replicated memory: building reliable systems from nanoscale resistive memories · ASPLOS 2010
Energy-efficient computing
power management
0.132004
Ghosts in the Machine: Interfaces for Better Power Management (Awarded Best Paper!) · MobiSys 2004
Self-tuning wireless network power management · MobiCom 2003
Energy-Efficiency and Storage Flexibility in the Blue File System · OSDI 2004
Distributed systems
consensus
0.112009
Tolerating Latency in Replicated State Machines Through Client Speculation · NSDI 2009
Processor architecture and microarchitecture
memory latency tolerance
0.112009
Tolerating Latency in Replicated State Machines Through Client Speculation · NSDI 2009
Memory systems › non-volatile memory
persistent memory
0.112009
Better I/O through byte-addressable, persistent memory · SOSP 2009
Storage systems › non-volatile memory storage
persistent memory systems
0.112009
Better I/O through byte-addressable, persistent memory · SOSP 2009
Distributed systems
replication
0.112009
Tolerating Latency in Replicated State Machines Through Client Speculation · NSDI 2009
Distributed systems › replication
state machine replication
0.112009
Tolerating Latency in Replicated State Machines Through Client Speculation · NSDI 2009
Storage systems › file systems
file system i/o
0.112008
Rethink the sync · ACM Trans. Comput. Syst. 2008
Parallel and multicore computing
speculative parallelization
0.112008
Parallelizing security checks on commodity hardware · ASPLOS 2008
Embedded and real-time systems › mobile computing
wearable computing
0.112015
WearDrive: Fast and Energy-Efficient Storage for Wearables · USENIX ATC 2015
Internet architecture and protocols › overlay networks › peer-to-peer routing
DHT-based routing
0.112006
Virtual ring routing: network routing inspired by DHTs · SIGCOMM 2006
Routing and switching
routing
0.112006
Virtual ring routing: network routing inspired by DHTs · SIGCOMM 2006
Routing and switching
wireless routing
0.112006
Virtual ring routing: network routing inspired by DHTs · SIGCOMM 2006
Operating systems › fault tolerance
checkpoint and rollback
0.112006
Speculative execution in a distributed file system · ACM Trans. Comput. Syst. 2006
Concurrent programming
synchronization
0.112006
Rethink the Sync (Awarded Best Paper!) · OSDI 2006

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

speculative execution · 0.3checkpointing · 0.2policy-based representation selection · 0.2RDMA · 0.2process-level replay · 0.2performance measurement · 0.2flat datacenter storage · 0.1large-scale empirical analysis · 0.1write management · 0.1dynamic replication · 0.1affinity metric · 0.1virtual rings · 0.1sync · 0.1distributed hash table · 0.1proactive power management · 0.0ghost hints · 0.0linux kernel module · 0.0
YearPublicationVenuePosition
2024 Introduction to the Special Section on USENIX OSDI 2023
abstract
This special section of the IEEE Transactions on Visualization and Computer Graphics (IEEE TVCG) presents the five most highly rated papers from the 2023 IEEE Pacific Visualization Symposium (IEEE PacificVis), hosted in Seoul, Korea from ...
Roxana Geambasu, Ed Nightingale
ACM Trans. Storage2
2015 No compromises: distributed transactions with consistency, availability, and performance
abstract
Transactions with strong consistency and high availability simplify building and reasoning about distributed systems. However, previous implementations performed poorly. This forced system designers to avoid transactions completely, to weaken consistency guarantees, or to provide single-machine transactions that require programmers to partition their data. In this paper, we show that there is no need to compromise in modern data centers. We show that a main memory distributed computing platform called FaRM can provide distributed transactions with strict serializability, high performance, durability, and high availability. FaRM achieves a peak throughput of 140 million TATP transactions per second on 90 machines with a 4.9 TB database, and it recovers from a failure in less than 50 ms. Key to achieving these results was the design of new transaction, replication, and recovery protocols from first principles to leverage commodity networks with RDMA and a new, inexpensive approach to providing non-volatile DRAM.
Aleksandar Dragojevic, Dushyanth Narayanan, Ed Nightingale, Matthew Renzelmann, Alex Shamis, Anirudh Badam, Miguel Castro 0001
SOSP3
2015 WearDrive: Fast and Energy-Efficient Storage for Wearables
Jian Huang 0006, Anirudh Badam, Ranveer Chandra, Ed Nightingale
USENIX ATC4
2014 Blizzard: Fast, Cloud-scale Block Storage for Cloud-oblivious Applications
James W. Mickens, Ed Nightingale, Jeremy Elson, Darren Gehring, Asim Kadav, Vijay Chidambaram, Krishna Nareddy
NSDI2
2012 Flat Datacenter Storage
Ed Nightingale, Jeremy Elson, Jinliang Fan, Owen S. Hofmann, Jon Howell, Yutaka Suzue
OSDI1
2011 Cycles, cells and platters: an empirical analysisof hardware failures on a million consumer PCs
abstract
We present the first large-scale analysis of hardware failure rates on a million consumer PCs. We find that many failures are neither transient nor independent. Instead, a large portion of hardware induced failures are recurrent: a machine that crashes from a fault in hardware is up to two orders of magnitude more likely to crash a second time. For example, machines with at least 30 days of accumulated CPU time over an 8 month period had a 1 in 190 chance of crashing due to a CPU subsystem fault. Further, machines that crashed once had a probability of 1 in 3.3 of crashing a second time. Our study examines failures due to faults within the CPU, DRAM and disk subsystems. Our analysis spans desktops and laptops, CPU vendor, overclocking, underclocking, generic vs. brand name, and characteristics such as machine speed and calendar age. Among our many results, we find that CPU fault rates are correlated with the number of cycles executed, underclocked machines are significantly more reliable than machines running at their rated speed, and laptops are more reliable than desktops.
Ed Nightingale, John R. Douceur, Vince R. Orgovan
EuroSys1
2010 Dynamically replicated memory: building reliable systems from nanoscale resistive memories
abstract
DRAM is facing severe scalability challenges in sub-45nm tech- nology nodes due to precise charge placement and sensing hur- dles in deep-submicron geometries. Resistive memories, such as phase-change memory (PCM), already scale well beyond DRAM and are a promising DRAM replacement. Unfortunately, PCM is write-limited, and current approaches to managing writes must de- commission pages of PCM when the first bit fails.
Engin Ipek, Jeremy Condit, Ed Nightingale, Doug Burger, Thomas Moscibroda
ASPLOS3
2010 quFiles: The Right File at the Right Time
Kaushik Veeraraghavan, Jason Flinn, Ed Nightingale, Brian D. Noble
FAST3
2010 quFiles: The right file at the right time
abstract
A quFile is a unifying abstraction that simplifies data management by encapsulating different physical representations of the same logical data. Similar to a quBit (quantum bit), the particular representation of the logical data displayed by a quFile is not determined until the moment it is needed. The representation returned by a quFile is specified by a data-specific policy that can take context into account such as the application requesting the data, the device on which data is accessed, screen size, and battery status. We demonstrate the generality of the quFile abstraction by using it to implement six case studies: resource management, copy-on-write versioning, data redaction, resource-aware directories, application-aware adaptation, and platform-specific encoding. Most quFile policies were expressed using less than one hundred lines of code. Our experimental results show that, with caching and other performance optimizations, quFiles add less than 1% overhead to application-level file system.
Kaushik Veeraraghavan, Jason Flinn, Ed Nightingale, Brian D. Noble
ACM Trans. Storage3
2009 Tolerating Latency in Replicated State Machines Through Client Speculation
Benjamin Wester, James A. Cowling, Ed Nightingale, Peter M. Chen, Jason Flinn, Barbara Liskov
NSDI3
2009 Better I/O through byte-addressable, persistent memory
abstract
Modern computer systems have been built around the assumption that persistent storage is accessed via a slow, block-based interface. However, new byte-addressable, persistent memory technologies such as phase change memory (PCM) offer fast, fine-grained access to persistent storage.
Jeremy Condit, Ed Nightingale, Christopher Frost 0001, Engin Ipek, Benjamin C. Lee, Doug Burger, Derrick Coetzee
SOSP2
2009 Helios: heterogeneous multiprocessing with satellite kernels
abstract
Helios is an operating system designed to simplify the task of writing, deploying, and tuning applications for heterogeneous platforms. Helios introduces satellite kernels, which export a single, uniform set of OS abstractions across CPUs of disparate architectures and performance characteristics. Access to I/O services such as file systems are made transparent via remote message passing, which extends a standard microkernel message-passing abstraction to a satellite kernel infrastructure. Helios retargets applications to available ISAs by compiling from an intermediate language. To simplify deploying and tuning application performance, Helios exposes an affinity metric to developers. Affinity provides a hint to the operating system about whether a process would benefit from executing on the same platform as a service it depends upon.
Ed Nightingale, Orion Hodson, Ross McIlroy, Chris Hawblitzel, Galen C. Hunt
SOSP1
2008 Parallelizing security checks on commodity hardware
abstract
Speck (Speculative Parallel Check) is a system thataccelerates powerful security checks on commodity hardware by executing them in parallel on multiple cores. Speck provides an infrastructure that allows sequential invocations of a particular security check to run in parallel without sacrificing the safety of the system. Speck creates parallelism in two ways. First, Speck decouples a security check from an application by continuing the application, using speculative execution, while the security check executes in parallel on another core. Second, Speck creates parallelism between sequential invocations of a security check by running later checks in parallel with earlier ones. Speck provides a process-level replay system to deterministically and efficiently synchronize state between a security check and the original process.We use Speck to parallelize three security checks: sensitive data analysis, on-access virus scanning, and taint propagation. Running on a 4-core and an 8-core computer, Speck improves performance 4x and 7.5x for the sensitive data analysis check, 3.3x and 2.8x for theon-access virus scanning check, and 1.6x and 2x for the taint propagation check.
Ed Nightingale, Daniel Peek, Peter M. Chen, Jason Flinn
ASPLOS1
2008 Rethink the sync
abstract
We introduce external synchrony , a new model for local file I/O that provides the reliability and simplicity of synchronous I/O, yet also closely approximates the performance of asynchronous I/O. An external observer cannot distinguish the output of a computer with an externally synchronous file system from the output of a computer with a synchronous file system. No application modification is required to use an externally synchronous file system. In fact, application developers can program to the simpler synchronous I/O abstraction and still receive excellent performance. We have implemented an externally synchronous file system for Linux, called xsyncfs. Xsyncfs provides the same durability and ordering-guarantees as those provided by a synchronously mounted ext3 file system. Yet even for I/O-intensive benchmarks, xsyncfs performance is within 7% of ext3 mounted asynchronously . Compared to ext3 mounted synchronously, xsyncfs is up to two orders of magnitude faster.
Ed Nightingale, Kaushik Veeraraghavan, Peter M. Chen, Jason Flinn
ACM Trans. Comput. Syst.1
2007 Sprockets: Safe Extensions for Distributed File Systems
Daniel Peek, Ed Nightingale, Brett D. Higgins, Puspesh Kumar, Jason Flinn
USENIX ATC2
2006 Rethink the Sync (Awarded Best Paper!)
Ed Nightingale, Kaushik Veeraraghavan, Peter M. Chen, Jason Flinn
OSDI1
2006 Virtual ring routing: network routing inspired by DHTs
abstract
This paper presents Virtual Ring Routing (VRR), a new network routing protocol that occupies a unique point in the design space. VRR is inspired by overlay routing algorithms in Distributed Hash Tables (DHTs) but it does not rely on an underlying network routing protocol. It is implemented directly on top of the link layer. VRR provides both raditional point-to-point network routing and DHT routing to the node responsible for a hash table key.VRR can be used with any link layer technology but this paper describes a design and several implementations of VRR that are tuned for wireless networks. We evaluate the performance of VRR using simulations and measurements from a sensor network and an 802.11a testbed. The experimental results show that VRR provides robust performance across a wide range of environments and workloads. It performs comparably to, or better than, the best wireless routing protocol in each experiment. VRR performs well because of its unique features: it does not require network flooding or trans-lation between fixed identifiers and location-dependent addresses.
Matthew Caesar 0001, Miguel Castro 0001, Ed Nightingale, Greg O'Shea, Antony I. T. Rowstron
SIGCOMM3
2006 Speculative execution in a distributed file system
abstract
Speculator provides Linux kernel support for speculative execution. It allows multiple processes to share speculative state by tracking causal dependencies propagated through interprocess communication. It guarantees correct execution by preventing speculative processes from externalizing output, for example, sending a network message or writing to the screen, until the speculations on which that output depends have proven to be correct. Speculator improves the performance of distributed file systems by masking I/O latency and increasing I/O throughput. Rather than block during a remote operation, a file system predicts the operation's result, then uses Speculator to checkpoint the state of the calling process and speculatively continue its execution based on the predicted result. If the prediction is correct, the checkpoint is discarded; if it is incorrect, the calling process is restored to the checkpoint, and the operation is retried. We have modified the client, server, and network protocol of two distributed file systems to use Speculator. For PostMark and Andrew-style benchmarks, speculative execution results in a factor of 2 performance improvement for NFS over local area networks and an order of magnitude improvement over wide area networks. For the same benchmarks, Speculator enables the Blue File System to provide the consistency of single-copy file semantics and the safety of synchronous I/O, yet still outperform current distributed file systems with weaker consistency and safety.
Ed Nightingale, Peter M. Chen, Jason Flinn
ACM Trans. Comput. Syst.1
2005 Speculative execution in a distributed file system
abstract
Speculator provides Linux kernel support for speculative execution. It allows multiple processes to share speculative state by tracking causal dependencies propagated through inter-process communication. It guarantees correct execution by preventing speculative processes from externalizing output, e.g., sending a network message or writing to the screen, until the speculations on which that output depends have proven to be correct. Speculator improves the performance of distributed file systems by masking I/O latency and increasing I/O throughput. Rather than block during a remote operation, a file system predicts the operation's result, then uses Speculator to checkpoint the state of the calling process and speculatively continue its execution based on the predicted result. If the prediction is correct, the checkpoint is discarded; if it is incorrect, the calling process is restored to the checkpoint, and the operation is retried. We have modified the client, server, and network protocol of two distributed file systems to use Speculator. For PostMark and Andrew-style benchmarks, speculative execution results in a factor of 2 performance improvement for NFS over local-area networks and an order of magnitude improvement over wide-area networks. For the same benchmarks, Speculator enables the Blue File System to provide the consistency of single-copy file semantics and the safety of synchronous I/O, yet still outperform current distributed file systems with weaker consistency and safety.
Ed Nightingale, Peter M. Chen, Jason Flinn
SOSP1
2005 Self-Tuning Wireless Network Power Management
Manish Anand, Ed Nightingale, Jason Flinn
Wirel. Networks2
2004 Ghosts in the Machine: Interfaces for Better Power Management (Awarded Best Paper!)
abstract
We observe that the modularity of current power management algorithms often leads to poor results. We propose two new interfaces that pierce the abstraction barrier that inhibits device power management. First, an OS power manager allows applications to query the current power mode of I/O devices to evaluate the performance and energy cost of alternative strategies for reading and writing data. Second, we allow applications to disclose ghost hints that enable better power management in the presence of multiple devices. Adaptive applications issue ghost hints to device power managers when they are forced to use a poor I/O path because a device is not in an ideal power mode; such hints allow devices to implement proactive power management strategies that do not depend upon passive load observation. Using these new interfaces, we implement a middleware layer that supports adaptive disk cache management. On an iPAQ handheld running Linux, our cache manager reduces interactive response time for a Web browser by 27% and decreases total energy usage by 9%. For a mail reader, the cache manager decreases response time by 42% and energy use by 5%.
Manish Anand, Ed Nightingale, Jason Flinn
MobiSys2
2004 Energy-Efficiency and Storage Flexibility in the Blue File System
Ed Nightingale, Jason Flinn
OSDI1
2003 Self-tuning wireless network power management
abstract
Current wireless network power management often substantially degrades performance and may even increase overall energy usage when used with latency-sensitive applications. We propose self-tuning power management (STPM) that adapts its behavior to the access patterns and intent of applications, the characteristics of the network interface, and the energy usage of the platform. We have implemented STPM as a Linux kernel module---our results show substantial benefits for distributed file systems, streaming audio, and thin-client applications. Compared to default 802.11b power management, STPM reduces the total energy usage of an iPAQ running the Coda distributed file system by 21% while also reducing interactive file system delay by 80%. Further, STPM adapts to diverse operating conditions: it yields good results on both laptops and handhelds, supports 802.11b network interfaces with substantially different characteristics, and performs well across a range of application network access patterns.
Manish Anand, Ed Nightingale, Jason Flinn
MobiCom2