VLDB 2026 Research / reviewers in the wild / expert
Margo I. Seltzer
dblp:s/MargoISeltzer
· DBLP profile ↗
112ranked-venue papers
11as first author
30since 2021 · last 2025
0000-0002-2165-4658ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 49 · 5 first-author · 6 since 2021Software engineering, systems software and programming languages · 29 · 2 first-author · 9 since 2021Artificial intelligence and machine learning · 21 · 12 since 2021Databases, data management, data science and information retrieval · 14 · 4 first-author · 1 since 2021Security and privacy · 8 · 4 since 2021Computer networks · 3Graphics, computer vision, multimedia, augmented reality and games · 3 · 2 since 2021Human-computer interaction and ubiquitous computing · 3 · 1 since 2021Theory of computation · 2 · 1 since 2021Applied, interdisciplinary, general and emerging computing · 2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | Velosiraptor: Code Synthesis for Memory TranslationabstractSecurity is among the top concerns of operating system (OS) developers. A secure runtime environment relies on the OS to correctly configure the memory hardware on which it runs. This is mission-critical as it provides essential security-relevant features and abstractions that ensure the integrity and isolation of untrusted applications running alongside each other. Configuring a platform's memory hardware is not a one-off effort as designers constantly develop new mechanisms for translation and protection with different features and means of configuration. Adapting the OS code to the new hardware is not only a manual, repetitive and time-consuming task, it may also introduce subtle, but security-critical bugs that break security and isolation guarantees. Reto Achermann, Em Chu, Ryan Mehri, Ilias Karimalis, Margo I. Seltzer |
ASPLOS (2) | 5 |
| 2025 | Near-Optimal Decision Trees in a SPLIT SecondabstractDecision tree optimization is fundamental to interpretable machine learning. The most popular approach is to greedily search for the best feature at every decision point, which is fast but provably suboptimal. Recent approaches find the global optimum using branch and bound with dynamic programming, showing substantial improvements in accuracy and sparsity at great cost to scalability. An ideal solution would have the accuracy of an optimal method and the scalability of a greedy method. We introduce a family of algorithms called SPLIT (SParse Lookahead for Interpretable Trees) that moves us significantly forward in achieving this ideal balance. We demonstrate that not all sub-problems need to be solved to optimality to find high quality trees; greediness suffices near the leaves. Since each depth adds an exponential number of possible trees, this change makes our algorithms orders of magnitude faster than existing optimal methods, with negligible loss in performance. We extend this algorithm to allow scalable computation of sets of near-optimal trees (i.e., the Rashomon set). Varun Babbar, Hayden McTavish, Cynthia Rudin, Margo I. Seltzer |
ICML | 4 |
| 2025 | Leveraging Predictive Equivalence in Decision TreesabstractDecision trees are widely used for interpretable machine learning due to their clearly structured reasoning process. However, this structure belies a challenge we refer to as predictive equivalence: a given tree’s decision boundary can be represented by many different decision trees. The presence of models with identical decision boundaries but different evaluation processes makes model selection challenging. The models will have different variable importance and behave differently in the presence of missing values, but most optimization procedures will arbitrarily choose one such model to return. We present a boolean logical representation of decision trees that does not exhibit predictive equivalence and is faithful to the underlying decision boundary. We apply our representation to several downstream machine learning tasks. Using our representation, we show that decision trees are surprisingly robust to test-time missingness of feature values; we address predictive equivalence’s impact on quantifying variable importance; and we present an algorithm to optimize the cost of reaching predictions. Hayden McTavish, Zachery Boner, Jon Donnelly, Margo I. Seltzer, Cynthia Rudin |
ICML | 4 |
| 2025 | Comparing Isolation Mechanisms with OSmosisabstractThere exist many mechanisms, ranging from processes to virtual machines, for isolating untrusted computations from each other. Each mechanism explicitly isolates certain resources while, either implicitly or explicitly, sharing the rest. Unfortunately, we lack a comprehensive way to formally and systematically reason about which resources are shared, to what extent they are shared, and how this sharing determines the degree of isolation between any two computations. Sidhartha Agrawal, Shaurya Patel, Arya Stevinson, Ilias Karimalis, Hugo Lefeuvre, Aastha Mehta, Reto Achermann, Margo I. Seltzer |
PLOS@SOSP | 9 |
| 2025 | CHERIoT RTOS: An OS for Fine-Grained Memory-Safe Compartments on Low-Cost Embedded DevicesabstractEmbedded systems do not benefit from strong memory protection, because they are designed to minimize cost. At the same time, there is increasing pressure to connect embedded devices to the internet, where their vulnerable nature makes them routinely subject to compromise. This fundamental tension leads to the current status-quo where exploitable devices put individuals and critical infrastructure at risk. Saar Amar, David Chisnall, Nathaniel Wesley Filardo, Ben Laurie, Hugo Lefeuvre, Kunyan Liu, Simon W. Moore, Robert Norton-Wright, Margo I. Seltzer, Yucong Tao, Robert N. M. Watson, Hongyan Xia |
SOSP | 10 |
| 2025 | Introduction to the Special Section on SOSP 2023
Jason Flinn, Margo I. Seltzer |
ACM Trans. Comput. Syst. | 2 |
| 2024 | Optimal Sparse Survival TreesabstractInterpretability is crucial for doctors, hospitals, pharmaceutical companies and biotechnology corporations to analyze and make decisions for high stakes problems that involve human health. Tree-based methods have been widely adopted for survival analysis due to their appealing interpretablility and their ability to capture complex relationships. However, most existing methods to produce survival trees rely on heuristic (or greedy) algorithms, which risk producing sub-optimal models. We present a dynamic-programming-with-bounds approach that finds provably-optimal sparse survival tree models, frequently in only a few seconds. Rui Zhang 0121, Rui Xin 0002, Margo I. Seltzer, Cynthia Rudin |
AISTATS | 3 |
| 2024 | RABIT, a Robot Arm Bug Intervention Tool for Self-Driving LabsabstractSelf-driving labs are transforming scientific research and accelerating experimentation using software-controlled lab equipment. These labs are exposed to human errors by inexperienced researchers working in the lab (e.g., setting incorrect target location could cause a robot arm to collide with an expensive piece of equipment). We present RABIT, a Robot Arm Bug Intervention Tool, which (i) allows systematically specifying safety rules across diverse devices and (ii) evaluates and enforces these rules using simulation, a low-fidelity testbed, and a production environment. We report our experience adapting RABIT for the Hein Lab, a state-of-the-art research lab that blends advanced robotics with synthetic organic chemistry. Zainab Saeed Wattoo, Petal Vitis, Ruizhe Zhu, Noah Depner, Ivory Zhang, Jason Hein, Arpan Gujarati, Margo I. Seltzer |
DSN | 8 |
| 2024 | Position: Amazing Things Come From Having Many Good ModelsabstractThe *Rashomon Effect*, coined by Leo Breiman, describes the phenomenon that there exist many equally good predictive models for the same dataset. This phenomenon happens for many real datasets and when it does, it sparks both magic and consternation, but mostly magic. In light of the Rashomon Effect, this perspective piece proposes reshaping the way we think about machine learning, particularly for tabular data problems in the nondeterministic (noisy) setting. We address how the Rashomon Effect impacts (1) the existence of simple-yet-accurate models, (2) flexibility to address user preferences, such as fairness and monotonicity, without losing performance, (3) uncertainty in predictions, fairness, and explanations, (4) reliable variable importance, (5) algorithm choice, specifically, providing advanced knowledge of which algorithms might be suitable for a given problem, and (6) public policy. We also discuss a theory of when the Rashomon Effect occurs and why. Our goal is to illustrate how the Rashomon Effect can have a massive impact on the use of machine learning for complex problems in society. Cynthia Rudin, Chudi Zhong, Lesia Semenova, Margo I. Seltzer, Ronald Parr, Jiachang Liu 0001, Srikar Katta, Jon Donnelly, Zachery Boner |
ICML | 4 |
| 2024 | Parallel Assembly Synthesis
Jingmei Hu, Stephen Chong, Margo I. Seltzer |
LOPSTR | 3 |
| 2024 | Interpretable Generalized Additive Models for Datasets with Missing ValuesabstractMany important datasets contain samples that are missing one or more feature values. Maintaining the interpretability of machine learning models in the presence of such missing data is challenging. Singly or multiply imputing missing values complicates the model’s mapping from features to labels. On the other hand, reasoning on indicator variables that represent missingness introduces a potentially large number of additional terms, sacrificing sparsity. We solve these problems with M-GAM, a sparse, generalized, additive modeling approach that incorporates missingness indicators and their interaction terms while maintaining sparsity through $\ell_0$ regularization. We show that M-GAM provides similar or superior accuracy to prior methods while significantly improving sparsity relative to either imputation or naïve inclusion of indicator variables. Hayden McTavish, Jon Donnelly, Margo I. Seltzer, Cynthia Rudin |
NeurIPS | 3 |
| 2024 | ExtMem: Enabling Application-Aware Virtual Memory Management for Data-Intensive Applications
Sepehr Jalalian, Shaurya Patel, Milad Rezaei Hajidehi, Margo I. Seltzer, Alexandra Fedorova |
USENIX ATC | 4 |
| 2024 | NetShaper: A Differentially Private Network Side-Channel Mitigation System
Amir Sabzi, Rut Vora, Swati Goswami, Margo I. Seltzer, Mathias Lécuyer, Aastha Mehta |
USENIX Security Symposium | 4 |
| 2024 | CUTTANA: Scalable Graph Partitioning for Faster Distributed Graph Databases and AnalyticsabstractGraph partitioning plays a pivotal role in various distributed graph processing applications, including graph analytics, graph neural network training, and distributed graph databases. A "good" graph partitioner reduces workload execution time, worker imbalance, and network overhead. Graphs that require distributed settings are often too large to fit in the main memory of a single machine. This challenge renders traditional in-memory graph partitioners infeasible, leading to the emergence of streaming solutions. Streaming partitioners produce lower-quality partitions, because they work from partial information and must make premature decisions before they have a complete view of a vertex's neighborhood. We introduce CUTTANA, a streaming graph partitioner that partitions massive graphs (Web/Twitter scale) with superior quality compared to existing streaming solutions. CUTTANA uses a novel buffering technique that prevents the premature assignment of vertices to partitions and a scalable coarsening and refinement technique that enables a complete graph view, improving the intermediate assignment made by a streaming partitioner. We implemented a parallel version for CUTTANA that offers nearly the same partitioning latency as existing streaming partitioners. Our experimental analysis shows that CUTTANA consistently yields better partitioning quality than state-of-the-art streaming vertex partitioners in terms of both edge-cut and communication volume metrics. We also evaluate the workload latencies that result from using CUTTANA and other partitioners in distributed graph analytics and databases. CUTTANA outperforms the other methods in most scenarios (algorithms, datasets). In analytics applications, CUTTANA improves runtime performance by up to 59% compared to various streaming partitioners (i.e., HDRF, Fennel, Ginger, HeiStream). In graph database tasks, CUTTANA results in higher query throughput by up to 23%, without hurting tail latency. Milad Rezaei Hajidehi, Sraavan Sridhar, Margo I. Seltzer |
Proc. VLDB Endow. | 3 |
| 2023 | Optimal Sparse Regression TreesabstractRegression trees are one of the oldest forms of AI models, and their predictions can be made without a calculator, which makes them broadly useful, particularly for high-stakes applications. Within the large literature on regression trees, there has been little effort towards full provable optimization, mainly due to the computational hardness of the problem. This work proposes a dynamic-programming-with-bounds approach to the construction of provably-optimal sparse regression trees. We leverage a novel lower bound based on an optimal solution to the k-Means clustering algorithm on one dimensional data. We are often able to find optimal sparse trees in seconds, even for challenging datasets that involve large numbers of samples and highly-correlated features. Rui Zhang 0121, Rui Xin 0002, Margo I. Seltzer, Cynthia Rudin |
AAAI | 3 |
| 2023 | Why write address translation OS code yourself when you can synthesize it?abstractAddress translation hardware is at the cornerstone of modern computer systems. It provides a wide range of security-relevant features and abstractions such as memory partitioning, address space isolation, and virtual memory. Hardware designers have developed different memory protection schemes with varying features and means of configuration. Reto Achermann, Ilias Karimalis, Margo I. Seltzer |
HotOS | 3 |
| 2023 | CAT-Walk: Inductive Hypergraph Learning via Set WalksabstractTemporal hypergraphs provide a powerful paradigm for modeling time-dependent, higher-order interactions in complex systems. Representation learning for hypergraphs is essential for extracting patterns of the higher-order interactions that are critically important in real-world problems in social network analysis, neuroscience, finance, etc. However, existing methods are typically designed only for specific tasks or static hypergraphs. We present CAT-Walk, an inductive method that learns the underlying dynamic laws that govern the temporal and structural processes underlying a temporal hypergraph. CAT-Walk introduces a temporal, higher-order walk on hypergraphs, SetWalk, that extracts higher-order causal patterns. CAT-Walk uses a novel adaptive and permutation invariant pooling strategy, SetMixer, along with a set-based anonymization process that hides the identity of hyperedges. Finally, we present a simple yet effective neural network model to encode hyperedges. Our evaluation on 10 hypergraph benchmark datasets shows that CAT-Walk attains outstanding performance on temporal hyperedge prediction benchmarks in both inductive and transductive settings. It also shows competitive performance with state-of-the-art methods for node classification. (https://github.com/ubc-systopia/CATWalk) Ali Behrouz, Farnoosh Hashemi, Sadaf Sadeghian, Margo I. Seltzer |
NeurIPS | 4 |
| 2023 | Exploring and Interacting with the Set of Good Sparse Generalized Additive ModelsabstractIn real applications, interaction between machine learning models and domain experts is critical; however, the classical machine learning paradigm that usually produces only a single model does not facilitate such interaction. Approximating and exploring the Rashomon set, i.e., the set of all near-optimal models, addresses this practical challenge by providing the user with a searchable space containing a diverse set of models from which domain experts can choose. We present algorithms to efficiently and accurately approximate the Rashomon set of sparse, generalized additive models with ellipsoids for fixed support sets and use these ellipsoids to approximate Rashomon sets for many different support sets. The approximated Rashomon set serves as a cornerstone to solve practical challenges such as (1) studying the variable importance for the model class; (2) finding models under user-specified constraints (monotonicity, direct editing); and (3) investigating sudden changes in the shape functions. Experiments demonstrate the fidelity of the approximated Rashomon set and its effectiveness in solving practical challenges. Chudi Zhong, Zhi Chen 0009, Jiachang Liu 0001, Margo I. Seltzer, Cynthia Rudin |
NeurIPS | 4 |
| 2023 | CHERI-picking: Leveraging capability hardware for prefetchingabstractDRAM now accounts for over 30% of overall datacenter expense [30], due to its increasing cost and decreasing scaling. [19, 22]. As applications demand more memory, operators look for cost-effective solutions to handle these increasing requirements. Shaurya Patel, Sidhartha Agrawal, Alexandra Fedorova, Margo I. Seltzer |
PLOS@SOSP | 4 |
| 2023 | Synthesizing Device Drivers with Ghost WriterabstractDevice drivers are components that enable operating systems to interact with devices. Unfortunately, they are the main source of bugs in operating systems, because writing a driver is an intricate and error-prone process that requires extensive knowledge of devices and operating systems. Furthermore, supporting new devices and accommodating kernel revisions require significant development effort. To facilitate the development of device drivers, we present Ghost Writer, an end-to-end toolchain that allows developers to synthesize correct-by-construction device drivers from high-level specifications. Ghost Writer supports control and data plane operations (e.g., handling DMA transactions). It makes synthesis tractable by 1) modeling the device interface as a set of virtual registers that abstract the hardware details and 2) leveraging behavior trees to model operations on virtual registers and synthesize complex operations from simpler ones. Our prototype can synthesize putc for the PL011 UART device and send_packet for the VirtIO network device. We believe that Ghost Writer can be the foundation towards automating the development of correct-by-construction device drivers. Bingyao Wang, Sepehr Noorafshan, Reto Achermann, Margo I. Seltzer |
PLOS@SOSP | 4 |
| 2023 | Reproducibility as a serviceabstractAbstract Recent studies demonstrated that the reproducibility of previously published computational experiments is inadequate. Many of these published computational experiments never recorded or preserved their computational environment, including packages installed in the language, libraries installed on the host system, and file locations. Researchers have created reproducibility tools to help mitigate this problem, but these tools assume the experiment currently executes. Thus, these tools do not facilitate reproducibility of the large number of published experiments. This situation is not improving; researchers continue to publish without using reproducibility tools. We define a framework to distinguish between actions taken by a researcher to facilitate reproducibility in the presence of a computational environment and actions taken by a researcher to enable reproduction of an experiment when that environment has been lost to clarify the gap between what existing reproducibility tools are capable of and what is required to reproduce published experiments. The difference between these approaches lies in the availability of a computational environment. Researchers that provide access to the original computational environment perform proactive reproducibility, while those who do not enable only retroactive reproducibility. We present Reproducibility as a Service (RaaS), which is, to the best of our knowledge, the first reproducibility tool explicitly designed to facilitate retroactive reproducibility. We demonstrate how RaaS fixes many common errors found in R scripts on Harvard's Dataverse and preserves a recreated computational environment. Finally, we discuss how a retroactive reproducibility service such as RaaS is also helpful as an ‘artifact evaluation assistant’ in a journal's publication pipeline. Joseph Wonsil, Nichole Boufford, Prakhar Agrawal, Christopher Chen, Tianhang Cui, Akash Sivaram, Margo I. Seltzer |
Softw. Pract. Exp. | 7 |
| 2023 | Towards Porting Operating Systems with Program SynthesisabstractThe end of Moore’s Law has ushered in a diversity of hardware not seen in decades. Operating system (OS) (and system software) portability is accordingly becoming increasingly critical. Simultaneously, there has been tremendous progress in program synthesis. We set out to explore the feasibility of using modern program synthesis to generate the machine-dependent parts of an operating system. Our ultimate goal is to generate new ports automatically from descriptions of new machines. One of the issues involved is writing specifications, both for machine-dependent operating system functionality and for instruction set architectures. We designed two domain-specific languages: Alewife for machine-independent specifications of machine-dependent operating system functionality and Cassiopea for describing instruction set architecture semantics. Automated porting also requires an implementation. We developed a toolchain that, given an Alewife specification and a Cassiopea machine description, specializes the machine-independent specification to the target instruction set architecture and synthesizes an implementation in assembly language with a customized symbolic execution engine. Using this approach, we demonstrate the successful synthesis of a total of 140 OS components from two pre-existing OSes for four real hardware platforms. We also developed several optimization methods for OS-related assembly synthesis to improve scalability. The effectiveness of our languages and ability to synthesize code for all 140 specifications is evidence of the feasibility of program synthesis for machine-dependent OS code. However, many research challenges remain; we also discuss the benefits and limitations of our synthesis-based approach to automated OS porting. Jingmei Hu, Eric Lu, David A. Holland, Ming Kawaguchi, Stephen Chong, Margo I. Seltzer |
ACM Trans. Program. Lang. Syst. | 6 |
| 2022 | Fast Sparse Decision Tree Optimization via Reference EnsemblesabstractSparse decision tree optimization has been one of the most fundamental problems in AI since its inception and is a challenge at the core of interpretable machine learning. Sparse decision tree optimization is computationally hard, and despite steady effort since the 1960's, breakthroughs have been made on the problem only within the past few years, primarily on the problem of finding optimal sparse decision trees. However, current state-of-the-art algorithms often require impractical amounts of computation time and memory to find optimal or near-optimal trees for some real-world datasets, particularly those having several continuous-valued features. Given that the search spaces of these decision tree optimization problems are massive, can we practically hope to find a sparse decision tree that competes in accuracy with a black box machine learning model? We address this problem via smart guessing strategies that can be applied to any optimal branch-and-bound-based decision tree algorithm. The guesses come from knowledge gleaned from black box models. We show that by using these guesses, we can reduce the run time by multiple orders of magnitude while providing bounds on how far the resulting trees can deviate from the black box's accuracy and expressive power. Our approach enables guesses about how to bin continuous features, the size of the tree, and lower bounds on the error for the optimal decision tree. Our experiments show that in many cases we can rapidly construct sparse decision trees that match the accuracy of black box models. To summarize: when you are having trouble optimizing, just guess. Hayden McTavish, Chudi Zhong, Reto Achermann, Ilias Karimalis, Jacques Chen, Cynthia Rudin, Margo I. Seltzer |
AAAI | 7 |
| 2022 | Fast Sparse Classification for Generalized Linear and Additive ModelsabstractWe present fast classification techniques for sparse generalized linear and additive models. These techniques can handle thousands of features and thousands of observations in minutes, even in the presence of many highly correlated features. For fast sparse logistic regression, our computational speed-up over other best-subset search techniques owes to linear and quadratic surrogate cuts for the logistic loss that allow us to efficiently screen features for elimination, as well as use of a priority queue that favors a more uniform exploration of features. As an alternative to the logistic loss, we propose the exponential loss, which permits an analytical solution to the line search at each iteration. Our algorithms are generally 2 to 5 times faster than previous approaches. They produce interpretable models that have accuracy comparable to black box models on challenging datasets. Jiachang Liu 0001, Chudi Zhong, Margo I. Seltzer, Cynthia Rudin |
AISTATS | 3 |
| 2022 | Arming IDS Researchers with a Robotic Arm DatasetabstractIndustry 4.0 is rapidly transforming traditional manufacturing practices. Smart manufacturing technologies that automate research and development using a combination of robotic arms and domain-specific cyber-physical systems are at the core of this transformation. Unfortunately, dependence on networked communication increases the risk of security attacks, which must be mitigated using either platforms that are secure by design or intrusion detection and prevention systems. We report on an ongoing project to design and develop intrusion detection systems (IDS) for the Hein Lab, a smart manufacturing research lab in the chemical sciences domain. Designing effective IDS requires large datasets and high-quality, domain-specific benchmarks, which are difficult to obtain. To address this gap, we present the Robotic Arm Dataset (RAD), which we collected at the Hein Lab over a three-month period. We also present our non-intrusive tracing framework RATracer, which can be retrofitted onto any existing Python-based automation pipeline, and two sets of preliminary analyses based on the command and power data in RAD. Arpan Gujarati, Zainab Saeed Wattoo, Maryam Raiyat Aliabadi, Sean Clark 0004, Parisa Shiri, Amee Trivedi, Ruizhe Zhu, Jason Hein, Margo I. Seltzer |
DSN | 10 |
| 2022 | FasterRisk: Fast and Accurate Interpretable Risk ScoresabstractOver the last century, risk scores have been the most popular form of predictive model used in healthcare and criminal justice. Risk scores are sparse linear models with integer coefficients; often these models can be memorized or placed on an index card. Typically, risk scores have been created either without data or by rounding logistic regression coefficients, but these methods do not reliably produce high-quality risk scores. Recent work used mathematical programming, which is computationally slow. We introduce an approach for efficiently producing a collection of high-quality risk scores learned from data. Specifically, our approach produces a pool of almost-optimal sparse continuous solutions, each with a different support set, using a beam-search algorithm. Each of these continuous solutions is transformed into a separate risk score through a "star ray" search, where a range of multipliers are considered before rounding the coefficients sequentially to maintain low logistic loss. Our algorithm returns all of these high-quality risk scores for the user to consider. This method completes within minutes and can be valuable in a broad variety of applications. Jiachang Liu 0001, Chudi Zhong, Boxuan Li, Margo I. Seltzer, Cynthia Rudin |
NeurIPS | 4 |
| 2022 | Exploring the Whole Rashomon Set of Sparse Decision TreesabstractIn any given machine learning problem, there may be many models that could explain the data almost equally well. However, most learning algorithms return only one of these models, leaving practitioners with no practical way to explore alternative models that might have desirable properties beyond what could be expressed within a loss function. The Rashomon set is the set of these all almost-optimal models. Rashomon sets can be extremely complicated, particularly for highly nonlinear function classes that allow complex interaction terms, such as decision trees. We provide the first technique for completely enumerating the Rashomon set for sparse decision trees; in fact, our work provides the first complete enumeration of any Rashomon set for a non-trivial problem with a highly nonlinear discrete function class. This allows the user an unprecedented level of control over model choice among all models that are approximately equally good. We represent the Rashomon set in a specialized data structure that supports efficient querying and sampling. We show three applications of the Rashomon set: 1) it can be used to study variable importance for the set of almost-optimal trees (as opposed to a single tree), 2) the Rashomon set for accuracy enables enumeration of the Rashomon sets for balanced accuracy and F1-score, and 3) the Rashomon set for a full dataset can be used to produce Rashomon sets constructed with only subsets of the data set. Thus, we are able to examine Rashomon sets across problems with a new lens, enabling users to choose models rather than be at the mercy of an algorithm that produces only a single model. Rui Xin 0002, Chudi Zhong, Zhi Chen 0009, Takuya Takagi, Margo I. Seltzer, Cynthia Rudin |
NeurIPS | 5 |
| 2022 | Tinkertoy: Build Your Own Operating Systems for IoT DevicesabstractThe Internet of Things (IoT) makes it possible for tiny devices with sensing and communication capabilities to be interconnected and interact with the cyber–physical world. However, these tiny devices have limited computing power and memory, so they often cannot run commodity operating systems, such as Windows and Linux. IoT devices are deployed everywhere, from smart home appliances to self-driving vehicles, and their applications impose ever-increasing and more heterogeneous demands on software architecture. There are many special-purpose and embedded operating systems built to satisfy these wildly different requirements, from early sensor network operating systems, such as TinyOS and Contiki, to more modern robot and real-time control systems, such as FreeRTOS and Zephyr. However, the rapid evolution and heterogeneity of IoT applications calls for a different solution. Specifically, this work introduces Tinkertoy, a collection of standard operating system modules from which developers can easily assemble customized operating systems. A customized operating system provides precisely the functionality needed by an application and consumes up to four times less memory than other IoT operating systems without sacrificing performance. Bingyao Wang, Margo I. Seltzer |
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. | 2 |
| 2021 | Assuage: Assembly Synthesis Using A Guided ExplorationabstractAssembly programming is challenging, even for experts. Program synthesis, as an alternative to manual implementation, has the potential to enable both expert and non-expert users to generate programs in an automated fashion. However, current tools and techniques are unable to synthesize assembly programs larger than a few instructions. We present Assuage : ASsembly Synthesis Using A Guided Exploration, which is a parallel interactive assembly synthesizer that engages the user as an active collaborator, enabling synthesis to scale beyond current limits. Using Assuage, users can provide two types of semantically meaningful hints that expedite synthesis and allow for exploration of multiple possibilities simultaneously. Assuage exposes information about the underlying synthesis process using multiple representations to help users guide synthesis. We conducted a within-subjects study with twenty-one participants working on assembly programming tasks. With Assuage, participants with a wide range of expertise were able to achieve significantly higher success rates, perceived less subjective workload, and preferred the usefulness and usability of Assuage over a state of the art synthesis tool. Jingmei Hu, Priyan Vaithilingam, Stephen Chong, Margo I. Seltzer, Elena L. Glassman |
UIST | 4 |
| 2021 | SIGL: Securing Software Installations Through Deep Graph Learning
Xueyuan Han, Xiao Yu 0007, Thomas Pasquier, Ding Li 0001, Junghwan Rhee, James W. Mickens, Margo I. Seltzer |
USENIX Security Symposium | 7 |
| 2020 | Parking packet payload with P4abstractNetwork Function (NF) deployments suffer from poor link goodput, because popular NFs such as firewalls process only packet headers while receiving and transmitting complete packets. As a result, unnecessary packet payloads needlessly consume link bandwidth. We introduce PayloadPark, which improves goodput by temporarily parking packet payloads in the stateful memory of dataplane programmable switches. PayloadPark forwards only packet headers to NF servers, thereby saving bandwidth between the switch and the NF server. PayloadPark is a transparent in-network optimization that complements existing approaches for optimizing NF performance on end-hosts. Swati Goswami, Nodir Kodirov, Craig Mustard, Ivan Beschastnikh, Margo I. Seltzer |
CoNEXT | 5 |
| 2020 | Generalized and Scalable Optimal Sparse Decision TreesabstractDecision tree optimization is notoriously difficult from a computational perspective but essential for the field of interpretable machine learning. Despite efforts over the past 40 years, only recently have optimization breakthroughs been made that have allowed practical algorithms to find optimal decision trees. These new techniques have the potential to trigger a paradigm shift, where, it is possible to construct sparse decision trees to efficiently optimize a variety of objective functions, without relying on greedy splitting and pruning heuristics that often lead to suboptimal solutions. The contribution in this work is to provide a general framework for decision tree optimization that addresses the two significant open problems in the area: treatment of imbalanced data and fully optimizing over continuous variables. We present techniques that produce optimal decision trees over variety of objectives including F-score, AUC, and partial area under the ROC convex hull. We also introduce a scalable algorithm that produces provably optimal results in the presence of continuous variables and speeds up decision tree construction by several order of magnitude relative to the state-of-the art. Jimmy Lin, Chudi Zhong, Diane Hu, Cynthia Rudin, Margo I. Seltzer |
ICML | 5 |
| 2020 | Improving data scientist efficiency with provenanceabstractData scientists frequently analyze data by writing scripts. We conducted a contextual inquiry with interdisciplinary researchers, which revealed that parameter tuning is a highly iterative process and that debugging is time-consuming. As analysis scripts evolve and become more complex, analysts have difficulty conceptualizing their workflow. In particular, after editing a script, it becomes difficult to determine precisely which code blocks depend on the edit. Consequently, scientists frequently re-run entire scripts instead of re-running only the necessary parts. We present ProvBuild, a tool that leverages language-level provenance to streamline the debugging process by reducing programmer cognitive load and decreasing subsequent runtimes, leading to an overall reduction in elapsed debugging time. ProvBuild uses provenance to track dependencies in a script. When an analyst debugs a script, ProvBuild generates a simplifed script that contains only the information necessary to debug a particular problem. We demonstrate that debugging the simplified script lowers a programmer's cognitive load and permits faster re-execution when testing changes. The combination of reduced cognitive load and shorter runtime reduces the time necessary to debug a script. We quantitatively and qualitatively show that even though ProvBuild introduces overhead during a script's first execution, it is a more efficient way for users to debug and tune complex workflows. ProvBuild demonstrates a novel use of language-level provenance, in which it is used to proactively improve programmer productively rather than merely providing a way to retroactively gain insight into a body of code. Jingmei Hu, Jiwon Joung, Maia L. Jacobs, Krzysztof Z. Gajos, Margo I. Seltzer |
ICSE | 5 |
| 2020 | Unicorn: Runtime Provenance-Based Detector for Advanced Persistent Threats
Xueyuan Han, Thomas Pasquier, Adam Bates 0001, James W. Mickens, Margo I. Seltzer |
NDSS | 5 |
| 2020 | The Fine Line between Bold and Fringe Lunatic
Margo I. Seltzer |
USENIX ATC | 1 |
| 2020 | Incentivizing Deep Fixes in Software EconomiesabstractAn important question in a software economy is how to incentivize deep rather than shallow fixes. A deep fix corrects the root cause of a bug instead of suppressing the symptoms. This paper initiates the study of the problem of incentive design for open workflows in fixing code. We model the dynamics of the software ecosystem and introduce subsumption mechanisms. These mechanisms only make use of externally observable information in determining payments and promote competition between workers. We use a mean field equilibrium methodology to evaluate the performance of these mechanisms, demonstrating in simulation that subsumption mechanisms perform robustly across various environment configurations and satisfy important criteria for market design. Malvika Rao, David F. Bacon, David C. Parkes, Margo I. Seltzer |
IEEE Trans. Software Eng. | 4 |
| 2019 | ProvMark: A Provenance Expressiveness Benchmarking SystemabstractSystem level provenance is of widespread interest for applications such as security enforcement and information protection. However, testing the correctness or completeness of provenance capture tools is challenging and currently done manually. In some cases there is not even a clear consensus about what behavior is correct. We present an automated tool, ProvMark, that uses an existing provenance system as a black box and reliably identifies the provenance graph structure recorded for a given activity, by a reduction to subgraph isomorphism problems handled by an external solver. ProvMark is a beginning step in the much needed area of testing and comparing the expressiveness of provenance systems. We demonstrate ProvMark's usefuless in comparing three capture systems with different architectures and distinct design philosophies. Sheung Chi Chan, James Cheney, Pramod Bhatotia, Thomas Pasquier, Ashish Gehani, Hassaan Irshad, Lucian Carata, Margo I. Seltzer |
Middleware | 8 |
| 2019 | Optimal Sparse Decision TreesabstractDecision tree algorithms have been among the most popular algorithms for interpretable (transparent) machine learning since the early 1980's. The problem that has plagued decision tree algorithms since their inception is their lack of optimality, or lack of guarantees of closeness to optimality: decision tree algorithms are often greedy or myopic, and sometimes produce unquestionably suboptimal models. Hardness of decision tree optimization is both a theoretical and practical obstacle, and even careful mathematical programming approaches have not been able to solve these problems efficiently. This work introduces the first practical algorithm for optimal decision trees for binary variables. The algorithm is a co-design of analytical bounds that reduce the search space and modern systems techniques, including data structures and a custom bit-vector library. We highlight possible steps to improving the scalability and speed of future generations of this algorithm based on insights from our theory and experiments. Xiyang Hu, Cynthia Rudin, Margo I. Seltzer |
NeurIPS | 3 |
| 2019 | Trials and Tribulations in Synthesizing Operating SystemsabstractRecent advances in program synthesis convinced us that it was the right time to transform the process of porting an operating system into a program synthesis problem. We set out to synthesize the needed machine dependent code for an existing operating system. This undertaking proved far more challenging than we anticipated. We summarize our experience and lessons learned and propose next steps in realizing such an undertaking. Jingmei Hu, Eric Lu, David A. Holland, Ming Kawaguchi, Stephen Chong, Margo I. Seltzer |
PLOS@SOSP | 6 |
| 2018 | Runtime Analysis of Whole-System ProvenanceabstractIdentifying the root cause and impact of a system intrusion remains a foundational challenge in computer security. Digital provenance provides a detailed history of the flow of information within a computing system, connecting suspicious events to their root causes. Although existing provenance-based auditing techniques provide value in forensic analysis, they assume that such analysis takes place only retrospectively. Such post-hoc analysis is insufficient for realtime security applications; moreover, even for forensic tasks, prior provenance collection systems exhibited poor performance and scalability, jeopardizing the timeliness of query responses. We present CamQuery, which provides inline, realtime provenance analysis, making it suitable for implementing security applications. CamQuery is a Linux Security Module that offers support for both userspace and in-kernel execution of analysis applications. We demonstrate the applicability of CamQuery to a variety of runtime security applications including data loss prevention, intrusion detection, and regulatory compliance. In evaluation, we demonstrate that CamQuery reduces the latency of realtime query mechanisms, while imposing minimal overheads on system execution. CamQuery thus enables the further deployment of provenance-based technologies to address central challenges in computer security. Thomas Pasquier, Xueyuan Han, Thomas Moyer, Adam Bates 0001, Olivier Hermant, David M. Eyers, Jean Bacon, Margo I. Seltzer |
CCS | 8 |
| 2018 | An NVM Carol: Visions of NVM Past, Present, and FutureabstractAround 2010, we observed significant research activity around the development of non-volatile memory technologies. Shortly thereafter, other research communities began considering the implications of non-volatile memory on system design, from storage systems to data management solutions to entire systems. Finally, in July 2015, Intel and Micron Technology announced 3D XPoint. It's now 2018; Intel is shipping its technology in SSD packages, but we've not yet seen the widespread availability of byte-addressable non-volatile memory that resides on the memory bus. We can view non-volatile memory technology and its impact on systems through an historical lens revealing it as the convergence of several past research trends starting with the concept of single-level store, encompassing the 1980s excitement around bubble memory, building upon persistent object systems, and leveraging recent work in transactional memory. We present this historical context, recalling past ideas that seem particularly relevant and potentially applicable and highlighting aspects that are novel. Margo I. Seltzer, Virendra J. Marathe, Steve Byan |
ICDE | 1 |
| 2018 | Closing the Performance Gap Between Volatile and Persistent Key-Value Stores Using Cross-Referencing Logs
Yihe Huang, Matej Pavlovic, Virendra J. Marathe, Margo I. Seltzer, Tim Harris 0001, Steve Byan |
USENIX ATC | 4 |
| 2018 | Data provenance to audit compliance with privacy policy in the Internet of Things
Thomas Pasquier, Jatinder Singh, Julia E. Powles, David M. Eyers, Margo I. Seltzer, Jean Bacon |
Pers. Ubiquitous Comput. | 5 |
| 2017 | Practical whole-system provenance captureabstractData provenance describes how data came to be in its present form. It includes data sources and the transformations that have been applied to them. Data provenance has many uses, from forensics and security to aiding the reproducibility of scientific experiments. We present CamFlow, a whole-system provenance capture mechanism that integrates easily into a PaaS offering. While there have been several prior whole-system provenance systems that captured a comprehensive, systemic and ubiquitous record of a system's behavior, none have been widely adopted. They either A) impose too much overhead, B) are designed for long-outdated kernel releases and are hard to port to current systems, C) generate too much data, or D) are designed for a single system. CamFlow addresses these shortcoming by: 1) leveraging the latest kernel design advances to achieve efficiency; 2) using a self-contained, easily maintainable implementation relying on a Linux Security Module, NetFilter, and other existing kernel facilities; 3) providing a mechanism to tailor the captured provenance data to the needs of the application; and 4) making it easy to integrate provenance across distributed systems. The provenance we capture is streamed and consumed by tenant-built auditor applications. We illustrate the usability of our implementation by describing three such applications: demonstrating compliance with data regulations; performing fault/intrusion detection; and implementing data loss prevention. We also show how CamFlow can be leveraged to capture meaningful provenance without modifying existing applications. Thomas Pasquier, Xueyuan Han, Mark Goldstein, Thomas Moyer, David M. Eyers, Margo I. Seltzer, Jean Bacon |
SoCC | 6 |
| 2017 | Persistent Memcached: Bringing Legacy Code to Byte-Addressable Persistent Memory
Virendra J. Marathe, Margo I. Seltzer, Steve Byan, Tim Harris 0001 |
HotStorage | 2 |
| 2017 | Scalable Bayesian Rule ListsabstractWe present an algorithm for building probabilistic rule lists that is two orders of magnitude faster than previous work. Rule list algorithms are competitors for decision tree algorithms. They are associative classifiers, in that they are built from pre-mined association rules. They have a logical structure that is a sequence of IF-THEN rules, identical to a decision list or one-sided decision tree. Instead of using greedy splitting and pruning like decision tree algorithms, we aim to fully optimize over rule lists, striking a practical balance between accuracy, interpretability, and computational speed. The algorithm presented here uses a mixture of theoretical bounds (tight enough to have practical implications as a screening or bounding procedure), computational reuse, and highly tuned language libraries to achieve computational efficiency. Currently, for many practical problems, this method achieves better accuracy and sparsity than decision trees. In many cases, the computational time is practical and often less than that of decision trees. Cynthia Rudin, Margo I. Seltzer |
ICML | 3 |
| 2017 | Learning Certifiably Optimal Rule ListsabstractWe present the design and implementation of a custom discrete optimization technique for building rule lists over a categorical feature space. Our algorithm provides the optimal solution, with a certificate of optimality. By leveraging algorithmic bounds, efficient data structures, and computational reuse, we achieve several orders of magnitude speedup in time and a massive reduction of memory consumption. We demonstrate that our approach produces optimal rule lists on practical problems in seconds. This framework is a novel alternative to CART and other decision tree methods. Elaine Angelino, Nicholas Larus-Stone, Daniel Alabi, Margo I. Seltzer, Cynthia Rudin |
KDD | 4 |
| 2017 | A Crowdsourcing Approach to Collecting Tutorial Videos - Toward Personalized Learning-at-ScaleabstractWe investigated the feasibility of crowdsourcing full- fledged tutorial videos from ordinary people on the Web on how to solve math problems related to logarithms. This kind of approach (a form of learnersourcing [9, 11]) to efficiently collecting tutorial videos and other learning resources could be useful for realizing personalized learning-at-scale, whereby students receive specific learning resources -- drawn from a large and diverse set -- that are tailored to their individual and time-varying needs. Results of our study, in which we collected 399 videos from 66 unique "teachers" on Mechanical Turk, suggest that (1) approximately 100 videos -- over 80% of which are mathematically fully correct -- can be crowdsourced per week for $5/video; (2) the average learning gains (posttest minus pretest score) associated with watching the videos was stat. sig. higher than for a control video (0.105 versus 0.045); and (3) the average learning gains (0.1416) from watching the best tested crowdsourced videos was comparable to the learning gains (0.1506) from watching a popular Khan Academy video on logarithms. Jacob Whitehill, Margo I. Seltzer |
L@S | 2 |
| 2017 | Learning Certifiably Optimal Rule Lists for Categorical Data
Elaine Angelino, Nicholas Larus-Stone, Daniel Alabi, Margo I. Seltzer, Cynthia Rudin |
J. Mach. Learn. Res. | 4 |
| 2015 | Towards General-Purpose Neural Network ComputingabstractMachine learning is becoming pervasive, decades of research in neural network computation is now being leveraged to learn patterns in data and perform computations that are difficult to express using standard programming approaches. Recent work has demonstrated that custom hardware accelerators for neural network processing can outperform software implementations in both performance and power consumption. However, there is neither an agreed-upon interface to neural network accelerators nor a consensus on neural network hardware implementations. We present a generic set of software/hardware extensions, X-FILES, that allow for the general-purpose integration of feedforward and feedback neural network computation in applications. The interface is independent of the network type, configuration, and implementation. Using these proposed extensions, we demonstrate and evaluate an example dynamically allocated, multi-context neural network accelerator architecture, DANA. We show that the combination of X-FILES and our hardware prototype, DANA, enables generic support and increased throughput for neural-network-based computation in multi-threaded scenarios. Schuyler Eldridge, Amos Waterland, Margo I. Seltzer, Jonathan Appavoo, Ajay Joshi |
PACT | 3 |
| 2015 | LLAMA: Efficient graph analytics using Large Multiversioned ArraysabstractWe present LLAMA, a graph storage and analysis system that supports mutability and out-of-memory execution. LLAMA performs comparably to immutable main-memory analysis systems for graphs that fit in memory and significantly outperforms existing out-of-memory analysis systems for graphs that exceed main memory. LLAMA bases its implementation on the compressed sparse row (CSR) representation, which is a read-only representation commonly used for graph analytics. We augment this representation to support mutability and persistence using a novel implementation of multi-versioned array snapshots, making it ideal for applications that receive a steady stream of new data, but need to perform whole-graph analysis on consistent views of the data. We compare LLAMA to state-of-the-art systems on representative graph analysis workloads, showing that LLAMA scales well both out-of-memory and across parallel cores. Our evaluation shows that LLAMA's mutability introduces modest overheads of 3-18% relative to immutable CSR for in-memory execution and that it outperforms state-of-the-art out-of-memory systems in most cases, with a best case improvement of 5x on breadth-first-search. Peter Macko, Virendra J. Marathe, Daniel W. Margo, Margo I. Seltzer |
ICDE | 4 |
| 2015 | Automatically Scalable ComputationabstractAs our computational infrastructure races gracefully forward into increasingly parallel multi-core and clustered systems, our ability to easily produce software that can successfully exploit such systems continues to stumble. For years, we've fantasized about the world in which we'd write simple, sequential programs, add magic sauce, and suddenly have scalable, parallel executions. We're not there. We're not even close. I'll present a radical, potentially crazy approach to automatic scalability, combining learning, prediction, and speculation. To date, we've achieved surprisingly good speedup in limited domains, but the potential is tantalizingly enormous. Margo I. Seltzer |
ICS | 1 |
| 2015 | A Scalable Distributed Graph PartitionerabstractWe present Scalable Host-tree Embeddings for Efficient Partitioning (Sheep), a distributed graph partitioning algorithm capable of handling graphs that far exceed main memory. Sheep produces high quality edge partitions an order of magnitude faster than both state of the art offline (e.g., METIS) and streaming partitioners (e.g., Fennel). Sheep's partitions are independent of the input graph distribution, which means that graph elements can be assigned to processing nodes arbitrarily without affecting the partition quality. Sheep transforms the input graph into a strictly smaller elimination tree via a distributed map-reduce operation. By partitioning this tree, Sheep finds an upper-bounded communication volume partitioning of the original graph. We describe the Sheep algorithm and analyze its space-time requirements, partition quality, and intuitive characteristics and limitations. We compare Sheep to contemporary partitioners and demonstrate that Sheep creates competitive partitions, scales to larger graphs, and has better runtime. Daniel W. Margo, Margo I. Seltzer |
Proc. VLDB Endow. | 2 |
| 2014 | ASC: automatically scalable computationabstractWe present an architecture designed to transparently and automatically scale the performance of sequential programs as a function of the hardware resources available. The architecture is predicated on a model of computation that views program execution as a walk through the enormous state space composed of the memory and registers of a single-threaded processor. Each instruction execution in this model moves the system from its current point in state space to a deterministic subsequent point. We can parallelize such execution by predictively partitioning the complete path and speculatively executing each partition in parallel. Accurately partitioning the path is a challenging prediction problem. We have implemented our system using a functional simulator that emulates the x86 instruction set, including a collection of state predictors and a mechanism for speculatively executing threads that explore potential states along the execution path. While the overhead of our simulation makes it impractical to measure speedup relative to native x86 execution, experiments on three benchmarks show scalability of up to a factor of 256 on a 1024 core machine when executing unmodified sequential programs. Amos Waterland, Elaine Angelino, Ryan P. Adams, Jonathan Appavoo, Margo I. Seltzer |
ASPLOS | 5 |
| 2014 | Accelerating MCMC via Parallel Predictive Prefetching
Elaine Angelino, Eddie Kohler, Amos Waterland, Margo I. Seltzer, Ryan P. Adams |
UAI | 4 |
| 2013 | Asthma Infrastructure Research (AIR)
Mark Gaynor, Margo I. Seltzer, David Schneider 0005 |
AMIA | 2 |
| 2013 | Local clustering in provenance graphsabstractSystems that capture and store data provenance, the record of how an object has arrived at its current state, accumulate historical metadata over time, forming a large graph. Local clustering in these graphs, in which we start with a seed vertex and grow a cluster around it, is of paramount importance because it supports critical provenance applications such as identifying semantically meaningful tasks in an object's history. However, generic graph clustering algorithms are not effective at these tasks. We identify three key properties of provenance graphs and exploit them to justify two new centrality metrics we developed for use in performing local clustering on provenance graphs. Peter Macko, Daniel W. Margo, Margo I. Seltzer |
CIKM | 3 |
| 2013 | Performance introspection of graph databasesabstractThe explosion of graph data in social and biological networks, recommendation systems, provenance databases, etc. makes graph storage and processing of paramount importance. We present a performance introspection framework for graph databases, PIG, which provides both a toolset and methodology for understanding graph database performance. PIG consists of a hierarchical collection of benchmarks that compose to produce performance models; the models provide a way to illuminate the strengths and weaknesses of a particular implementation. The suite has three layers of benchmarks: primitive operations, composite access patterns, and graph algorithms. While the framework could be used to compare different graph database systems, its primary goal is to help explain the observed performance of a particular system. Such introspection allows one to evaluate the degree to which systems exploit their knowledge of graph access patterns. We present both the PIG methodology and infrastructure and then demonstrate its efficacy by analyzing the popular Neo4j and DEX graph databases. Peter Macko, Daniel W. Margo, Margo I. Seltzer |
SYSTOR | 3 |
| 2013 | Computational cachesabstractCaching is a well-known technique for speeding up computation. We cache data from file systems and databases; we cache dynamically generated code blocks; we cache page translations in TLBs. We propose to cache the act of computation, so that we can apply it later and in different contexts. We use a state-space model of computation to support such caching, involving two interrelated parts: speculatively memoized predicted/resultant state pairs that we use to accelerate sequential computation, and trained probabilistic models that we use to generate predicted states from which to speculatively execute. The key techniques that make this approach feasible are designing probabilistic models that automatically focus on regions of program execution state space in which prediction is tractable and identifying state space equivalence classes so that predictions need not be exact. Amos Waterland, Elaine Angelino, Ekin Dogus Cubuk, Efthimios Kaxiras, Ryan P. Adams, Jonathan Appavoo, Margo I. Seltzer |
SYSTOR | 7 |
| 2013 | Flash Caching on the Storage Client
David A. Holland, Elaine Angelino, Gideon Wald, Margo I. Seltzer |
USENIX ATC | 4 |
| 2013 | Evaluation of Filesystem Provenance Visualization ToolsabstractHaving effective visualizations of filesystem provenance data is valuable for understanding its complex hierarchical structure. The most common visual representation of provenance data is the node-link diagram. While effective for understanding local activity, the node-link diagram fails to offer a high-level summary of activity and inter-relationships within the data. We present a new tool, InProv, which displays filesystem provenance with an interactive radial-based tree layout. The tool also utilizes a new time-based hierarchical node grouping method for filesystem provenance data we developed to match the user's mental model and make data exploration more intuitive. We compared InProv to a conventional node-link based tool, Orbiter, in a quantitative evaluation with real users of filesystem provenance data including provenance data experts, IT professionals, and computational scientists. We also compared in the evaluation our new node grouping method to a conventional method. The results demonstrate that InProv results in higher accuracy in identifying system activity than Orbiter with large complex data sets. The results also show that our new time-based hierarchical node grouping method improves performance in both tools, and participants found both tools significantly easier to use with the new time-based node grouping method. Subjective measures show that participants found InProv to require less mental activity, less physical activity, less work, and is less stressful to use. Our study also reveals one of the first cases of gender differences in visualization; both genders had comparable performance with InProv, but women had a significantly lower average accuracy (56%) compared to men (70%) with Orbiter. Michelle Borkin, Chelsea S. Yeh, Madelaine Boyd, Peter Macko, Krzysztof Z. Gajos, Margo I. Seltzer, Hanspeter Pfister |
IEEE Trans. Vis. Comput. Graph. | 6 |
| 2011 | Dimetrodon: processor-level preventive thermal management via idle cycle injectionabstractProcessor-level dynamic thermal management techniques have long targeted worst-case thermal margins. We examine the thermal-performance trade-offs in average-case, preventive thermal management by actively degrading application performance to achieve long-term thermal control. We propose Dimetrodon, the use of idle cycle injection, a flexible, per-thread technique, as a preventive thermal management mechanism and demonstrate its efficiency compared to hardware techniques in a commodity operating system on real hardware under throughput and latency-sensitive real-world workloads. Compared to inflexible hardware techniques, Dimet-rodon achieves favorable trade-offs for temperature reductions up to 30% due to rapid heat dissipation during short idle intervals. Peter Bailis, Vijay Janapa Reddi, Sanjay Gandhi, David Brooks 0001, Margo I. Seltzer |
DAC | 5 |
| 2011 | Multicore OSes: Looking Forward from 1991, er, 2011
David A. Holland, Margo I. Seltzer |
HotOS | 2 |
| 2011 | Benchmarking File System Benchmarking: It *IS* Rocket Science
Vasily Tarasov, Saumitra Bhanage, Erez Zadok, Margo I. Seltzer |
HotOS | 4 |
| 2010 | Tracking Back References in a Write-Anywhere File System
Peter Macko, Margo I. Seltzer, Keith A. Smith |
FAST | 2 |
| 2010 | Provenance for the Cloud
Kiran-Kumar Muniswamy-Reddy, Peter Macko, Margo I. Seltzer |
FAST | 3 |
| 2009 | Hierarchical File Systems Are Dead
Margo I. Seltzer, Nicholas Murphy |
HotOS | 1 |
| 2009 | Layering in Provenance Systems
Kiran-Kumar Muniswamy-Reddy, Uri Braun, David A. Holland, Peter Macko, Diana L. MacLean, Daniel W. Margo, Margo I. Seltzer, Robin Smogor |
USENIX ATC | 7 |
| 2009 | Introduction to special issue FAST 2009abstractNo abstract available. Margo I. Seltzer, Richard Wheeler |
ACM Trans. Storage | 1 |
| 2008 | Securing Provenance
Uri Braun, Avraham Shinnar, Margo I. Seltzer |
HotSec | 3 |
| 2008 | PASSing the provenance challengeabstractAbstract Provenance‐aware storage systems (PASS) are a new class of storage system treating provenance as a first‐class object, providing automatic collection, storage, and management of provenance as well as query capabilities. We developed the first PASS prototype between 2005 and 2006, targeting scientific end users. Prior to undertaking the provenance challenge, we had focused on provenance collection and storage, without much emphasis on a query model or language. The challenge forced us to (quickly) develop a query model and infrastructure implementing this model. We present a brief overview of the PASS prototype and a discussion of the evolution of the query model that we developed for the challenge. Copyright © 2007 John Wiley & Sons, Ltd. David A. Holland, Margo I. Seltzer, Uri Braun, Kiran-Kumar Muniswamy-Reddy |
Concurr. Comput. Pract. Exp. | 2 |
| 2008 | Special Issue: The First Provenance ChallengeabstractAbstract The first Provenance Challenge was set up in order to provide a forum for the community to understand the capabilities of different provenance systems and the expressiveness of their provenance representations. To this end, a functional magnetic resonance imaging workflow was defined, which participants had to either simulate or run in order to produce some provenance representation, from which a set of identified queries had to be implemented and executed. Sixteen teams responded to the challenge, and submitted their inputs. In this paper, we present the challenge workflow and queries, and summarize the participants' contributions. Copyright © 2007 John Wiley & Sons, Ltd. Luc Moreau 0001, Bertram Ludäscher, Ilkay Altintas, Roger S. Barga, Shawn Bowers, Steven P. Callahan, George Chin, Ben Clifford, Shirley Cohen, Sarah Cohen Boulakia, Susan B. Davidson, Ewa Deelman, Luciano A. Digiampietri, Ian T. Foster, Juliana Freire, James Frew, Joe Futrelle, Tara Gibson, Yolanda Gil, Carole A. Goble, Jennifer Golbeck, Paul Groth, David A. Holland, Jihie Kim, David Koop, Ales Krenek, Timothy M. McPhillips, Gaurang Mehta, Simon Miles, Dominic Metzger, Steve Munroe, James D. Myers, Beth Plale, Norbert Podhorszki, Varun Ratnakar, Emanuele Santos, Carlos Scheidegger, Karen Schuchardt, Margo I. Seltzer, Yogesh L. Simmhan, Cláudio T. Silva, Peter Slaughter, Eric G. Stephan, Robert Stevens 0001, Daniele Turi, Huy T. Vo, Michael Wilde, Jun Zhao 0003, Yong Zhao 0009 |
Concurr. Comput. Pract. Exp. | 40 |
| 2007 | Improving Performance Isolation on Chip Multiprocessors via an Operating System Scheduler
Alexandra Fedorova, Margo I. Seltzer, Michael D. Smith 0001 |
PACT | 2 |
| 2007 | Network Coordinates in the Wild
Jonathan Ledlie, Paul Gardner, Margo I. Seltzer |
NSDI | 3 |
| 2006 | Stable and Accurate Network CoordinatesabstractNetwork coordinates provide a scalable way to estimate latencies among large numbers of hosts. While there are several algorithms for producing coordinates, none account for the fact that nodes observe a stream of distinct observations that may vary by as much as three orders-ofmagnitude. With such variable data, coordinate systems are prone to high error and instability in live deployments. In addition, dynamics such as triangle violations can lead to coordinate oscillations, producing further instability and making it difficult for applications to know when their coordinates have truly changed. Because simulation results demonstrate that network coordinates are capable of providing low cost and sufficiently accurate answers to common queries, it is vital that we develop the ability to obtain similar results in practice. We propose two filters which combined to improve network coordinate accuracy by 54% and coordinate stability by 96% when run on a real, largescale network. Jonathan Ledlie, Peter R. Pietzuch, Margo I. Seltzer |
ICDCS | 3 |
| 2006 | Network-Aware Operator Placement for Stream-Processing SystemsabstractTo use their pool of resources efficiently, distributed stream-processing systems push query operators to nodes within the network. Currently, these operators, ranging from simple filters to custom business logic, are placed manually at intermediate nodes along the transmission path to meet application-specific performance goals. Determining placement locations is challenging because network and node conditions change over time and because streams may interact with each other, opening venues for reuse and repositioning of operators. This paper describes a stream-based overlay network (SBON), a layer between a stream-processing system and the physical network that manages operator placement for stream-processing systems. Our design is based on a cost space, an abstract representation of the network and on-going streams, which permits decentralized, large-scale multi-query optimization decisions. We present an evaluation of the SBON approach through simulation, experiments on PlanetLab, and an integration with Borealis, an existing stream-processing engine. Our results show that an SBON consistently improves network utilization, provides low stream latency, and enables dynamic optimization at low engineering cost. Peter R. Pietzuch, Jonathan Ledlie, Jeffrey Shneidman, Mema Roussopoulos, Matt Welsh, Margo I. Seltzer |
ICDE | 6 |
| 2006 | Provenance-Aware Storage Systems
Kiran-Kumar Muniswamy-Reddy, David A. Holland, Uri Braun, Margo I. Seltzer |
USENIX ATC, General Track | 4 |
| 2005 | Distributed, secure load balancing with skew, heterogeneity and churnabstractNumerous proposals exist for load balancing in peer-to-peer (p2p) networks. Some focus on namespace balancing, making the distance between nodes as uniform as possible. This technique works well under ideal conditions, but not under those found empirically. Instead, researchers have found heavy-tailed query distributions (skew), high rates of node join and leave (churn) and wide variation in node network and storage capacity (heterogeneity). Other approaches tackle these less-than-ideal conditions, but give up on important security properties. We propose an algorithm that both facilitates good performance and does not dilute security. Our algorithm, k-choices, achieves load balance by greedily matching nodes' target workloads with actual applied workloads through limited sampling and limits any fundamental decrease in security by basing each nodes' set of potential identifiers on a single certificate. Our algorithm compares favorably to four others in trace-driven simulations. We have implemented our algorithm and found that it improved aggregate throughput by 20% in a widely heterogeneous system in our experiments. Jonathan Ledlie, Margo I. Seltzer |
INFOCOM | 2 |
| 2005 | Performance of Multithreaded Chip Multiprocessors and Implications for Operating System Design
Alexandra Fedorova, Margo I. Seltzer, Christopher Small 0001, Daniel Nussbaum |
USENIX ATC, General Track | 2 |
| 2004 | Using probabilistic reasoning to automate software tuningabstractManually tuning the parameters or "knobs" of a complex software system is an extremely difficult task. Ideally, the process of software tuning should be automated, allowing software systems to reconfigure themselves as needed in response to changing conditions. We present a methodology that uses a probabilistic, graphical model known as an influence diagram as the foundation of an effective, automated approach to software tuning. We have used our methodology to simultaneously tune four knobs from the Berkeley DB embedded database system, and our results show that an influence diagram can effectively generalize from training data for this domain. David G. Sullivan, Margo I. Seltzer, Avi Pfeffer |
SIGMETRICS | 2 |
| 2003 | Passive NFS Tracing of Email and Research Workloads
Daniel Ellard, Jonathan Ledlie, Pia Malkani, Margo I. Seltzer |
FAST | 4 |
| 2003 | Making the Most Out of Direct-Access Network Attached Storage
Kostas Magoutis, Salimah Addetia, Alexandra Fedorova, Margo I. Seltzer |
FAST | 4 |
| 2003 | New NFS Tracing Tools and Techniques for System Analysis
Daniel Ellard, Margo I. Seltzer |
LISA | 2 |
| 2003 | Virtual worlds: fast and strategyproof auctions for dynamic resource allocationabstractWe consider the problem of designing fast and strategyproof exchanges for dynamic resource allocation problems in distributed systems. The exchange is implemented as a sequence of auctions, with dynamically arriving requests from agents matched with each auction. Each auction is associated with some consignment of the resources from a single seller. We provide a simple Virtual Worlds (VW) construction, that extends a fast and strategyproof mechanism for a single auction to apply to this sequence-of-auctions setting. Rather than match each buyer with a single auction, the VW mechanism allows buyers to be considered for multiple auctions while retaining strategyproofness. Chaki Ng, David C. Parkes, Margo I. Seltzer |
EC | 3 |
| 2002 | A new instructional operating systemabstractThis paper presents a new instructional operating system, OS/161, and simulated execution environment, System/161, for use in teaching an introductory undergraduate operating systems course. We describe the new system, the assignments used in our course, and our experience teaching using the new system. David A. Holland, Ada T. Lim, Margo I. Seltzer |
SIGCSE | 3 |
| 2002 | Building a Reliable Mutable File System on Peer-to-Peer StorageabstractThis paper sketches the design of the Eliot File System (Eliot), a mutable file system that maintains the pure immutability of its peer-to-peer (P2P) substrate by isolating mutation in an auxiliary metadata service. The immutability of address-to-content bindings has several advantages in P2P systems. However mutable file systems are desirable because they allow clients to update existing files; a necessary property for many applications. In order to facilitate modifications, the file system must provide some atom of mutability. Since this atom of mutability is a fundamental characteristic of the file system and not the underlying storage substrate, it is a mistake to violate the integrity of the substrate with special cases for mutability. Instead, Eliot employs a separate, generalized metadata service that isolates all mutation and client state in an auxiliary replicated database. Eliot provides fine-granularity file updates with either AFS open-close or NFS-like consistency semantics. Eliot builds a mutable filesystem on a global resource bed of purely immutable P2P block storage. Christopher A. Stein, Michael J. Tucker, Margo I. Seltzer |
SRDS | 3 |
| 2002 | Structure and Performance of the Direct Access File System
Kostas Magoutis, Salimah Addetia, Alexandra Fedorova, Margo I. Seltzer, Jeffrey S. Chase, Andrew J. Gallatin, Richard Kisley, Rajiv Wickremesinghe, Eran Gabber |
USENIX ATC, General Track | 4 |
| 2001 | Research Issues in No-Futz ComputingabstractAt the 1999 Workshop on Hot Topics in Operating Systems (HotOS VII), the attendees reached consensus that the most important issue facing the OS research community was "No-Futz" computing; eliminating the ongoing "futzing" that characterizes most systems today. To date, little research has been accomplished in this area. Our goal in this paper is to focus the research community on the challenges we face if we are to design systems that are truly futz-free, or even low-futz. David A. Holland, William K. Josephson, Kostas Magoutis, Margo I. Seltzer, Christopher A. Stein, Ada T. Lim |
HotOS | 4 |
| 2001 | Unifying File System Protection
Christopher A. Stein, John H. Howard, Margo I. Seltzer |
USENIX ATC, General Track | 3 |
| 2001 | HBench: Java: An application-specific benchmarking framework for Java Virtual MachinesabstractAbstract Java applications represent a broad class of programs, ranging from programs running on embedded products to high‐performance server applications. Standard Java benchmarks ignore this fact and assume a fixed workload. When an actual application's behavior differs from that included in a standard benchmark, the benchmark results are useless, if not misleading. In this paper, we present HBench:Java, an application‐specific benchmarking framework, based on the concept that a system's performance must be measured in the context of the application of interest. HBench:Java employs a methodology that uses vectors to characterize the application and the underlying Java Virtual Machine (JVM) and carefully combines the two vectors to form a single metric that reflects a specific application's performance on a particular JVM such that the performance of multiple JVMs can be realistically compared. Our performance results demonstrate HBench:Java's superiority over traditional benchmarking approaches in predicting relative performance of real applications and its ability to pinpoint performance problems, even with a simplified vector. Copyright © 2001 John Wiley & Sons, Ltd. Xiaolan Zhang 0001, Margo I. Seltzer |
Concurr. Comput. Pract. Exp. | 2 |
| 2000 | Improving interactive performance using TIPMEabstractOn the vast majority of today's computers, the dominant form of computation is GUI-based user interaction. In such an environment, the user's perception is the final arbiter of performance. Human-factors research shows that a user's perception of performance is affected by unexpectedly long delays. However, most performance-tuning techniques currently rely on throughput-sensitive benchmarks. While these techniques improve the average performance of the system, they do little to detect or eliminate response-time variabilities—in particular, unexpectedly long delays. Yasuhiro Endo, Margo I. Seltzer |
SIGMETRICS | 2 |
| 2000 | Journaling Versus Soft Updates: Asynchronous Meta-data Protection in File Systems
Margo I. Seltzer, Gregory R. Ganger, Marshall K. McKusick, Keith A. Smith, Craig A. N. Soules, Christopher A. Stein |
USENIX ATC, General Track | 1 |
| 2000 | Isolation with Flexibility: A Resource Management Framework for Central Servers
David G. Sullivan, Margo I. Seltzer |
USENIX ATC, General Track | 2 |
| 2000 | Operating System Support for Multi-User, Remote, Graphical Interaction
Alexander Ya-li Wong, Margo I. Seltzer |
USENIX ATC, General Track | 2 |
| 1998 | A Self-Scaling and Self-Configuring Benchmark for Web Servers (Extended Abstract)abstractWorld Wide Web clients and servers have become some of the most important applications in our computing base, and we need realistic and meaningful ways of measuring their performance. Current server benchmarks do not capture the wide variation that we see in servers and are not accurate in their characterization of web traffic. In this paper, we present a self-configuring, scalable benchmark that generates a server benchmark load based on actual server loads. In contrast to other web benchmarks, our benchmark focuses on request latency instead of focusing exclusively on throughput sensitive metrics. We present our new benchmark hBench:Web, and demonstrate how it accurately models the load of an actual server. The benchmark can also be used to assess how continued growth or changes in the workload will affect future performance. Using existing log histories, we now that these predictions are sufficiently realistic to provide insight into tomorrow's Web performance. Stephen Manley, Margo I. Seltzer, Michael Courage |
SIGMETRICS | 2 |
| 1997 | Operating System Benchmarking in the Wake of Lmbench: A Case Study of the Performance of NetBSD on Intel x86 ArchitectureabstractThe lmbench suite of operating system microbenchmarks provides a set of portable programs for use in cross-platform comparisons. We have augmented the lmbench suite to increase its flexibility and precision, and to improve its methodological and statistical operation. This enables the detailed study of interactions between the operating system and the hardware architecture. We describe modifications to lmbench, and then use our new benchmark suite, hbench:OS, to examine how the performance of operating system primitives under NetBSD has scaled with the processor evolution of the Intel x86 architecture. Our analysis shows that off-chip memory system design continues to influence operating system performance in a significant way and that key design decisions (such as suboptimal choices of DRAM and cache technology, and memory-bus and cache coherency protocols) can essentially nullify the performance benefits of the aggressive execution core and sophisticated on-chip memory system of a modern processor such as the Intel Pentium Pro. Aaron B. Brown, Margo I. Seltzer |
SIGMETRICS | 2 |
| 1997 | File System Aging - Increasing the Relevance of File System BenchmarksabstractBenchmarks are important because they provide a means for users and researchers to characterize how their workloads will perform on different systems and different system architectures. The field of file system design is no different from other areas of research in this regard, and a variety of file system benchmarks are in use, representing a wide range of the different user workloads that may be run on a file system. A realistic benchmark, however, is only one of the tools that is required in order to understand how a file system design will perform in the real world. The benchmark must also be executed on a realistic file system. While the simplest approach may be to measure the performance of an empty file system, this represents a state that is seldom encountered by real users. In order to study file systems in more representative conditions, we present a methodology for aging a test file system by replaying a workload similar to that experienced by a real file system over a period of many months, or even years. Our aging tools allow the same aging workload to be applied to multiple versions of the same file system, allowing scientific evaluation of the relative merits of competing file system designs.In addition to describing our aging tools, we demonstrate their use by applying them to evaluate two enhancements to the file layout policies of the UNIX fast file system. Keith A. Smith, Margo I. Seltzer |
SIGMETRICS | 2 |
| 1996 | Using Latency to Evaluate Interactive System PerformanceabstractNo abstract available. Yasuhiro Endo, J. Bradley Chen, Margo I. Seltzer |
OSDI | 4 |
| 1996 | Dealing with Disaster: Surviving Misbehaved Kernel ExtensionsabstractToday’s extensible operating systems allow applications to modify kernel behavior by providing mechanisms for application code to run in the kernel address space. The advantage of this approach is that it provides improved application flexibility and performance; the disadvantage is that buggy or malicious code can jeopardize the integrity of the kernel. It has been demonstrated that it is feasible to use safe languages, software fault isolation, or virtual memory protection to safeguard the main kernel. However, such protection mechanisms do not address the full range of problems, such as resource hoarding, that can arise when application code is introduced into the kernel. In this paper, we present an analysis of extension mechanisms in the VINO kernel. VINO uses software fault isolation as its safety mechanism and a lightweight transaction system to cope with resource-hoarding. We explain how these two mechanisms are sufficient to protect against a large class of errant or malicious extensions, and we quantify the overhead that this protection introduces. We find that while the overhead of these techniques is high relative to the cost of the extensions themselves, it is low relative to the benefits that extensibility brings. Margo I. Seltzer, Yasuhiro Endo, Christopher Small 0001, Keith A. Smith |
OSDI | 1 |
| 1996 | World Wide Web Cache Consistency
James Gwertzman, Margo I. Seltzer |
USENIX ATC | 2 |
| 1996 | A Comparison of OS Extension Technologies
Christopher Small 0001, Margo I. Seltzer |
USENIX ATC | 2 |
| 1996 | A Comparison of FFS Disk Allocation Policies
Keith A. Smith, Margo I. Seltzer |
USENIX ATC | 2 |
| 1996 | The Measured Performance of Personal Computer Operating SystemsabstractThis article presents a comparative study of the performance of three operating systems that run on the personal computer architecture derived form the IBM-PC. The operating systems, Windows for Workgroups, Windows NT, and NetBSD (a freely available variant of the UNIX operating system), cover a broad range of system functionality and user requirements, from a single-address-space model to full protection with preemptive multitasking. Our measurements are enable by hardware counters in Intel's Pentium processor that permit measurement of a broad range of processor events including instruction counts and on-chip cache miss counts. We use both microbenchmarks, which expose specific difference between the systems, and application workloads, which provide an indication of expected end-to-end performance. Our microbenchmark results show that accessing system functionality is often more expensive in Windows for Workgroups than in the other two systems due to frequent changes in machine mode and the use of system call hooks. When running native applications, Windows NT is more efficient than Windows, but it incurs overhead similar to that of a microkernel, since its application interface (the Win32 API) is implemented as a user-level server. Overall, system functionality can be accessed most efficiently in NetBSD; we attribute this to its monolithic structure and to the absence of the complications created by hardware backward-compatibility requirements in the other systems. Measurements of application performance show that although the impact of these differences is significant in terms of instruction counts and other hardware events (often a factor of 2 to 7 difference between the systems), overall performance is sometimes determined by the functionality provided by specific subsystems, such as the graphics subsystem or the file system buffer cache. J. Bradley Chen, Yasuhiro Endo, Kee Chan, David Mazières, Antonio Dias, Margo I. Seltzer, Michael D. Smith 0001 |
ACM Trans. Comput. Syst. | 6 |
| 1995 | The case for geographical push-cachingabstractMost wide-area caching schemes are client initiated. Decisions on when and where to cache information are made without the benefit of the server's global knowledge of the situation. We believe that the server should play a role in making these caching decisions, and we propose geographical push-caching as a way of bringing the server back into the loop. The World Wide Web is an excellent example of a wide-area system that will benefit from geographical push-caching, and we present an architecture that allows a Web server to autonomously replicate HTML pages. James Gwertzman, Margo I. Seltzer |
HotOS | 2 |
| 1995 | The Measured Performance of Personal Computer Operating SystemsabstractThis paper presents a comparative study of the performance of three operating systems that run on the personal computer architecture derived from the IBM-PC, The operating systems, Windows for Workgroups, Windows NT, and NetBSD (a freely available variant of the UNIX operating system), cover a broad range ofs ystem functionalist y and user requirements, from a single address space model to full protection with preemptive multi-tasking.Our measurements were enabled by hardware counters in Intel's Pentium processor that permit measurement of a broad range of processor events including instruction counts and on-chip cache miss counts.We used both microbenchmarks, which expose specific differences between the systems, and application workloads, which provide an indication of expected end-to-end performance.Our microbenchmark results show that accessing system functionality is often more expensive in Windows for Workgroups than in the other two systems due to frequent changes in machine mode and the use of system call hooks.When running native applications, Windows NT is more efficient than Windows, but it incurs overhead similar to that of a microkemel since its application interface (the Wln32 API) is implemented as a user-level server.Overall, system functionality can be accessed most efficiently in NetBSD; we attribute this to its monolithic structure, and to the absence of the complications created by hardware backwards compatibility requirements in the other systems.Measurements of application performance show that although the impact of these differences is significant in terms of instruction counts and other hardware events (often a factor of 2 to 7 difference between the systems), overall performance is sometimes determined by the functionality provided by specific subsystems, such as the graphics subsystem or the file system buffer cache. J. Bradley Chen, Yasuhiro Endo, Kee Chan, David Mazières, Antonio Dias, Margo I. Seltzer, Michael D. Smith 0001 |
SOSP | 6 |
| 1995 | Autonomous Replication Across Wide-Area InternetworksabstractNo abstract available. James Gwertzman, Margo I. Seltzer |
SOSP | 2 |
| 1995 | Heuristic Cleaning Algorithms in Log-Structured File Systems
Trevor Blackwell, Jeffrey Harris, Margo I. Seltzer |
USENIX | 3 |
| 1995 | File System Logging versus Clustering: A Performance Comparison
Margo I. Seltzer, Keith A. Smith, Hari Balakrishnan, Jacqueline Chang, Sara McMains, Venkat N. Padmanabhan |
USENIX | 1 |
| 1993 | Transaction Support in a Log-Structured File SystemabstractThe design and implementation of a transaction manager embedded in a log-structured file system are described. Measurements indicate that transaction support on a log-structured file system offers a 10% performance improvement over transaction support on a conventional read-optimized file system. When the transaction manager is embedded in the log-structured file system, the resulting performance is comparable to that of a more traditional, user-level system. The performance results also indicate that embedding transactions in the file system need not impact the performance of nontransaction applications.> Margo I. Seltzer |
ICDE | 1 |
| 1992 | Non-Volatile Memory for Fast, Reliable File SystemsabstractGiven the decreasing cost of non-volatile RAM (NVRAM), by the late 1990’s it will be feasible for most workstations to include a megabyte or more of NVRAM, enabling the design of higher-performance, more reliable systems. We present the trace-driven simulation and analysis of two uses of NVRAM to improve I/O performance in distributed file systems: non-volatile file caches on client workstations to reduce write traffic to file servers, and write buffers for write-optimized file systems to reduce server disk accesses. Our results show that a megabyte of NVRAM on diskless clients reduces the amount of file data written to the server by 40 to 50%. Increasing the amount of NVRAM shows rapidly diminishing returns, and the particular NVRAM block replacement policy makes little difference to write traffic. Closely integrating the NVRAM with the volatile cache provides the best total traffic reduction. At today’s prices, volatile memory provides a better performance improvement per dollar than NVRAM for client caching, but as volatile cache sizes increase and NVRAM becomes cheaper, NVRAM will become cost effective. On the server side, providing a one-half megabyte write-buffer per file system reduces disk accesses by about 20 % on most of the measured logstructured file systems (LFS), and by 90 % on one heavilyused file system that includes transaction-processing workloads. 1. Mary Baker, Satoshi Asami, Etienne Deprit, John K. Ousterhout, Margo I. Seltzer |
ASPLOS | 5 |
| 1991 | Read Optimized File System Designs: A Performance EvaluationabstractA performance comparison is presented of several file system allocation policies. The file systems are designed to provide high bandwidth between disks and main memory by taking advantage of parallelism in an underlying disk array catering to large units of transfer, and minimizing the bandwidth dedicated to the transfer of metadata. All of the file systems described use a multiblock allocation strategy which allows both large and small files to be allocated efficiently. Simulation results show that these multiblock policies result in systems that are able to utilize a large percentage of the underlying disk bandwidth (more than 90% in sequential cases). As general-purpose systems are called upon to support more data intensive applications such as databases and supercomputing, these policies offer an opportunity to provide superior performance to a larger class of users.> Margo I. Seltzer, Michael Stonebraker |
ICDE | 1 |
| 1990 | Transaction Support in Read Optimizied and Write Optimized File Systems
Margo I. Seltzer, Michael Stonebraker |
VLDB | 1 |