Shan Lu

Orcid: 0000-0002-0757-4600

Affiliations:
  • Microsoft Research, Redmond, WA, USA
  • University of Chicago, IL, USA
  • University of Wisconsin, Madison, WI, USA (former)
  • University of Illinois, Urbana-Champaign, IL, USA (PhD 2008)


According to our database1, Shan Lu authored at least 115 papers between 2004 and 2024.

Collaborative distances:

Timeline

Legend:

Book 
In proceedings 
Article 
PhD thesis 
Dataset
Other 

Links

Online presence:

On csauthors.net:

Bibliography

2024
CacheBlend: Fast Large Language Model Serving for RAG with Cached Knowledge Fusion.
CoRR, 2024

If At First You Don't Succeed, Try, Try, Again...? Insights and LLM-informed Tooling for Detecting Retry Bugs in Software Systems.
Proceedings of the ACM SIGOPS 30th Symposium on Operating Systems Principles, 2024

CacheGen: KV Cache Compression and Streaming for Fast Large Language Model Serving.
Proceedings of the ACM SIGCOMM 2024 Conference, 2024

ChameleonAPI: Automatic and Efficient Customization of Neural Networks for ML Applications.
Proceedings of the 18th USENIX Symposium on Operating Systems Design and Implementation, 2024

A Tale of Two Paths: Toward a Hybrid Data Plane for Efficient Far-Memory Applications.
Proceedings of the 18th USENIX Symposium on Operating Systems Design and Implementation, 2024

ExChain: Exception Dependency Analysis for Root Cause Diagnosis.
Proceedings of the 21st USENIX Symposium on Networked Systems Design and Implementation, 2024

2023
Run-Time Prevention of Software Integration Failures of Machine Learning APIs.
Proc. ACM Program. Lang., October, 2023

Performance Bug Analysis and Detection for Distributed Storage and Computing Systems.
ACM Trans. Storage, August, 2023

Toward More Efficient Statistical Debugging with Abstraction Refinement.
ACM Trans. Softw. Eng. Methodol., April, 2023

Leveraging Application Data Constraints to Optimize Database-Backed Web Applications.
Proc. VLDB Endow., 2023

CacheGen: Fast Context Loading for Language Model Applications.
CoRR, 2023

Automatic and Efficient Customization of Neural Networks for ML Applications.
CoRR, 2023

Generating Test Databases for Database-Backed Applications.
Proceedings of the 45th IEEE/ACM International Conference on Software Engineering, 2023

HotGPT: How to Make Software Documentation More Useful with a Large Language Model?
Proceedings of the 19th Workshop on Hot Topics in Operating Systems, 2023

WAFFLE: Exposing Memory Ordering Bugs Efficiently with Active Delay Injection.
Proceedings of the Eighteenth European Conference on Computer Systems, 2023

2022
Helping Users Debug Trigger-Action Programs.
Proc. ACM Interact. Mob. Wearable Ubiquitous Technol., 2022

Leveraging Application Data Constraints to Optimize Database-Backed Web Applications.
CoRR, 2022

AgileCtrl: a self-adaptive framework for configuration tuning.
Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, 2022

MemLiner: Lining up Tracing and Application for a Far-Memory-Friendly Runtime.
Proceedings of the 16th USENIX Symposium on Operating Systems Design and Implementation, 2022

Cancellation in Systems: An Empirical Study of Task Cancellation Patterns and Failures.
Proceedings of the 16th USENIX Symposium on Operating Systems Design and Implementation, 2022

GOAL: Supporting General and Dynamic Adaptation in Computing Systems.
Proceedings of the 2022 ACM SIGPLAN International Symposium on New Ideas, 2022

Automated Testing of Software that Uses Machine Learning APIs.
Proceedings of the 44th IEEE/ACM 44th International Conference on Software Engineering, 2022

2021
Understanding and Detecting Software Upgrade Failures in Distributed Systems.
Proceedings of the SOSP '21: ACM SIGOPS 28th Symposium on Operating Systems Principles, 2021

Automated Code Refactoring upon Database-Schema Changes in Web Applications.
Proceedings of the 36th IEEE/ACM International Conference on Automated Software Engineering, 2021

A Replication of Are Machine Learning Cloud APIs Used Correctly.
Proceedings of the 43rd IEEE/ACM International Conference on Software Engineering: Companion Proceedings, 2021

Are Machine Learning Cloud APIs Used Correctly?
Proceedings of the 43rd IEEE/ACM International Conference on Software Engineering, 2021

Understanding Trigger-Action Programs Through Novel Visualizations of Program Differences.
Proceedings of the CHI '21: CHI Conference on Human Factors in Computing Systems, 2021

SherLock: unsupervised synchronization-operation inference.
Proceedings of the ASPLOS '21: 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, 2021

2020
How are distributed bugs diagnosed and fixed through system logs?
Inf. Softw. Technol., 2020

Trace2TAP: Synthesizing Trigger-Action Programs from Traces of Behavior.
Proc. ACM Interact. Mob. Wearable Ubiquitous Technol., 2020

ALERT: Accurate Learning for Energy and Timeliness.
Proceedings of the 2020 USENIX Annual Technical Conference, 2020

Understanding and automatically detecting conflicting interactions between smart home IoT applications.
Proceedings of the ESEC/FSE '20: 28th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, 2020

Managing data constraints in database-backed web applications.
Proceedings of the ICSE '20: 42nd International Conference on Software Engineering, Seoul, South Korea, 27 June, 2020

Orthogonalized SGD and Nested Architectures for Anytime Neural Networks.
Proceedings of the 37th International Conference on Machine Learning, 2020

Statically inferring performance properties of software configurations.
Proceedings of the EuroSys '20: Fifteenth EuroSys Conference 2020, 2020

View-Driven Optimization of Database-Backed Web Applications.
Proceedings of the 10th Conference on Innovative Data Systems Research, 2020

Visualizing Differences to Improve End-User Understanding of Trigger-Action Programs.
Proceedings of the Extended Abstracts of the 2020 CHI Conference on Human Factors in Computing Systems, 2020

2019
Hytrace: A Hybrid Approach to Performance Bug Diagnosis in Production Cloud Infrastructures.
IEEE Trans. Parallel Distributed Syst., 2019

Applying Transactional Memory for Concurrency-Bug Failure Recovery in Production Runs.
IEEE Trans. Parallel Distributed Syst., 2019

ALERT: Accurate Anytime Learning for Energy and Timeliness.
CoRR, 2019

Gerenuk: thin computation over big native data using speculative program transformation.
Proceedings of the 27th ACM Symposium on Operating Systems Principles, 2019

Efficient scalable thread-safety-violation detection: finding thousands of concurrency bugs during testing.
Proceedings of the 27th ACM Symposium on Operating Systems Principles, 2019

DFix: automatically fixing timing bugs in distributed systems.
Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation, 2019

AutoTap: synthesizing and repairing trigger-action programs using LTL properties.
Proceedings of the 41st International Conference on Software Engineering, 2019

View-centric performance optimization for database-backed web applications.
Proceedings of the 41st International Conference on Software Engineering, 2019

What bugs cause production cloud incidents?
Proceedings of the Workshop on Hot Topics in Operating Systems, 2019

ScaleCheck: A Single-Machine Approach for Discovering Scalability Bugs in Large Distributed Systems.
Proceedings of the 17th USENIX Conference on File and Storage Technologies, 2019

FlyMC: Highly Scalable Testing of Complex Interleavings in Distributed Systems.
Proceedings of the Fourteenth EuroSys Conference 2019, Dresden, Germany, March 25-28, 2019, 2019

2018
Applying Hardware Transactional Memory for Concurrency-Bug Failure Recovery in Production Runs.
Proceedings of the 2018 USENIX Annual Technical Conference, 2018

PowerStation: automatically detecting and fixing inefficiencies of database-backed web applications in IDE.
Proceedings of the 2018 ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, 2018

How <i>not</i> to structure your database-backed web applications: a study of performance bugs in the wild.
Proceedings of the 40th International Conference on Software Engineering, 2018

Understanding Real-World Timeout Problems in Cloud Server Systems.
Proceedings of the 2018 IEEE International Conference on Cloud Engineering, 2018

Pcatch: automatically detecting performance cascading bugs in cloud systems.
Proceedings of the Thirteenth EuroSys Conference, 2018

DScope: Detecting Real-World Data Corruption Hang Bugs in Cloud Server Systems.
Proceedings of the ACM Symposium on Cloud Computing, 2018

Understanding and Auto-Adjusting Performance-Sensitive Configurations.
Proceedings of the Twenty-Third International Conference on Architectural Support for Programming Languages and Operating Systems, 2018

Skyway: Connecting Managed Heaps in Distributed Big Data Systems.
Proceedings of the Twenty-Third International Conference on Architectural Support for Programming Languages and Operating Systems, 2018

FCatch: Automatically Detecting Time-of-fault Bugs in Cloud Systems.
Proceedings of the Twenty-Third International Conference on Architectural Support for Programming Languages and Operating Systems, 2018

2017
Understanding and Auto-Adjusting Performance-Related Configurations.
CoRR, 2017

Performance diagnosis for inefficient loops.
Proceedings of the 39th International Conference on Software Engineering, 2017

Efficient detection of thread safety violations via coverage-guided generation of concurrent tests.
Proceedings of the 39th International Conference on Software Engineering, 2017

Hytrace: a hybrid approach to performance bug diagnosis in production cloud infrastructures.
Proceedings of the 2017 Symposium on Cloud Computing, SoCC 2017, Santa Clara, CA, USA, 2017

Understanding Database Performance Inefficiencies in Real-world Web Applications.
Proceedings of the 2017 ACM on Conference on Information and Knowledge Management, 2017

DCatch: Automatically Detecting Distributed Concurrency Bugs in Cloud Systems.
Proceedings of the Twenty-Second International Conference on Architectural Support for Programming Languages and Operating Systems, 2017

2016
A Lightweight System for Detecting and Tolerating Concurrency Bugs.
IEEE Trans. Software Eng., 2016

Roundtable: Research Opportunities and Challenges for Large-Scale Software Systems.
J. Comput. Sci. Technol., 2016

Database-Backed Applications in the Wild: How Well Do They Work?
CoRR, 2016

RDE: Replay DEbugging for Diagnosing Production Site Failures.
Proceedings of the 35th IEEE Symposium on Reliable Distributed Systems, 2016

Understanding and generating high quality patches for concurrency bugs.
Proceedings of the 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, 2016

Early Detection of Configuration Errors to Reduce Failure Damage.
Proceedings of the 12th USENIX Symposium on Operating Systems Design and Implementation, 2016

Yak: A High-Performance Big-Data-Friendly Garbage Collector.
Proceedings of the 12th USENIX Symposium on Operating Systems Design and Implementation, 2016

Low-overhead and fully automated statistical debugging with abstraction refinement.
Proceedings of the 2016 ACM SIGPLAN International Conference on Object-Oriented Programming, 2016

TaxDC: A Taxonomy of Non-Deterministic Concurrency Bugs in Datacenter Distributed Systems.
Proceedings of the Twenty-First International Conference on Architectural Support for Programming Languages and Operating Systems, 2016

2015
Fixing, preventing, and recovering from concurrency bugs.
Sci. China Inf. Sci., 2015

Interruptible tasks: treating memory pressure as interrupts for highly scalable data-parallel programs.
Proceedings of the 25th Symposium on Operating Systems Principles, 2015

What change history tells us about thread synchronization.
Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering, 2015

CARAMEL: Detecting and Fixing Performance Problems That Have Non-Intrusive Fixes.
Proceedings of the 37th IEEE/ACM International Conference on Software Engineering, 2015

2014
A Study of Linux File System Evolution.
ACM Trans. Storage, 2014

AI: a lightweight system for tolerating concurrency bugs.
Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering, (FSE-22), Hong Kong, China, November 16, 2014

Statistical debugging for real-world performance problems.
Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications, 2014

Leveraging the short-term memory of hardware to diagnose production-run software failures.
Proceedings of the Architectural Support for Programming Languages and Operating Systems, 2014

2013
ConMem: Detecting Crash-Triggering Concurrency Bugs through an Effect-Oriented Approach.
ACM Trans. Softw. Eng. Methodol., 2013

Efficient concurrency-bug detection across inputs.
Proceedings of the 2013 ACM SIGPLAN International Conference on Object Oriented Programming Systems Languages & Applications, 2013

Toddler: detecting performance problems via similar memory-access patterns.
Proceedings of the 35th International Conference on Software Engineering, 2013

Validating Library Usage Interactively.
Proceedings of the Computer Aided Verification - 25th International Conference, 2013

ConAir: featherweight concurrency bug recovery via single-threaded idempotent execution.
Proceedings of the Architectural Support for Programming Languages and Operating Systems, 2013

Production-run software failure diagnosis via hardware performance counters.
Proceedings of the Architectural Support for Programming Languages and Operating Systems, 2013

2012
Finding Atomicity-Violation Bugs through Unserializable Interleaving Testing.
IEEE Trans. Software Eng., 2012

Detecting Concurrency Bugs from the Perspectives of Synchronization Intentions.
IEEE Trans. Parallel Distributed Syst., 2012

Understanding and detecting real-world performance bugs.
Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, 2012

Understanding the Interleaving-Space Overlap across Inputs and Software Versions.
Proceedings of the 4th USENIX Workshop on Hot Topics in Parallelism, 2012

Applying transactional memory to concurrency bugs.
Proceedings of the 17th International Conference on Architectural Support for Programming Languages and Operating Systems, 2012

2011
Automated atomicity-violation fixing.
Proceedings of the 32nd ACM SIGPLAN Conference on Programming Language Design and Implementation, 2011

ConSeq: detecting concurrency bugs through sequential errors.
Proceedings of the 16th International Conference on Architectural Support for Programming Languages and Operating Systems, 2011

2010
Leveraging parallelism for multi-dimensional packetclassification on software routers.
Proceedings of the SIGMETRICS 2010, 2010

Do I use the wrong definition?: DeFuse: definition-use invariants for detecting concurrency and sequential bugs.
Proceedings of the 25th Annual ACM SIGPLAN Conference on Object-Oriented Programming, 2010

Instrumentation and sampling strategies for cooperative concurrency bug isolation.
Proceedings of the 25th Annual ACM SIGPLAN Conference on Object-Oriented Programming, 2010

ConMem: detecting severe concurrency bugs through an effect-oriented approach.
Proceedings of the 15th International Conference on Architectural Support for Programming Languages and Operating Systems, 2010

2009
PRES: probabilistic replay with execution sketching on multiprocessors.
Proceedings of the 22nd ACM Symposium on Operating Systems Principles 2009, 2009

Cooperative crug isolation.
Proceedings of the International Workshop on Dynamic Analysis: held in conjunction with the ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2009), 2009

CTrigger: exposing atomicity violation bugs from their hiding places.
Proceedings of the 14th International Conference on Architectural Support for Programming Languages and Operating Systems, 2009

2008
Learning from mistakes: a comprehensive study on real world concurrency bug characteristics.
Proceedings of the 13th International Conference on Architectural Support for Programming Languages and Operating Systems, 2008

2007
AVIO: Detecting Atomicity Violations via Access-Interleaving Invariants.
IEEE Micro, 2007

Triage: diagnosing production run failures at the user's site.
Proceedings of the 21st ACM Symposium on Operating Systems Principles 2007, 2007

MUVI: automatically inferring multi-variable access correlations and detecting related semantic and concurrency bugs.
Proceedings of the 21st ACM Symposium on Operating Systems Principles 2007, 2007

A study of interleaving coverage criteria.
Proceedings of the 6th joint meeting of the European Software Engineering Conference and the ACM SIGSOFT International Symposium on Foundations of Software Engineering, 2007

Sweeper: a lightweight end-to-end system for defending against fast worms.
Proceedings of the 2007 EuroSys Conference, Lisbon, Portugal, March 21-23, 2007, 2007

2006
CP-Miner: Finding Copy-Paste and Related Bugs in Large-Scale Software Code.
IEEE Trans. Software Eng., 2006

Analyzing persistent state interactions to improve state management.
Proceedings of the Joint International Conference on Measurement and Modeling of Computer Systems, 2006

Flight Data Recorder: Monitoring Persistent-State Interactions to Improve Systems Management.
Proceedings of the 7th Symposium on Operating Systems Design and Implementation (OSDI '06), 2006

PathExpander: Architectural Support for Increasing the Path Coverage of Dynamic Bug Detection.
Proceedings of the 39th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO-39 2006), 2006

Automatic On-line Failure Diagnosis at the End-User Site.
Proceedings of the Second Workshop on Hot Topics in System Dependability, 2006

Have things changed now?: an empirical study of bug characteristics in modern open source software.
Proceedings of the 1st Workshop on Architectural and System Support for Improving Software Dependability, 2006

2005
SafeMem: Exploiting ECC-Memory for Detecting Memory Leaks and Memory Corruption During Production Runs.
Proceedings of the 11th International Conference on High-Performance Computer Architecture (HPCA-11 2005), 2005

2004
CP-Miner: A Tool for Finding Copy-paste and Related Bugs in Operating System Code.
Proceedings of the 6th Symposium on Operating System Design and Implementation (OSDI 2004), 2004

AccMon: Automatically Detecting Memory-Related Bugs via Program Counter-Based Invariants.
Proceedings of the 37th Annual International Symposium on Microarchitecture (MICRO-37 2004), 2004


  Loading...