osdi18-huang
Introduction
Problem Statement
Panorama System
Overview
Abstractions and APIs
Local Observation Store
Observers
Observation Exchange
Judging Failure from Observations
Design Pattern and Observability
A Failed Case
Observability Patterns
Implications
Observability Analysis
Locate Observation Boundary
Identify Observer and Observed
Extract Observation
Handling Indirection
Implementation
Evaluation
Experiment Setup
Integration with Several Systems
Detection of Crash Failures
Detection of Gray Failures
Fault Localization
Transient Failure, Normal Operations
Performance
Discussion and Limitations
Related Work
Conclusion
osdi18-cui
Introduction
Overview
Problem Statement
Design Choices
Challenges
Irreversible Instructions
Missing Memory Writes
Concurrent Memory Writes
Design
Instruction Reversal
Irreversible Instruction Handling
Recovering Memory Writes
Data Inference Graph
Error Correction
Handling Concurrency
Implementation
Online Hardware Tracing
Offline Binary Analysis
Deployment
Evaluation
Accuracy
Single-Thread Accuracy
Multiple-Thread Accuracy
Efficiency
Effectiveness
Deployment
Discussion
Related Work
Conclusion
Acknowledgments
osdi18-mohan
Introduction
Background
Studying Crash-Consistency Bugs
B3: Bounded Black-Box Crash Testing
Overview
Bounds used by B3
Fine-grained correctness checking
Limitations
CrashMonkey and Ace
CrashMonkey
Automatic Crash Explorer (Ace)
Testing and Bug Analysis
Evaluation
Experimental Setup
Bug Finding
CrashMonkey Performance
Ace Performance
Resource Consumption
Related Work
Conclusion
osdi18-alquraan
osdi18-shan
osdi18-cutler
osdi18-khawaja
osdi18-maeng
osdi18-qin
osdi18-yang
osdi18-sriraman
Introduction
Motivation
A Taxonomy of Threading Models
Key dimensions
Synchronous models
Asynchronous models
Tune: System Design
Implementation
Experimental Setup
Evaluation
Threading model characterization
Synchronous vs. Asynchronous
Synchronous models
Asynchronous models
Load adaptation
Comparison to the state-of-the-art
Steady-state adaptation
Load transients
Discussion
Related Work
Conclusion
Acknowledgement
References
osdi18-berger
Introduction
Background and Challenges
The goal of RobinHood
Challenges of caching for tail latency
Time-varying latency imbalance
Latency is not correlated with specific queries nor with query rate
Latency depends on request structure, which varies greatly
The RobinHood Caching System
The basic RobinHood algorithm
Refining the RobinHood algorithm
RobinHood architecture
System Implementation and Challenges
Implementation and testbed
Implementation challenges
Generating experimental data
Evaluation
Competing caching systems
How much does RobinHood improve SLO violations for OneRF's workload?
How much variability can RobinHood handle?
How robust is RobinHood to simultaneous latency spikes?
How much space does RobinHood save?
What is the overhead of running RobinHood?
Discussion
Related Work
Conclusion
osdi18-gjengset
osdi18-wei
osdi18-mahajan
osdi18-hsieh
1 Introduction
2 Background and Motivation
2.1 Convolutional Neural Networks
2.2 Characterizing Real-world Videos
2.2.1 Excluding large portions of videos
2.2.2 Limited set of object classes in each video
2.2.3 Feature vectors for finding duplicate objects
3 Overview of Focus
4 Video Ingest & Querying Techniques
4.1 Approximate Index via Cheap Ingest
4.2 Video-specific Specialization of Ingest CNN
4.3 Redundant Object Elimination
4.4 Trading off Ingest Cost and Query Latency
5 Implementation
5.1 Ingest Processor
5.2 Stream Tuner
5.3 Query Processor
6 Evaluation
6.1 Methodology
6.2 End-to-End Performance
6.3 Effect of Different Focus Components
6.4 Ingest Cost vs. Query Latency Trade-off
6.5 Sensitivity to Recall/Precision Target
6.6 Sensitivity to Object Class Numbers
7 Other Applications
8 Related Work
9 Conclusion
osdi18-sigurbjarnarson
osdi18-chajed
Introduction
Related work
Goal and challenges
Approach to proving atomicity
Design of Cspec
Layers
Defining correctness
Implementation
Proving
Cspec's proof patterns
Mover pattern
Protocol pattern
Abstraction pattern
Other patterns
Implementation
Evaluation
Verifying Cmail
Verifying a counter on x86-TSO
Speedup
Effort
Patterns
Trusted computing base
Conclusion
osdi18-ileri
Introduction
Related Work
Motivation: bugs
Goal
Threat model
Challenges
Specification: data noninterference
Proof approach: sealed blocks
Formalizing sealed blocks
Proving noninterference
Code generation
Case study: File system
Specifying security
Modifying the implementation
Proving security
Implementation
Evaluation
Specification trustworthiness
Effort
Performance
Conclusion
osdi18-setty
1 Introduction
2 Problem statement and background
2.1 A prior instantiation of VSMs
2.1.1 Interacting with external resources
2.1.2 Handling state
2.2 Outlook and roadmap
3 Efficient storage operations in VSMs
3.1 SetKV: A verifiable key-value store
3.2 Building VSMs using SetKV
4 Supporting concurrent services
4.1 Executing requests concurrently
4.2 Supporting transactional semantics
5 Efficient instantiations
5.1 Parallelizing audits
5.2 Efficient cryptographic primitives
6 Implementation and applications
6.1 Applications of Spice
7 Experimental evaluation
7.1 Spice's approach to state VS. prior solutions
7.2 Benefits of Spice's concurrent execution
7.3 Performance of apps built with Spice
8 Related work
9 Discussion and summary
osdi18-lockerman
osdi18-veeraraghavan
osdi18-alagappan
osdi18-maricq
osdi18-klimovic
Introduction
Storage for Serverless Analytics
Ephemeral Storage Requirements
Existing Systems
Pocket Design
System Architecture
Application Interface
Life of a Pocket Application
Handling Node Failures
Rightsizing Resource Allocations
Rightsizing Application Allocation
Rightsizing the Storage Cluster
Implementation
Evaluation
Methodology
Microbenchmarks
Rightsizing Resource Allocations
Comparison to S3 and Redis
Discussion
Related Work
Conclusion
osdi18-annamalai
Introduction
Motivation
Capital and operational costs matter
Service request movements
Low read-write ratios
Ineffectiveness of distributed caches
Separate locality management layer
Background
Akkio Design and Implementation
Design guidelines
Requirements
Architectural overview
Akkio Location Service (ALS)
Access Counter Service
Akkio Data Placement Service (DPS)
Provisioning new µ-shards
Determining optimal µ-shard placement
µ-shard migration
Replica set collection changes
DPS fault recovery
Evaluation
Implementation metrics
Use cases analysis
ViewState
AccessState
Instagram Connection-Info
Instagram Direct
Analysis of Akkio services
Related Work
Concluding Remarks
osdi18-zuo
Introduction
Background and Motivation
Data Consistency in NVM
Hashing Index Structures for NVM
Conventional Hashing Schemes
Hashing Schemes for NVM
Resizing a Hash Table
The Level Hashing Design
Write-optimized Hash Table Structure
Cost-efficient In-place Resizing
Low-overhead Consistency Guarantee
Concurrent Level Hashing
Performance Evaluation
Experimental Setup
Experimental Results
Maximum Load Factor
Insertion Latency
Update Latency
Search Latency
Deletion Latency
Resizing Time
Concurrent Throughput
Related Work
Conclusion
osdi18-zhang
osdi18-bhagwan
osdi18-jindal
Introduction
Key Insights
Competing/similar apps are abundant
Similar apps differ in energy drain
Framework services dominate app energy drain
How to Diff Energy Profiles?
What diffing granularity?
How do app tasks manifest in call trees?
What tree structures to diff?
How to perform Eflask matching?
Need for approximate DiffProf matching
Prior tree matching algorithms
The Eflask matching algorithm
Preprocessing CCTs to facilitate effective matching
Implementation and Usage
Evaluation
Experimental setup
Diffing results
Effectiveness
Unmatched (extra) tasks
Matched tasks
Discussions
Related work
Conclusion
osdi18-zhou
osdi18-quinn
Introduction
Usage
Debugging tools
Parallel retro-logging
Continuous function evaluation
Retro-timing
Scenarios
Atomicity Violation
Apache 45605
Apache 25520
Data corruption
Wild store
Memory leak
Lock Contention
Design and implementation
Background: Deterministic record and replay
Sledgehammer API
Tracers
Tracepoints
Preparing for debugging queries
Running a parallel debugging tool
Isolation
Support for continuous function evaluation
Support for retro-timing
Aggregating results
Evaluation
Experimental Setup
Benchmarks
Scalability
Scaling bottlenecks
Benefit of parallel analysis
Isolation
Recording Overhead
Related Work
Conclusion
osdi18-moritz
osdi18-chen
Introduction
Overview
Optimizing Computational Graphs
Generating Tensor Operations
Tensor Expression and Schedule Space
Nested Parallelism with Cooperation
Tensorization
Explicit Memory Latency Hiding
Automating Optimization
Schedule Space Specification
ML-Based Cost Model
Schedule Exploration
Distributed Device Pool and RPC
Evaluation
Server-Class GPU Evaluation
Embedded CPU Evaluation
Embedded GPU Evaluation
FPGA Accelerator Evaluation
Related Work
Conclusion
osdi18-xiao
osdi18-lee
Introduction
Model Serving: State-of-the-Art and Limitations
White Box Prediction Serving: Design Principles
The Pretzel System
Off-line Phase
Flour
Oven
Object Store
On-line Phase
Runtime
Scheduler
Additional Optimizations
Evaluation
Memory
Latency
Micro-benchmark
End-to-end
Throughput
Heavy Load
Micro-benchmark
End-to-end
Limitations and Future Work
Related Work
Conclusion
osdi18-kulkarni
osdi18-yeo
osdi18-phothilimthana
osdi18-volos
osdi18-konoth
Introduction
Background
DRAM Organization
The Rowhammer Bug
Rowhammer Defenses
Threat Model
Design
Implementation
ZebRAM Prototype Components
Implementation Details
Security Evaluation
Traditional Rowhammer Exploits
ZebRAM-aware Exploits
Attacking the Unsafe Region
Attacking the Safe Region
Performance Evaluation
Related work
Discussion
Prototype
Alternative Implementations
Conclusion
osdi18-lazar
osdi18-crooks
osdi18-iyer
osdi18-wang
Introduction
Problems with State-of-the-Art Systems
Challenges and Contributions
Summary of Results
Background and Overview
Background
RStream Overview
Programming Model
RStream Implementation
Preprocessing
Join Implementation
Redundancy Removal via Automorphism Checks
Pattern Aggregation via Isomorphism Checks
Evaluation
Comparisons with Mining Systems
Comparisons with Datalog Engines
RStream Performance Breakdown
Related Work
Conclusion
osdi18-kalavri
osdi18-essertel
Blank Page