RaceMob: Crowdsourced Data Race Detec,on
|
|
- Hester Gallagher
- 6 years ago
- Views:
Transcription
1 RaceMob: Crowdsourced Data Race Detec,on Baris Kasikci, Cris,an Zamfir, and George Candea School of Computer & Communica3on Sciences
2 Data Races to shared memory loca,on By mul3ple threads At least one of the accesses is a write shared x Thread 1 Thread 2 x = 1 x = 2 Synchroniza3on opera3ons do not enforce an order among the accesses 2
3 Spectrum of Data Races Kept for performance??? Caused massive losses 2003 Blackout 3
4 PiLalls Programs with data races are incorrect according to POSI & C/C++ standards Compilers can break correctness of programs with data races [HotPar 11] Harmless data races can become harmful Developers need to know every true data race 4
5 How to Find All Data Races? Sta,c race detectors Dynamic race detectors Full path analysis Per- run analysis Cheap (0 run3me overhead) Expensive ( 200x) Few false nega5ves Many false nega5ves Many false posi5ves (~80%) Few false posi5ves (~0%) Exis,ng detectors are not prac,cal 5
6 How to Find All Data Races? Full path analysis Cheap (0 run3me overhead) Few false nega5ves Few false posi5ves (~0%) 6
7 RaceMob Full path analysis Cheap (0 run3me overhead) Few false nega2ves Few false posi2ves (~0%) All Memory Sta,c Detec,on Poten5ally Racing Dynamic Context Inference Likely Racing On- demand Valida,on True Races Crowdsourcing Race & Hang Race & Crash 7
8 Issues Usage Model program Applica,on Home (e.g., AppStore) Users run instrumented programs RaceMob 8
9 Insights Use sta,c race detec,on to prune memory accesses that need not be monitored Cost of dynamic detec,on can be amor,zed across many users Using the crowd, we can detect races that majer 9
10 RaceMob All Memory Sta,c Detec,on Poten5ally Racing Dynamic Context Inference Likely Racing On- demand Valida,on True Races Crowdsourcing Detected 106 real Race & Hang races in 10 Race & Crash programs with 2.3% average overhead 10
11 Sta,c Data Race Detec,on We use RELAY [FSE 07] Analyzes en3re program paths at once Computes & composes per- func3on summaries to scale Tracks locks Example Thread 1 Thread 2 x = 1 lock(l)... unlock(l) LS1 = {} lock(l)... unlock(l) x = 2 LS2 = {} x = 1 and x = 2 are poten,ally racing 11
12 RaceMob All Memory Sta,c Detec,on Poten5ally Racing Dynamic Context Inference Likely Racing On- demand Valida,on True Races Crowdsourcing Race & Hang Race & Crash 12
13 Dynamic Context Inference (DCI) Inaccuracy in sta,c data race detec,on Pointer alias analysis errors Inability to infer mul3threaded program context DCI checks at run,me: If accesses are from different threads If accesses alias } If yes, accesses are likely racing Dynamic context inference reduced the set of accesses to monitor by 53% 13
14 DCI Example Alice Thread 1 x = 1 lock(l)... unlock(l) Thread 2 lock(l)... unlock(l) x = 2 Address = 0xBEEF ThreadID = 1 Address = 0xBEEF ThreadID = 2 Proceed to on- demand data race valida,on 14
15 RaceMob All Memory Sta,c Detec,on Poten5ally Racing Dynamic Context Inference Likely Racing On- demand Valida,on True Races Crowdsourcing Race & Hang Race & Crash 15
16 On- demand Data Race Valida,on Happens- before based Track synchroniza3on Few false posi3ves Minimal tracking Thread 1 Thread 2 x=1 unlock(l) lock(l) x=2 Only memory accesses of the target data race Synchroniza3on in between these accesses Un,l enough happens- before edges form Steers thread schedule to expose races 16
17 On- demand Valida,on Example Alice Thread 1 Thread 2 x = 1 lock(l)... unlock(l) HB No Race lock(l)... unlock(l) x = 2 Bob Thread 1 Thread 2 x = 1 lock(l)... unlock(l) No HB x = 2 x = 1 lock(l)... unlock(l) Race 17
18 Detec,on Results RACE RACE & CRASH RACE & HANG NO RACE NOT ALIASING NOT MULTITHREADED NOT SEEN program Applica,on Home (AppStore, Play) RaceMob 18
19 RaceMob All Memory Sta,c Detec,on Poten5ally Racing Dynamic Context Inference Likely Racing On- demand Valida,on True Races Crowdsourcing Race & Hang Race & Crash 19
20 memcached Evalua,on Pbzip2 pfscan SPLASH-2 Detec,on effec,veness Contribu,on of techniques to reducing overhead Breakdown of overhead Comparison to other detectors Comparison to concurrency tes,ng tools Scalability analysis 20
21 memcached Evalua,on Pbzip2 pfscan SPLASH-2 Detec,on effec,veness Contribu,on of techniques to reducing overhead Breakdown of overhead Comparison to other detectors Comparison to concurrency tes,ng tools Scalability analysis 21
22 841 Detec,on Effec,veness Total Race & Crash 106 true data races 3 3 Race & Hang 100 Race Not Aliasing Not Mul,threaded No Race 84 Not seen RaceMob detected and confirmed 106 data races 22
23 How Does Each Technique Detec,on,me/ Na,ve execu,on,me Lower the Overhead? Dynamic detec,on Sta,c + dynamic detec,on RaceMob (sta,c + dynamic + DCI +on- demand valida,on) aggregate RaceMob per- user 30x 30x 26.1x 3.6x Ocean (CPU- bound) 1.01x 6.3x 5.4x Pbzip2 (I/O- bound) 1.03x All techniques are required for low overhead 23
24 Run,me overhead vs. na,ve execu,on 5.00 % 3.75 % 2.50 % 1.25 % 1.00 % 0 Breakdown of overhead Instrumenta,on Valida,on Apache SQLite Memcached Fmm Barnes Ocean Pbzip2 Knot Aget Pfscan 2.3% average run,me overhead per- user 24
25 RaceMob All Memory Sta,c Detec,on Poten5ally Racing Dynamic Context Inference Likely Racing On- demand Valida,on True Races Crowdsourcing Detected 106 real Race & Hang races in 10 programs with 2.3% Race & Crash average overhead 25
Lockout: Efficient Tes0ng for Deadlock Bugs. Ali Kheradmand, Baris Kasikci, George Candea
Lockout: Efficient Tes0ng for Deadlock Bugs Ali Kheradmand, Baris Kasikci, George Candea 1 Deadlock Set of threads Each holding a lock needed by another thread Wai?ng for another lock to be released by
More informationRaceMob: Crowdsourced Data Race Detection
RaceMob: Crowdsourced Data Race Detection Baris Kasikci, Cristian Zamfir, and George Candea School of Computer and Communication Sciences École Polytechnique Fédérale de Lausanne (EPFL), Switzerland {baris.kasikci,cristian.zamfir,george.candea}@epfl.ch
More informationChimera: Hybrid Program Analysis for Determinism
Chimera: Hybrid Program Analysis for Determinism Dongyoon Lee, Peter Chen, Jason Flinn, Satish Narayanasamy University of Michigan, Ann Arbor - 1 - * Chimera image from http://superpunch.blogspot.com/2009/02/chimera-sketch.html
More informationAd Hoc Synchroniza/on Considered Harmful
Ad Hoc Synchroniza/on Considered Harmful Weiwei Xiong, Soyoen Park, Jiaqi Zhang, Yuanyuan Zhou and Zhiqiang Ma UC San Diego University of Illinois Intel Synchroniza/on is Important Concurrent programs
More informationUnderstanding the Interleaving Space Overlap across Inputs and So7ware Versions
Understanding the Interleaving Space Overlap across Inputs and So7ware Versions Dongdong Deng, Wei Zhang, Borui Wang, Peisen Zhao, Shan Lu University of Wisconsin, Madison 1 Concurrency bug detec3on is
More informationCSE Opera,ng System Principles
CSE 30341 Opera,ng System Principles Lecture 5 Processes / Threads Recap Processes What is a process? What is in a process control bloc? Contrast stac, heap, data, text. What are process states? Which
More informationDeterministic Replay and Data Race Detection for Multithreaded Programs
Deterministic Replay and Data Race Detection for Multithreaded Programs Dongyoon Lee Computer Science Department - 1 - The Shift to Multicore Systems 100+ cores Desktop/Server 8+ cores Smartphones 2+ cores
More informationBaggy bounds checking. Periklis Akri5dis, Manuel Costa, Miguel Castro, Steven Hand
Baggy bounds checking Periklis Akri5dis, Manuel Costa, Miguel Castro, Steven Hand C/C++ programs are vulnerable Lots of exis5ng code in C and C++ More being wrieen every day C/C++ programs are prone to
More informationEfficient and Scalable Socware Detec2on in Online Social Networks
Efficient and Scalable Socware Detec2on in Online Social Networks Md Sazzadur Rahman, Ting- Kai Huang, Harsha Madhyastha, Michalis Faloutsos University of California, Riverside Problem Statement Social
More informationLightweight Data Race Detection for Production Runs
Lightweight Data Race Detection for Production Runs Swarnendu Biswas, UT Austin Man Cao, Ohio State University Minjia Zhang, Microsoft Research Michael D. Bond, Ohio State University Benjamin P. Wood,
More informationDynamically Detecting and Tolerating IF-Condition Data Races
Dynamically Detecting and Tolerating IF-Condition Data Races Shanxiang Qi (Google), Abdullah Muzahid (University of San Antonio), Wonsun Ahn, Josep Torrellas University of Illinois at Urbana-Champaign
More informationBerkeley Parlab P A R A L L E L C O M P U T I N G L A B O R A T O R Y
EECS Electrical Engineering and Computer Sciences Berkeley Parlab P A R A L L E L C O M P U T I N G L A B O R A T O R Y CONCURRIT: Tes&ng Concurrent Programs with Programmable State- Space Explora&on (A
More informationMPI Performance Analysis Trace Analyzer and Collector
MPI Performance Analysis Trace Analyzer and Collector Berk ONAT İTÜ Bilişim Enstitüsü 19 Haziran 2012 Outline MPI Performance Analyzing Defini6ons: Profiling Defini6ons: Tracing Intel Trace Analyzer Lab:
More informationUPCRC. Illiac. Gigascale System Research Center. Petascale computing. Cloud Computing Testbed (CCT) 2
Illiac UPCRC Petascale computing Gigascale System Research Center Cloud Computing Testbed (CCT) 2 www.parallel.illinois.edu Mul2 Core: All Computers Are Now Parallel We con'nue to have more transistors
More informationSingle and mul,threaded processes
1 Single and mul,threaded processes Why threads? Express concurrency Web server (mul,ple requests), Browser (GUI + network I/O + rendering), most GUI programs for(;;) { struct request *req = get_request();
More informationDo you have to reproduce the bug on the first replay attempt?
Do you have to reproduce the bug on the first replay attempt? PRES: Probabilistic Replay with Execution Sketching on Multiprocessors Soyeon Park, Yuanyuan Zhou University of California, San Diego Weiwei
More informationVulnerability Analysis (III): Sta8c Analysis
Computer Security Course. Vulnerability Analysis (III): Sta8c Analysis Slide credit: Vijay D Silva 1 Efficiency of Symbolic Execu8on 2 A Sta8c Analysis Analogy 3 Syntac8c Analysis 4 Seman8cs- Based Analysis
More informationSQLite with a Fine-Toothed Comb. John Regehr Trust-in-So1 / University of Utah
SQLite with a Fine-Toothed Comb John Regehr Trust-in-So1 / University of Utah Feasible states for a system we care about No execu
More informationTERN: Stable Deterministic Multithreading through Schedule Memoization
TERN: Stable Deterministic Multithreading through Schedule Memoization Heming Cui, Jingyue Wu, Chia-che Tsai, Junfeng Yang Columbia University Appeared in OSDI 10 Nondeterministic Execution One input many
More informationRV: A Run'me Verifica'on Framework for Monitoring, Predic'on and Mining
RV: A Run'me Verifica'on Framework for Monitoring, Predic'on and Mining Patrick Meredith Grigore Rosu University of Illinois at Urbana Champaign (UIUC) Run'me Verifica'on, Inc. (joint work with Dongyun
More informationBenjamin Holland, Ganesh Ram Santhanam, Payas Awadhutkar, and Suresh Kothari {bholland, gsanthan, payas,
Statically-informed Dynamic Analysis Tools to Detect Algorithmic Complexity Vulnerabilities 16th IEEE Interna,onal Working Conference on Source Code Analysis and Manipula,on (SCAM 2016) October 2, 2016
More informationHints for Writing About Your Research
Hints for Writing About Your Research School of Computer & Communication Sciences Good Writing so I wait for you like a lonely house till you will see me again and live in me. Till then my windows ache.
More informationOptimistic Shared Memory Dependence Tracing
Optimistic Shared Memory Dependence Tracing Yanyan Jiang1, Du Li2, Chang Xu1, Xiaoxing Ma1 and Jian Lu1 Nanjing University 2 Carnegie Mellon University 1 powered by Understanding Non-determinism Concurrent
More informationDynamic Languages. CSE 501 Spring 15. With materials adopted from John Mitchell
Dynamic Languages CSE 501 Spring 15 With materials adopted from John Mitchell Dynamic Programming Languages Languages where program behavior, broadly construed, cannot be determined during compila@on Types
More informationOpera&ng Systems: Principles and Prac&ce. Tom Anderson
Opera&ng Systems: Principles and Prac&ce Tom Anderson How This Course Fits in the UW CSE Curriculum CSE 333: Systems Programming Project experience in C/C++ How to use the opera&ng system interface CSE
More informationContext based Online Configura4on Error Detec4on
Context based Online Configura4on Error Detec4on Ding Yuan, Yinglian Xie, Rina Panigrahy, Junfeng Yang Γ, Chad Verbowski, Arunvijay Kumar MicrosoM Research, UIUC and UCSD, Γ Columbia University, 1 Mo4va4on
More informationVirtual Synchrony. Jared Cantwell
Virtual Synchrony Jared Cantwell Review Mul7cast Causal and total ordering Consistent Cuts Synchronized clocks Impossibility of consensus Distributed file systems Goal Distributed programming is hard What
More informationLeveraging User Session Data to Support Web Applica8on Tes8ng
Leveraging User Session Data to Support Web Applica8on Tes8ng Authors: Sebas8an Elbaum, Gregg Rotheermal, Srikanth Karre, and Marc Fisher II Presented By: Rajiv Jain Outline Introduc8on Related Work Tes8ng
More informationCISC327 - So*ware Quality Assurance
CISC327 - So*ware Quality Assurance Lecture 8 Introduc
More informationAtrina: Inferring Unit Oracles from GUI Test Cases
Atrina: Inferring Unit Oracles from GUI Test Cases Shabnam Mirshokraie Ali Mesbah Karthik Pa4abiraman University of Bri:sh Columbia @Test public void testshopcontainer() { WebElement item = driver.findelements(by.css(".merchandise"));
More informationCS 61C: Great Ideas in Computer Architecture (Machine Structures) Lecture 32: Pipeline Parallelism 3
CS 61C: Great Ideas in Computer Architecture (Machine Structures) Lecture 32: Pipeline Parallelism 3 Instructor: Dan Garcia inst.eecs.berkeley.edu/~cs61c! Compu@ng in the News At a laboratory in São Paulo,
More informationSubmitted to: Dr. Sunnie Chung. Presented by: Sonal Deshmukh Jay Upadhyay
Submitted to: Dr. Sunnie Chung Presented by: Sonal Deshmukh Jay Upadhyay Submitted to: Dr. Sunny Chung Presented by: Sonal Deshmukh Jay Upadhyay What is Apache Survey shows huge popularity spike for Apache
More informationTransac'onal Libraries Alexander Spiegelman *, Guy Golan-Gueta, and Idit Keidar * Technion Yahoo Research
Transac'onal Libraries Alexander Spiegelman *, Guy Golan-Gueta, and Idit Keidar * * Technion Yahoo Research 1 Mul'-Threading is Everywhere 2 Agenda Mo@va@on Concurrent Data Structure Libraries (CDSLs)
More informationLab 8: Firewalls & Intrusion Detec6on Systems
Lab 8: Firewalls & Intrusion Detec6on Systems Fengwei Zhang Wayne State University CSC Course: Cyber Security Prac6ce 1 Firewall & IDS Firewall A device or applica6on that analyzes packet headers and enforces
More informationActive Testing for Concurrent Programs
Active Testing for Concurrent Programs Pallavi Joshi Mayur Naik Chang-Seo Park Koushik Sen 1/8/2009 ParLab Retreat ParLab, UC Berkeley Intel Research Overview Checking correctness of concurrent programs
More informationHow to sleep *ght and keep your applica*ons running on IPv6 transi*on. The importance of IPv6 Applica*on Tes*ng
How to sleep *ght and keep your applica*ons running on IPv6 transi*on The importance of IPv6 Applica*on Tes*ng About this presenta*on It presents a generic methodology to test the IPv6 func*onality of
More informationStream and Complex Event Processing Discovering Exis7ng Systems:c- sparql
Stream and Complex Event Processing Discovering Exis7ng Systems:c- sparql G. Cugola E. Della Valle A. Margara Politecnico di Milano cugola@elet.polimi.it dellavalle@elet.polimi.it Vrije Universiteit Amsterdam
More informationScalability in a Real-Time Decision Platform
Scalability in a Real-Time Decision Platform Kenny Shi Manager Software Development ebay Inc. A Typical Fraudulent Lis3ng fraud detec3on architecture sync vs. async applica3on publish messaging bus request
More informationAlterna(ve Architectures
Alterna(ve Architectures COMS W4118 Prof. Kaustubh R. Joshi krj@cs.columbia.edu hep://www.cs.columbia.edu/~krj/os References: Opera(ng Systems Concepts (9e), Linux Kernel Development, previous W4118s Copyright
More informationConfinement (Running Untrusted Programs)
Confinement (Running Untrusted Programs) Chester Rebeiro Indian Institute of Technology Madras Untrusted Programs How to run untrusted programs and not harm your system? Answer: Confinement (some:mes called
More informationUNIT V: CENTRAL PROCESSING UNIT
UNIT V: CENTRAL PROCESSING UNIT Agenda Basic Instruc1on Cycle & Sets Addressing Instruc1on Format Processor Organiza1on Register Organiza1on Pipeline Processors Instruc1on Pipelining Co-Processors RISC
More informationOpenMP Programming 2 Advanced OpenMP Programming
OpenMP Programming 2 Advanced OpenMP Programming Berk ONAT İTÜ Bilişim Enstitüsü 21 Haziran 2012 Outline OpenMP Synchroniza6on Constructs Single, Cri6cal, Atomic, Barrier OpenMP Data Scope Clauses Firstprivate,
More informationCISC327 - So*ware Quality Assurance
CISC327 - So*ware Quality Assurance Lecture 12 Black Box Tes?ng CISC327-2003 2017 J.R. Cordy, S. Grant, J.S. Bradbury, J. Dunfield Black Box Tes?ng Outline Last?me we con?nued with black box tes?ng and
More informationAppSpear: Bytecode Decryp0ng and DEX Reassembling for Packed Android Malware
AppSpear: Bytecode Decryp0ng and DEX Reassembling for Packed Android Malware Yang Wenbo, Zhang Yuanyuan, Li Juanru, Shu Junliang, Li Bodong, Hu Wenjun, Gu Dawu Sudeep Nanjappa Jayakumar Agenda Introduc0on
More informationPerformance Measurement
ECPE 170 Jeff Shafer University of the Pacific Performance Measurement 2 Lab Schedule Ac?vi?es Today Background discussion Lab 5 Performance Measurement Wednesday Lab 5 Performance Measurement Friday Lab
More informationFounda'ons of So,ware Engineering. Lecture 11 Intro to QA, Tes2ng Claire Le Goues
Founda'ons of So,ware Engineering Lecture 11 Intro to QA, Tes2ng Claire Le Goues 1 Learning goals Define so;ware analysis. Reason about QA ac2vi2es with respect to coverage and coverage/adequacy criteria,
More informationActive Testing for Concurrent Programs
Active Testing for Concurrent Programs Pallavi Joshi, Mayur Naik, Chang-Seo Park, Koushik Sen 12/30/2008 ROPAS Seminar ParLab, UC Berkeley Intel Research Overview ParLab The Parallel Computing Laboratory
More informationSEDA An architecture for Well Condi6oned, scalable Internet Services
SEDA An architecture for Well Condi6oned, scalable Internet Services Ma= Welsh, David Culler, and Eric Brewer University of California, Berkeley Symposium on Operating Systems Principles (SOSP), October
More informationOp#mizing PGAS overhead in a mul#-locale Chapel implementa#on of CoMD
Op#mizing PGAS overhead in a mul#-locale Chapel implementa#on of CoMD Riyaz Haque and David F. Richards This work was performed under the auspices of the U.S. Department of Energy by Lawrence Livermore
More informationJinn: Synthesizing Dynamic Bug Detectors for Foreign Language Interfaces
Jinn: Synthesizing Dynamic Bug Detectors for Foreign Language Interfaces Byeongcheol Lee Ben Wiedermann Mar>n Hirzel Robert Grimm Kathryn S. McKinley B. Lee, B. Wiedermann, M. Hirzel, R. Grimm, and K.
More informationInforma)on Retrieval and Map- Reduce Implementa)ons. Mohammad Amir Sharif PhD Student Center for Advanced Computer Studies
Informa)on Retrieval and Map- Reduce Implementa)ons Mohammad Amir Sharif PhD Student Center for Advanced Computer Studies mas4108@louisiana.edu Map-Reduce: Why? Need to process 100TB datasets On 1 node:
More informationExcep&ons and Threads
Excep&ons and Threads Excep&ons What do you do when a program encounters an anomalous, unusual event? Try to open a file and it's not there Try to convert a string to an integer and it's not a valid integer
More informationDetec%ng Wildlife in Uncontrolled Outdoor Video using Convolu%onal Neural Networks
Detec%ng Wildlife in Uncontrolled Outdoor Video using Convolu%onal Neural Networks Connor Bowley *, Alicia Andes +, Susan Ellis-Felege +, Travis Desell * Department of Computer Science * Department of
More informationHypergraph Sparsifica/on and Its Applica/on to Par//oning
Hypergraph Sparsifica/on and Its Applica/on to Par//oning Mehmet Deveci 1,3, Kamer Kaya 1, Ümit V. Çatalyürek 1,2 1 Dept. of Biomedical Informa/cs, The Ohio State University 2 Dept. of Electrical & Computer
More informationDesign Principles & Prac4ces
Design Principles & Prac4ces Robert France Robert B. France 1 Understanding complexity Accidental versus Essen4al complexity Essen%al complexity: Complexity that is inherent in the problem or the solu4on
More informationTools zur Op+mierung eingebe2eter Mul+core- Systeme. Bernhard Bauer
Tools zur Op+mierung eingebe2eter Mul+core- Systeme Bernhard Bauer Agenda Mo+va+on So.ware Engineering & Mul5core Think Parallel Models Added Value Tooling Quo Vadis? The Mul5core Era Moore s Law: The
More informationNetwork Coding: Theory and Applica7ons
Network Coding: Theory and Applica7ons PhD Course Part IV Tuesday 9.15-12.15 18.6.213 Muriel Médard (MIT), Frank H. P. Fitzek (AAU), Daniel E. Lucani (AAU), Morten V. Pedersen (AAU) Plan Hello World! Intra
More informationJava Memory Model. Jian Cao. Department of Electrical and Computer Engineering Rice University. Sep 22, 2016
Java Memory Model Jian Cao Department of Electrical and Computer Engineering Rice University Sep 22, 2016 Content Introduction Java synchronization mechanism Double-checked locking Out-of-Thin-Air violation
More informationTyped Assembly Language for Implementing OS Kernels in SMP/Multi-Core Environments with Interrupts
Typed Assembly Language for Implementing OS Kernels in SMP/Multi-Core Environments with Interrupts Toshiyuki Maeda and Akinori Yonezawa University of Tokyo Quiz [Environment] CPU: Intel Xeon X5570 (2.93GHz)
More informationPhD in Computer And Control Engineering XXVII cycle. Torino February 27th, 2015.
PhD in Computer And Control Engineering XXVII cycle Torino February 27th, 2015. Parallel and reconfigurable systems are more and more used in a wide number of applica7ons and environments, ranging from
More informationECSE 425 Lecture 25: Mul1- threading
ECSE 425 Lecture 25: Mul1- threading H&P Chapter 3 Last Time Theore1cal and prac1cal limits of ILP Instruc1on window Branch predic1on Register renaming 2 Today Mul1- threading Chapter 3.5 Summary of ILP:
More informationLecture 2: Processes. CSE 120: Principles of Opera9ng Systems. UC San Diego: Summer Session I, 2009 Frank Uyeda
Lecture 2: Processes CSE 120: Principles of Opera9ng Systems UC San Diego: Summer Session I, 2009 Frank Uyeda Announcements PeerWise accounts are now live. First PeerWise ques9ons/reviews due tomorrow
More informationFlexBulk: Intelligently Forming Atomic Blocks in Blocked-Execution Multiprocessors to Minimize Squashes
FlexBulk: Intelligently Forming Atomic Blocks in Blocked-Execution Multiprocessors to Minimize Squashes Rishi Agarwal and Josep Torrellas University of Illinois at Urbana-Champaign http://iacoma.cs.uiuc.edu
More informationAsaf Cidon, Assaf Eisenman, Mohammad Alizadeh and Sachin KaH
Cli$anger: Scaling Performance Cliffs in Memory Caches [NSDI 2016] Cache OS: Data Center Dynamic Cache Management Asaf Cidon, Assaf Eisenman, Mohammad Alizadeh and Sachin KaH 1 Key-Value Caches are Essen1al
More informationCISC327 - So*ware Quality Assurance
CISC327 - So*ware Quality Assurance Lecture 12 Black Box Tes?ng CISC327-2003 2017 J.R. Cordy, S. Grant, J.S. Bradbury, J. Dunfield Black Box Tes?ng Outline Last?me we con?nued with black box tes?ng and
More informationFailure Sketching: A Technique for Automated Root Cause Diagnosis of In-Production Failures
Failure Sketching: A Technique for Automated Root Cause Diagnosis of In-Production Failures Baris Kasikci, Benjamin Schubert, Cristiano Pereira, Gilles Pokam, George Candea Debugging In-Production Software
More informationCombinatorial Mathema/cs and Algorithms at Exascale: Challenges and Promising Direc/ons
Combinatorial Mathema/cs and Algorithms at Exascale: Challenges and Promising Direc/ons Assefaw Gebremedhin Purdue University (Star/ng August 2014, Washington State University School of Electrical Engineering
More informationThreads. COMP 401 Fall 2017 Lecture 22
Threads COMP 401 Fall 2017 Lecture 22 Threads As a generic term Abstrac>on for program execu>on Current point of execu>on. Call stack. Contents of memory. The fundamental unit of processing that can be
More informationSearch Engines. Informa1on Retrieval in Prac1ce. Annota1ons by Michael L. Nelson
Search Engines Informa1on Retrieval in Prac1ce Annota1ons by Michael L. Nelson All slides Addison Wesley, 2008 Evalua1on Evalua1on is key to building effec$ve and efficient search engines measurement usually
More informationConcurrent systems Lecture 7: Crash recovery, lock- free programming, and transac<onal memory. Dr Robert N. M. Watson
Concurrent systems Lecture 7: Crash recovery, lock- free programming, and transac
More informationOpenMP Tasking Concepts
UT Aus?n TACC OpenMP Tasking Concepts TACC OpenMP Team milfeld/lars/agomez@tacc.utexas.edu Sides at:?nyurl.com/tacc-openmp or portal.tacc.utexas.edu/training click View Details Learning Objec?ve -- Tasking
More information{HEADSHOT} In this lesson, we will look at the process that enables to leverage this source of real- world tes;ng data.
{HEADSHOT} Despite our best efforts, even a9er extensive tes;ng, we as so9ware developers rarely put out bug- free code. In this lesson, we will look at a type of debugging technique used throughout the
More informationCSE Opera,ng System Principles
CSE 30341 Opera,ng System Principles Synchroniza2on Overview Background The Cri,cal-Sec,on Problem Peterson s Solu,on Synchroniza,on Hardware Mutex Locks Semaphores Classic Problems of Synchroniza,on Monitors
More informationCrowdCode: A Platform for Crowd Development
CrowdCode: A Platform for Crowd Development Thomas D. LaToza 1, Eric Chiquillo 1, 2, W. Ben Towne 3, Christian M. Adriano 1, André van der Hoek 1 1 University of California, Irvine 2 Zynga 3 Carnegie Mellon
More informationHabanero-Java Library: a Java 8 Framework for Multicore Programming
Habanero-Java Library: a Java 8 Framework for Multicore Programming PPPJ 2014 September 25, 2014 Shams Imam, Vivek Sarkar shams@rice.edu, vsarkar@rice.edu Rice University https://wiki.rice.edu/confluence/display/parprog/hj+library
More informationProofs about Programs
Proofs about Programs Program Verification (Rosen, Sections 5.5) TOPICS Program Correctness Preconditions & Postconditions Program Verification Assignment Statements Conditional Statements Loops Composition
More informationCross- Valida+on & ROC curve. Anna Helena Reali Costa PCS 5024
Cross- Valida+on & ROC curve Anna Helena Reali Costa PCS 5024 Resampling Methods Involve repeatedly drawing samples from a training set and refibng a model on each sample. Used in model assessment (evalua+ng
More informationOpera&ng Systems ECE344
Opera&ng Systems ECE344 Lecture 10: Scheduling Ding Yuan Scheduling Overview In discussing process management and synchroniza&on, we talked about context switching among processes/threads on the ready
More informationAutomated UI tests for Mobile Apps. Sedina Oruc
Automated UI tests for Mobile Apps Sedina Oruc What I ll be covering Ø Basics Ø What are UI tests? Ø The no@on of Emulator and Simulator Ø What are our challenges? Ø PlaForm specific UI tes@ng frameworks
More informationData Races vs. Data Race Bugs: Telling the Difference with Portend
Data Races vs. Data Race Bugs: Telling the Difference with Portend Baris Kasikci, Cristian Zamfir, and George Candea School of Computer and Communication Sciences École Polytechnique Fédérale de Lausanne
More informationOS History and OS Structures
OS History and OS Structures Karthik Dantu CSE 421/521: Opera>ng Systems Slides adopted from CS162 class at Berkeley, CSE 451 at U-Washington and CSE 421 by Prof Kosar at UB Join Piazza Ac>on Items From
More informationParallel programming with Java Slides 1: Introduc:on. Michelle Ku=el August/September 2012 (lectures will be recorded)
Parallel programming with Java Slides 1: Introduc:on Michelle Ku=el August/September 2012 mku=el@cs.uct.ac.za (lectures will be recorded) Changing a major assump:on So far, most or all of your study of
More informationLecture 2: Memory in C
CIS 330:! / / / / (_) / / / / _/_/ / / / / / \/ / /_/ / `/ \/ / / / _/_// / / / / /_ / /_/ / / / / /> < / /_/ / / / / /_/ / / / /_/ / / / / / \ /_/ /_/_/_/ _ \,_/_/ /_/\,_/ \ /_/ \ //_/ /_/ Lecture 2:
More informationEECS 482 Introduction to Operating Systems
EECS 482 Introduction to Operating Systems Winter 2018 Baris Kasikci Slides by: Harsha V. Madhyastha Naming and directories How to specify file to be accessed? File name, click on icon, or describe contents
More informationMain Points. Defini&on. Design pa9ern Example: bounded buffer. Condi&on wait/signal/broadcast
Condi&on Variables Main Points Defini&on Condi&on wait/signal/broadcast Design pa9ern Example: bounded buffer Last Time lock_acquire wait un&l lock is free, then take it lock_release release lock, waking
More informationAnnouncements. Problem Set 3 is due this Tuesday! Midterm graded and will be returned on Friday during tutorial (average 60%)
CSC263 Week 7 Announcements Problem Set 3 is due this Tuesday! Midterm graded and will be returned on Friday during tutorial (average 60%) Amortized Analysis O"en, we perform sequences of opera.ons on
More informationNext hop in rou-ng Summary of Future Internet WP1 work. Hannu Flinck
Next hop in rou-ng Summary of Future Internet WP1 work Hannu Flinck Original focus on Rou-ng Scalability Mo$va$on: Internet Architecture Board stated (in RFC 4984): rou-ng scalability is the most important
More informationReminder from last <me
Concurrent systems Lecture 2: Mutual exclusion and process synchronisa
More informationSpeculative Synchronization: Applying Thread Level Speculation to Parallel Applications. University of Illinois
Speculative Synchronization: Applying Thread Level Speculation to Parallel Applications José éf. Martínez * and Josep Torrellas University of Illinois ASPLOS 2002 * Now at Cornell University Overview Allow
More informationCon$nuous Integra$on Development Environment. Kovács Gábor
Con$nuous Integra$on Development Environment Kovács Gábor kovacsg@tmit.bme.hu Before we start anything Select a language Set up conven$ons Select development tools Set up development environment Set up
More informationFounda'ons of So,ware Engineering. Sta$c analysis (1/2) Claire Le Goues
Founda'ons of So,ware Engineering Sta$c analysis (1/2) Claire Le Goues 1 Two fundamental concepts Abstrac'on. Elide details of a specific implementa$on. Capture seman$cally relevant details; ignore the
More informationSQL Injec*on. By Robin Gonzalez
SQL Injec*on By Robin Gonzalez Some things that can go wrong Excessive and Unused Privileges Privilege Abuse Input Injec>on Malware Week Audit Trail Other things that can go wrong Storage Media Exposure
More informationVirtualization. Introduction. Why we interested? 11/28/15. Virtualiza5on provide an abstract environment to run applica5ons.
Virtualization Yifu Rong Introduction Virtualiza5on provide an abstract environment to run applica5ons. Virtualiza5on technologies have a long trail in the history of computer science. Why we interested?
More informationResearch opportuni/es with me
Research opportuni/es with me Independent study for credit - Build PL tools (parsers, editors) e.g., JDial - Build educa/on tools (e.g., Automata Tutor) - Automata theory problems e.g., AutomatArk - Research
More informationEmbedded System Programming
Embedded System Programming Multicore ES (Module 40) Yann-Hang Lee Arizona State University yhlee@asu.edu (480) 727-7507 Summer 2014 The Era of Multi-core Processors RTOS Single-Core processor SMP-ready
More informationWeb applica*on security for dynamic
Web applica*on security for dynamic languages zane@etsy.com @zanelackey Who am I? Security Engineering Manager @ Etsy Lead AppSec/NetSec/SecEng teams Formerly @ isec Partners Books/presenta*ons primarily
More informationDoubleChecker: Efficient Sound and Precise Atomicity Checking
DoubleChecker: Efficient Sound and Precise Atomicity Checking Swarnendu Biswas, Jipeng Huang, Aritra Sengupta, and Michael D. Bond The Ohio State University PLDI 2014 Impact of Concurrency Bugs Impact
More informationLink Layer. w/ credit to Rick Graziani (Cabrillo) for some of the anima<ons
Link Layer w/ credit to Rick Graziani (Cabrillo) for some of the anima
More informationCarnegie Mellon. Synchroniza+on : Introduc+on to Computer Systems Recita+on 14: November 25, Pra+k Shah (pcshah) Sec+on C
Synchroniza+on 15-213: Introduc+on to Computer Systems Recita+on 14: November 25, 2013 Pra+k Shah (pcshah) Sec+on C 1 Topics News Shared State Race condi+ons Synchroniza+on Mutex Semaphore Readers- writers
More informationQuan'fying QoS Requirements of Network Services: A Cheat- Proof Framework
Quan'fying QoS Requirements of Network Services: A Cheat- Proof Framework Kuan- Ta Chen Academia Sinica Chen- Chi Wu Na3onal Taiwan University Yu- Chun Chang Na3onal Taiwan University Chin- Laung Lei Na3onal
More information