Automated Software Transplantation

Size: px
Start display at page:

Download "Automated Software Transplantation"

Transcription

1 Automated Software Transplantation Earl T. Mark Yue Alexandru Justyna Barr Harman Jia Marginean Petke CREST, University College London

2 Why Autotransplantation? ~100 players Why not handle H.264? Video Player Check open source repositories Start from scratch

3 Related Work Manual Code Transplants Clone Detection Code Migration In-Situ Code Reusal Dependence Analysis Feature Location Automatic Error Fixing Code Salvaging Autotransplantation Feature Extraction In-Situ Code Reuse Synchronising Manual Transplants Automatic Replay Copy- Paste

4 Related Work Miles et al.: In situ reuse of logically extracted functional components In-Situ Code Reusal Manual Code Transplants Debugger Automatic Error Fixing Binary Organ Autotransplantation Running Program

5 Related Work Sidiroglou-Douskos et al.: Automatic Error Elimination by Multi-Application Code Transfer Manual Code Transplants Automatic Error Fixing In-Situ Code Reusal Donors Autotransplantation

6 Related Work Autotransplantation Manual Code Transplants In-Situ Code Reusal Automatic Error Fixing

7 Human Organ Transplantation

8 Automated Software Transplantation Donor Manual Work: Organ Entry V ENTRY Organ O Organ s Test Suite Organ s Test Suite Implantation Point

9 μtrans Donor Stage 1: Static Analysis Stage 2: Genetic Programming Stage 3: Organ Implantation Organ s Test Suite Beneficiary

10 Stage 1 Static Analysis Vein Donor Organ ENTRY OE H Implantation Point Matching Table Dependency Graph Donor: Stm: int x = X 10; -> : -> Decl: int int A, B, x; C

11 Stage 2 GP Individual S1 S2 S3 S4 S5 Sn Donor Variable ID V1 D V2 D Matching Table Variable ID (set) V3 H V4 H H V5 V1 H V2 H Genetic Programming Var Matching Stateme nts fitness(i) = M1: V1 D M2: V2 D Does it compile? S1 S7 S73 V1 H V4 H ( 1 3 (1 + TX i T + TP i T ) i 2 I C 0 i/2 I C Strong Weak Proxies: Proxies: Does it Does produce it execute the correct test cases output? without crashing?

12 Research Questions Acceptance Regression Tests Donor Organ RQ1: RQ2: RQ4: RQ3: Do Have Is autotransplantation we How we break about really the the added initial computational new functionality? useful? effort?

13 Research Questions RQ1: Do we break the initial functionality? RQ2: Have we really added new functionality? Empirical Study 15 Transplantations 300 Runs 5 Donors 3 s Case Study: H.264 Encoding Transplantation RQ3: How about the computational effort? RQ4: Is autotransplantation useful?

14 Validation Regression Tests Donor Acceptance Tests RQ1.1 Augmented Regression Tests RQ1.2 Acceptance Tests RQ2 Beneficiary Manual Validation

15 ISSTA * * Artifact Consistent * Complete * Well Documented * Easy to Reuse * Evaluated * AEC * Subjects Subjects Type Size KLOC Reg. Tests Organ Test Suite Idct Donor Mytar Donor Cflow Donor Webserver Donor TuxCrypt Donor Pidgin Cflow SoX Case Study x264 Donor 63-5 VLC Minimal size: 0.4k; Max size: 422k; Average Donor: 16k; Average : 213k;

16 Experimental Methodology Count LOC and Setup CLOC Donor x 20 Implantation Point Organ s Test Suite OE Validation Test Suites GNU Time Ubuntu 14.10, 16 GB Ram 8 threads μscalpel Beneficiary Implantation Point Coverage Information: Gcov Organ

17 ISSTA * * Artifact Consistent * Complete * Well Documented * Easy to Reuse * Evaluated * AEC * Empirical Study RQ1,2 All Test Suites Donor Passed Regression Regression++ Acceptance Idct Pidgin Mytar Pidgin Web Pidgin Cflow Pidgin Tux Pidgin Idct Cflow Mytar Cflow Web Cflow Cflow Cflow Tux Cflow Idct SoX Mytar SoX Web SoX Cflow SoX Tux SoX TOTAL 188/ / / /300 RQ1.1 RQ1.2 RQ2

18 ISSTA * * Artifact Consistent * Complete * Well Documented * Easy to Reuse * Evaluated * AEC * Empirical Study RQ3 Donor Timing Information Execution Time (minutes) Std. Dev. Idct Pidgin Mytar Pidgin Web Pidgin Cflow Pidgin Tux Pidgin Idct Cflow Mytar Cflow Web Cflow Cflow Cflow Tux Cflow Idct SoX Mytar SoX Web SoX Cflow SoX Tux SoX Total Average 334 (min) 10 (Average) RQ3 Total 72 (hours)

19 ISSTA * * Artifact Consistent * Complete * Well Documented * Easy to Reuse * Evaluated * AEC * Case Study RQ4 Second Annual MSU MPEG-4 AVC/ H.264 Codecs Comparison MSU Sixth MPEG-4 AVC/H.264 Transplant Time & Test Suites Video Codecs Comparison, Time with (hours) ~24% better Regression encoding Regression++ Acceptance than second place. H % 100% 100% Doom9's 2005 Codec Shoot-Out

20 Automated Software Transplantation μtrans D Manual Work: Organ Entry Organ s Test Suite V ENTRY O H Organ s Test Suite Donor Stage 1: Static Analysis Stage 2: Genetic Programming Stage 3: Organ Implantation Implantation Point Organ s Test Suite Beneficiary Validation ISSTA * * Artifact Consistent * Complete * Well Documented * Easy to Reuse * Evaluated * AEC * Subjects Regression Tests RQ1.a Augmented Regression Tests RQ1.b Beneficiary Donor Acceptance Tests Acceptance Tests RQ2 Manual Validation Subjects Type Size KLOC Reg. Tests Organ Test Suite Idct Donor Mytar Donor Cflow Donor Webserver Donor TuxCrypt Donor Pidgin Cflow SoX Case Study x264 Donor 63-5 VLC Minimal size: 0.4k; Max size: 422k; Average Donor: 16k; Average : 213k;

Automated smart test design! and its applications in! software transplantation, improvement and android testing!

Automated smart test design! and its applications in! software transplantation, improvement and android testing! Automated smart test design! and its applications in! software transplantation, improvement and android testing! Mark Harman Talk by Mark Harman based on PhD work by Ke Mao, Alex Marginean Jointly supervised

More information

An Unsystematic Review of Genetic Improvement. David R. White University of Glasgow UCL Crest Open Workshop, Jan 2016

An Unsystematic Review of Genetic Improvement. David R. White University of Glasgow UCL Crest Open Workshop, Jan 2016 An Unsystematic Review of Genetic Improvement David R. White University of Glasgow UCL Crest Open Workshop, Jan 2016 A Systematic Study of GI is currently under preparation. Justyna Petke Mark Harman Bill

More information

Babel Pidgin: SBSE Can Grow and Graft Entirely New Functionality into a Real World System

Babel Pidgin: SBSE Can Grow and Graft Entirely New Functionality into a Real World System Babel Pidgin: SBSE Can Grow and Graft Entirely New Functionality into a Real World System Mark Harman, Yue Jia, and William B. Langdon University College London, CREST centre, UK Abstract. Adding new functionality

More information

Scaling Regression Testing to Large Software Systems

Scaling Regression Testing to Large Software Systems Scaling Regression Testing to Large Software Systems Alessandro Orso Co-authors: Nanjuan Shi, Mary Jean Harrold College of Computing Georgia Institute of Technology Supported in part by National Science

More information

Highly Scalable Multi-Objective Test Suite Minimisation Using Graphics Card

Highly Scalable Multi-Objective Test Suite Minimisation Using Graphics Card Highly Scalable Multi-Objective Test Suite Minimisation Using Graphics Card Shin Yoo, Mark Harman CREST, University College London, UK Shmuel Ur University of Bristol, UK It is all good improving SBSE

More information

Searching for Configurations in Clone Evaluation A Replication Study

Searching for Configurations in Clone Evaluation A Replication Study Searching for Configurations in Clone Evaluation A Replication Study Chaiyong Ragkhitwetsagul 1, Matheus Paixao 1, Manal Adham 1 Saheed Busari 1, Jens Krinke 1 and John H. Drake 2 1 University College

More information

Testing and Debugging C Programming and Software Tools. N.C. State Department of Computer Science

Testing and Debugging C Programming and Software Tools. N.C. State Department of Computer Science Testing and Debugging C Programming and Software Tools N.C. State Department of Computer Science Introduction Majority of software development is testing, debugging, and bug fixing The best software developers

More information

An Extensive Study of Static Regression Test Selection in Modern Software Evolution

An Extensive Study of Static Regression Test Selection in Modern Software Evolution An Extensive Study of Static Regression Test Selection in Modern Software Evolution Owolabi Legunsen, Farah Hariri, August Shi, Yafeng Lu, Lingming Zhang, and Darko Marinov FSE 2016 Seattle, Washington

More information

Automatic Repair of Real Bugs in Java: A Large-Scale Experiment on the Defects4J Dataset

Automatic Repair of Real Bugs in Java: A Large-Scale Experiment on the Defects4J Dataset Automatic Repair of Real Bugs in Java: A Large-Scale Experiment on the Defects4J Dataset Matias Martinez, Thomas Durieux, Romain Sommerard, Jifeng Xuan, Martin Monperrus 1 Automatic Software Repair Automatic

More information

Overview of SBSE. CS454, Autumn 2017 Shin Yoo

Overview of SBSE. CS454, Autumn 2017 Shin Yoo Overview of SBSE CS454, Autumn 2017 Shin Yoo Search-Based Software Engineering Application of all the optimisation techniques we have seen so far, to the various problems in software engineering. Not web

More information

Amortised Optimisation as a Means to Achieve Genetic Improvement

Amortised Optimisation as a Means to Achieve Genetic Improvement Amortised Optimisation as a Means to Achieve Genetic Improvement Hyeongjun Cho, Sungwon Cho, Seongmin Lee, Jeongju Sohn, and Shin Yoo Date 2017.01.30, The 50th CREST Open Workshop Offline Improvement Expensive

More information

JenkinsPipelineUnit. Test your Continuous Delivery Pipeline. Ozan Gunalp - Emmanuel Quincerot

JenkinsPipelineUnit. Test your Continuous Delivery Pipeline. Ozan Gunalp - Emmanuel Quincerot JenkinsPipelineUnit Test your Continuous Delivery Pipeline Ozan Gunalp - Emmanuel Quincerot Who we are Ozan Günalp Emmanuel Quincerot Developer at LesFurets Developer at LesFurets PhD in Computer Science

More information

The Quest for Cheaper Variable Tracking in GCC Alexandre Oliva

The Quest for Cheaper Variable Tracking in GCC Alexandre Oliva 1 The Quest for Cheaper Variable Tracking in GCC Alexandre Oliva aoliva@redhat.com http://identi.ca/lxoliva/ http://people.redhat.com/~aoliva/ GNU Tools Cauldron, 2012 Copyright 2012 Red Hat, Inc. This

More information

Exceptions Programming 1 C# Programming. Rob Miles

Exceptions Programming 1 C# Programming. Rob Miles Exceptions 08101 Programming 1 C# Programming Rob Miles Exceptions There are two kinds of programming error Compilation error Compiler complains that our source is not valid C# Run time error Program crashes

More information

Exceptions. Exceptions. Exceptional Circumstances 11/25/2013

Exceptions. Exceptions. Exceptional Circumstances 11/25/2013 08101 Programming 1 C# Programming Rob Miles There are two kinds of programming error Compilation error Compiler complains that our source is not valid C# Run time error Program crashes when it runs Most

More information

Developer Recommendation for Crowdsourced Software Development Tasks

Developer Recommendation for Crowdsourced Software Development Tasks Developer Recommendation for Crowdsourced Software Development Tasks CREST Centre University College London k.mao@cs.ucl.ac.uk March 30, 2015 San Francisco, USA OUTLINE INTRODUCTION Motivation Problem

More information

Testing Django Configurations Using Combinatorial Interaction Testing

Testing Django Configurations Using Combinatorial Interaction Testing Testing Django Configurations Using Combinatorial Interaction Testing Justyna Petke CREST Centre, University College London, UK j.petke@ucl.ac.uk Abstract. Combinatorial Interaction Testing (CIT) is important

More information

TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. X, NO. X, MONTH YEAR 1

TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. X, NO. X, MONTH YEAR 1 TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. X, NO. X, MONTH YEAR 1 Specialising Software for Different Downstream Applications Using Genetic Improvement and Code Transplantation Justyna Petke, Mark Harman,

More information

Testing, code coverage and static analysis. COSC345 Software Engineering

Testing, code coverage and static analysis. COSC345 Software Engineering Testing, code coverage and static analysis COSC345 Software Engineering Outline Various testing processes ad hoc / formal / automatic Unit tests and test driven development Code coverage metrics Integration

More information

OSSPolice - Identifying Open-Source License Violation and 1-day Security Risk at Large Scale

OSSPolice - Identifying Open-Source License Violation and 1-day Security Risk at Large Scale OSSPolice - Identifying Open-Source License Violation and 1-day Security Risk at Large Scale Ruian Duan, Ashish Bijlani, Meng Xu Taesoo Kim, Wenke Lee ACM CCS 2017 1 Background Open Source Software (OSS)

More information

RELIABLE SOFTWARE SYSTEMS

RELIABLE SOFTWARE SYSTEMS gh@jpl.nasa.gov RELIABLE SOFTWARE SYSTEMS +50 1969 2019 LM: less than 10K lines of code (C-equiv) (36K ROM, 2K RAM, 43Khz cycle) Altair: est. 10M lines of code (est. 1GB RAM, est. 1Ghz cycle) 3 orders

More information

Multi-Objective Higher Order Mutation Testing with Genetic Programming

Multi-Objective Higher Order Mutation Testing with Genetic Programming Multi-Objective Higher Order Mutation Testing with Genetic Programming W. B. Langdon King s College, London W. B. Langdon, Crest 1 Introduction What is mutation testing 2 objectives: Hard to kill, little

More information

Counterexample Guided Inductive Optimization Applied to Mobile Robot Path Planning SBR/LARS 2017

Counterexample Guided Inductive Optimization Applied to Mobile Robot Path Planning SBR/LARS 2017 Cnterexample Guided Inductive Optimization Applied to Mobile Robot Path Planning SBR/LARS 2017 Rodrigo Araújo, Alexandre Ribeiro, Iury Bessa, Lucas Cordeiro, and João Edgar Chaves Filho Federal University

More information

Evolving Human Competitive Research Spectra-Based Note Fault Localisation Techniques

Evolving Human Competitive Research Spectra-Based Note Fault Localisation Techniques UCL DEPARTMENT OF COMPUTER SCIENCE Research Note RN/12/03 Evolving Human Competitive Research Spectra-Based Note Fault Localisation Techniques RN/17/07 Deep Parameter Optimisation for Face Detection Using

More information

Video Encoding with. Multicore Processors. March 29, 2007 REAL TIME HD

Video Encoding with. Multicore Processors. March 29, 2007 REAL TIME HD Video Encoding with Multicore Processors March 29, 2007 Video is Ubiquitous... Demand for Any Content Any Time Any Where Resolution ranges from 128x96 pixels for mobile to 1920x1080 pixels for full HD

More information

A CP approach of the variability testing of software product lines

A CP approach of the variability testing of software product lines A CP approach of the variability testing of software product lines Arnaud Gotlieb Certus Centre Simula Research Laboratory Norway 1/32 The Certus Centre Software Validation and Verification Cisco Systems

More information

A Serializability Violation Detector for Shared-Memory Server Programs

A Serializability Violation Detector for Shared-Memory Server Programs A Serializability Violation Detector for Shared-Memory Server Programs Min Xu Rastislav Bodík Mark Hill University of Wisconsin Madison University of California, Berkeley Serializability Violation Detector:

More information

Programming Multicore Systems

Programming Multicore Systems Programming Multicore Systems Enabling real time applications for multicore with the XMOS development tools 5 th September 2011 Matt Fyles XMOS Company Overview Established Fabless Semiconductor Company

More information

Test Automation. 20 December 2017

Test Automation. 20 December 2017 Test Automation 20 December 2017 The problem of test automation Testing has repetitive components, so automation is justified The problem is cost-benefit evaluation of automation [Kaner] Time for: test

More information

CNIT 127: Exploit Development. Ch 2: Stack Overflows in Linux

CNIT 127: Exploit Development. Ch 2: Stack Overflows in Linux CNIT 127: Exploit Development Ch 2: Stack Overflows in Linux Stack-based Buffer Overflows Most popular and best understood exploitation method Aleph One's "Smashing the Stack for Fun and Profit" (1996)

More information

4. Jump to *RA 4. StackGuard 5. Execute code 5. Instruction Set Randomization 6. Make system call 6. System call Randomization

4. Jump to *RA 4. StackGuard 5. Execute code 5. Instruction Set Randomization 6. Make system call 6. System call Randomization 04/04/06 Lecture Notes Untrusted Beili Wang Stages of Static Overflow Solution 1. Find bug in 1. Static Analysis 2. Send overflowing input 2. CCured 3. Overwrite return address 3. Address Space Randomization

More information

Aria VMX Emulation Framework

Aria VMX Emulation Framework Aria VMX Emulation Framework v 0.4 Created By Oriol Prat Revised and Modified by Mauricio Alvarez Contact information: alvarez@ac.upc.edu 1. Introduction and design objectives The main idea was to add

More information

Software Testing 2. OOD and Testability. White box vs Black box Testing. Software Testing 2 Semester 1, 2006

Software Testing 2. OOD and Testability. White box vs Black box Testing. Software Testing 2 Semester 1, 2006 Software Testing 2 Jens Dietrich OOD and Testability Component based design and component based unit testing. Design that isolates component that are difficult to test (automatically) (such as user interfaces).

More information

Evolving a CUDA Kernel from an nvidia Template

Evolving a CUDA Kernel from an nvidia Template Evolving a CUDA Kernel from an nvidia Template W. B. Langdon CREST lab, Department of Computer Science 16a.7.2010 Introduction Using genetic programming to create C source code How? Why? Proof of concept:

More information

Genetic improvement of software: a case study

Genetic improvement of software: a case study Genetic improvement of software: a case study Justyna Petke Centre for Research on Evolution, Search and Testing Department of Computer Science, UCL, London Genetic Improvement Programming Automatically

More information

Automatically Finding Patches Using Genetic Programming. Westley Weimer, Claire Le Goues, ThanVu Nguyen, Stephanie Forrest

Automatically Finding Patches Using Genetic Programming. Westley Weimer, Claire Le Goues, ThanVu Nguyen, Stephanie Forrest Automatically Finding Patches Using Genetic Programming Westley Weimer, Claire Le Goues, ThanVu Nguyen, Stephanie Forrest Motivation Software Quality remains a key problem Over one half of 1 percent of

More information

Checkpointing using DMTCP, Condor, Matlab and FReD

Checkpointing using DMTCP, Condor, Matlab and FReD Checkpointing using DMTCP, Condor, Matlab and FReD Gene Cooperman (presenting) High Performance Computing Laboratory College of Computer and Information Science Northeastern University, Boston gene@ccs.neu.edu

More information

Research compiler that will become Scala 3 Type system internals redesigned, inspired by DOT, but externally very similar More info:

Research compiler that will become Scala 3 Type system internals redesigned, inspired by DOT, but externally very similar More info: INTEGRATING IDEs WITH DOTTY Guillaume Martres - EPFL 1 WHAT IS DOTTY? Research compiler that will become Scala 3 Type system internals redesigned, inspired by DOT, but externally very similar More info:

More information

Microsoft SAGE and LLVM KLEE. Julian Cohen Manual and Automatic Program Analysis

Microsoft SAGE and LLVM KLEE. Julian Cohen Manual and Automatic Program Analysis Microsoft SAGE and LLVM KLEE Julian Cohen HockeyInJune@isis.poly.edu Manual and Automatic Program Analysis KLEE KLEE [OSDI 2008, Best Paper Award] Based on symbolic execution and constraint solving techniques

More information

arxiv: v1 [cs.se] 1 Mar 2017

arxiv: v1 [cs.se] 1 Mar 2017 Test Case Generation for Program Repair: A Study of Feasibility and Effectiveness Zhongxing Yu, Matias Martinez, Benjamin Danglot, Thomas Durieux and Martin Monperrus arxiv:1703.00198v1 [cs.se] 1 Mar 2017

More information

Java Software Solutions for AP Computer Science 3rd Edition, Lewis et al. 2011

Java Software Solutions for AP Computer Science 3rd Edition, Lewis et al. 2011 A Correlation of AP Computer Science 3rd Edition, Lewis et al. 2011 To the INTRODUCTION This document demonstrates how AP (Advanced Placement) Computer Science, 3rd Edition 2011, Lewis et al. meets the

More information

Install Vlc Manually Ubuntu

Install Vlc Manually Ubuntu Install Vlc Manually Ubuntu 1 / 6 2 / 6 3 / 6 Install Vlc Manually Ubuntu How to install an application in Ubuntu The Most asked question by the majority of newbie. People who have migrated from windows

More information

CREATIVE BUILD GUIDE LOWRIDER

CREATIVE BUILD GUIDE LOWRIDER CREATIVE BUILD GUIDE LOWRIDER LOWRIDER CREATIVE SPECS Animation format: Initial dimensions: 970px (w) 40px (h) Maximum expanded dimensions: 970px (w) x 245px (h) Maximum file size: 150KB File format: SWF

More information

Optimized architectures of CABAC codec for IA-32-, DSP- and FPGAbased

Optimized architectures of CABAC codec for IA-32-, DSP- and FPGAbased Optimized architectures of CABAC codec for IA-32-, DSP- and FPGAbased platforms Damian Karwowski, Marek Domański Poznan University of Technology, Chair of Multimedia Telecommunications and Microelectronics

More information

Automatic Error Elimination by Horizontal Code Transfer Across Multiple Applications

Automatic Error Elimination by Horizontal Code Transfer Across Multiple Applications Automatic Error Elimination by Horizontal Code Transfer Across Multiple Applications Stelios Sidiroglou-Douskos Eric Lahtinen Fan Long Martin Rinard slide author names omitted for FERPA compliance Motivation

More information

MINTS: A General Framework and Tool for Supporting Test-suite Minimization

MINTS: A General Framework and Tool for Supporting Test-suite Minimization MINTS: A General Framework and Tool for Supporting Test-suite Minimization Hwa-You Hsu and Alessandro Orso College of Computing Georgia Institute of Technology {hsu orso}@cc.gatech.edu ABSTRACT Regression

More information

Automatically Finding Patches Using Genetic Programming

Automatically Finding Patches Using Genetic Programming Automatically Finding Patches Using Genetic Programming Westley Weimer, Stephanie Forrest, Claire Le Goues, ThanVu Nguyen, Ethan Fast, Briana Satchell, Eric Schulte Motivation Software Quality remains

More information

Test Factoring: Focusing test suites on the task at hand

Test Factoring: Focusing test suites on the task at hand Test Factoring: Focusing test suites on the task at hand, MIT ASE 2005 1 The problem: large, general system tests My test suite One hour Where I changed code Where I broke code How can I get: Quicker feedback?

More information

Lecture 20. Delta Debugging Regression Testing. EE 382V Spring 2009 Software Evolution - Instructor Miryung Kim

Lecture 20. Delta Debugging Regression Testing. EE 382V Spring 2009 Software Evolution - Instructor Miryung Kim Lecture 20 Delta Debugging Regression Testing EE 382V Spring 2009 Software Evolution - Instructor Miryung Kim Today s Agenda Regression Testing Delta Debugging: Presentation by Divya (advocate) Presentation

More information

Crawlability Metrics for Web Applications

Crawlability Metrics for Web Applications Crawlability Metrics for Web Applications N. Alshahwan 1, M. Harman 1, A. Marchetto 2, R. Tiella 2, P. Tonella 2 1 University College London, UK 2 Fondazione Bruno Kessler, Trento, Italy ICST 2012 - Montreal

More information

Intel Parallel Studio XE 2015 Composer Edition for Linux* Installation Guide and Release Notes

Intel Parallel Studio XE 2015 Composer Edition for Linux* Installation Guide and Release Notes Intel Parallel Studio XE 2015 Composer Edition for Linux* Installation Guide and Release Notes 23 October 2014 Table of Contents 1 Introduction... 1 1.1 Product Contents... 2 1.2 Intel Debugger (IDB) is

More information

Cost of Concurrency in Hybrid Transactional Memory. Trevor Brown (University of Toronto) Srivatsan Ravi (Purdue University)

Cost of Concurrency in Hybrid Transactional Memory. Trevor Brown (University of Toronto) Srivatsan Ravi (Purdue University) Cost of Concurrency in Hybrid Transactional Memory Trevor Brown (University of Toronto) Srivatsan Ravi (Purdue University) 1 Transactional Memory: a history Hardware TM Software TM Hybrid TM 1993 1995-today

More information

Regression testing for the effective upgrade of an automatic track protection system

Regression testing for the effective upgrade of an automatic track protection system Regression testing for the effective upgrade of an automatic track protection system Dr. Petr Štěpán Ph.D. Czech Technical University in Prague AŽD Praha Zero on-site testing is very important for effective

More information

Design of a High Speed CAVLC Encoder and Decoder with Parallel Data Path

Design of a High Speed CAVLC Encoder and Decoder with Parallel Data Path Design of a High Speed CAVLC Encoder and Decoder with Parallel Data Path G Abhilash M.Tech Student, CVSR College of Engineering, Department of Electronics and Communication Engineering, Hyderabad, Andhra

More information

Approximate Computing Is Dead; Long Live Approximate Computing. Adrian Sampson Cornell

Approximate Computing Is Dead; Long Live Approximate Computing. Adrian Sampson Cornell Approximate Computing Is Dead; Long Live Approximate Computing Adrian Sampson Cornell Hardware Programming Quality Domains Hardware Programming No more approximate functional units. Quality Domains Narrower

More information

DSPACE: LISA Methodology

DSPACE: LISA Methodology DSPACE: LISA Methodology Maximilian Odendahl ESA DSP Day, Noordwjik, 28.8.2012 Institute for Communication Technologies and Embedded Systems Outline 2 Introduction DSPACE Requirements LISA Methodology

More information

KLEE: Effective Testing of Systems Programs Cristian Cadar

KLEE: Effective Testing of Systems Programs Cristian Cadar KLEE: Effective Testing of Systems Programs Cristian Cadar Joint work with Daniel Dunbar and Dawson Engler April 16th, 2009 Writing Systems Code Is Hard Code complexity Tricky control flow Complex dependencies

More information

KLEE Workshop Feeding the Fuzzers. with KLEE. Marek Zmysłowski MOBILE SECURITY TEAM R&D INSTITUTE POLAND

KLEE Workshop Feeding the Fuzzers. with KLEE. Marek Zmysłowski MOBILE SECURITY TEAM R&D INSTITUTE POLAND Feeding the Fuzzers with KLEE Marek Zmysłowski MOBILE SECURITY TEAM R&D INSTITUTE POLAND This presentation was created with help and commitment of the Samsung R&D Poland Mobile Security team. KLEE and

More information

Towards Automatic Cost Model Discovery for Combinatorial Interaction Testing

Towards Automatic Cost Model Discovery for Combinatorial Interaction Testing Towards Automatic Cost Model Discovery for Combinatorial Interaction Testing Gulsen Demiroz and Cemal Yilmaz {gulsend, cyilmaz}@sabanciuniv.edu Sabanci University, Istanbul, Turkey 5 th International Workshop

More information

Masternode Setup Guide Local Wallet with VPS Server

Masternode Setup Guide Local Wallet with VPS Server Masternode Setup Guide Local Wallet with VPS Server What you will need: 1) Local computer windows 7-10 2) Remote server VPS [vultr.com] 3) PuTTY to configure and setup VPS 4) 10,000 PHR If you would like

More information

Be Conservative: Enhancing Failure Diagnosis with Proactive Logging

Be Conservative: Enhancing Failure Diagnosis with Proactive Logging Be Conservative: Enhancing Failure Diagnosis with Proactive Logging Ding Yuan, Soyeon Park, Peng Huang, Yang Liu, Michael Lee, Xiaoming Tang, Yuanyuan Zhou, Stefan Savage University of California, San

More information

Hardware Software Co-design and SoC. Neeraj Goel IIT Delhi

Hardware Software Co-design and SoC. Neeraj Goel IIT Delhi Hardware Software Co-design and SoC Neeraj Goel IIT Delhi Introduction What is hardware software co-design Some part of application in hardware and some part in software Mpeg2 decoder example Prediction

More information

Chromium Blink on Wayland with HW accelerated video playback using Gstreamer

Chromium Blink on Wayland with HW accelerated video playback using Gstreamer Chromium Blink on Wayland with HW accelerated video playback using Gstreamer Presented by Zoltan Kuscsik, PhD Christophe Priouzeau Date February 2015 Introduction Chromium Browser builds using OE Ozone

More information

Call Paths for Pin Tools

Call Paths for Pin Tools , Xu Liu, and John Mellor-Crummey Department of Computer Science Rice University CGO'14, Orlando, FL February 17, 2014 What is a Call Path? main() A() B() Foo() { x = *ptr;} Chain of function calls that

More information

Directed Test Suite Augmentation

Directed Test Suite Augmentation University of Nebraska - Lincoln DigitalCommons@University of Nebraska - Lincoln Computer Science and Engineering: Theses, Dissertations, and Student Research Computer Science and Engineering, Department

More information

Measuring Z-stage accuracy using a force sensor

Measuring Z-stage accuracy using a force sensor Measuring Z-stage accuracy using a force sensor Sancho Adam Southwest Test Conference June 2007 Contents Introduction / Background Objectives / Goals Methods / Materials / Procedures Results / Relevant

More information

Genetic Improvement Demo: count blue pixels Goal: reduced runtime

Genetic Improvement Demo: count blue pixels Goal: reduced runtime 14 th TAROT Summer School 2018 UCL, 2-6 th July 2018 Genetic Improvement Demo: count blue pixels Goal: reduced runtime W. B. Langdon Computer Science, University College, London Assumes Linux, tcsh, gcc

More information

HLS Authoring Update. Media #WWDC17. Eryk Vershen, AVFoundation Engineer

HLS Authoring Update. Media #WWDC17. Eryk Vershen, AVFoundation Engineer Session Media #WWDC17 HLS Authoring Update 515 Eryk Vershen, AVFoundation Engineer 2017 Apple Inc. All rights reserved. Redistribution or public display not permitted without written permission from Apple.

More information

Memory & Thread Debugger

Memory & Thread Debugger Memory & Thread Debugger Here is What Will Be Covered Overview Memory/Thread analysis New Features Deep dive into debugger integrations Demo Call to action Intel Confidential 2 Analysis Tools for Diagnosis

More information

Augmenting a C++/PLI/VCS Based Verification Environment with SystemC

Augmenting a C++/PLI/VCS Based Verification Environment with SystemC Augmenting a C++/PLI/VCS Based Verification Environment Dr. Ambar Sarkar Paradigm Works Inc. ambar.sarkar@paradigm-works.com ABSTRACT Due to increased popularity of high-level verification languages (HVLs)

More information

HOMI: Searching Higher Order Mutants for Software Improvement

HOMI: Searching Higher Order Mutants for Software Improvement HOMI: Searching Higher Order Mutants for Software Improvement Fan Wu (B), Mark Harman, Yue Jia, and Jens Krinke Department of Computer Science, UCL, Gower Street, London WC1E 6BT, UK {fan.wu.12,mark.harman,yue.jia,j.krinke}@ucl.ac.uk

More information

Combining Bug Detection and Test Case Generation

Combining Bug Detection and Test Case Generation Combining Bug Detection and Test Case Generation Martin Kellogg University of Washington, USA kelloggm@cs.washington.edu ABSTRACT Detecting bugs in software is an important software engineering activity.

More information

Dynamic Inference of Abstract Types

Dynamic Inference of Abstract Types Dynamic Inference of Abstract Types Philip J. Guo, Jeff H. Perkins, Stephen McCamant, Michael D. Ernst Computer Science and A.I. Lab Massachusetts Institute of Technology Declared types // Order cost =

More information

Lab-1: Profiling/Optimizing Video Decoder Using ADS. National Chiao Tung University Chun-Jen Tsai 3/3/2011

Lab-1: Profiling/Optimizing Video Decoder Using ADS. National Chiao Tung University Chun-Jen Tsai 3/3/2011 Lab-1: Profiling/Optimizing Video Decoder Using ADS National Chiao Tung University Chun-Jen Tsai 3/3/2011 Profiling MPEG-4 SP Decoder Goal: Profiling and optimizing the MPEG-4 video decoder, m4v_dec Tasks:

More information

Opening Mobile Phones to Multimodal Interaction - The Multimodal Hub Approach

Opening Mobile Phones to Multimodal Interaction - The Multimodal Hub Approach Opening Mobile Phones to Multimodal Interaction - The Multimodal Hub Approach Nilo Menezes (Multitel ASBL) Sophia Antipolis, France, November 19, 2008 Agenda Our case The OI Kernel Multimodal Applications

More information

CSCE 463/612: Networks and Distributed Processing Homework 1 Part 2 (25 pts) Due date: 1/29/19

CSCE 463/612: Networks and Distributed Processing Homework 1 Part 2 (25 pts) Due date: 1/29/19 CSCE 463/612: Networks and Distributed Processing Homework 1 Part 2 (25 pts) Due date: 1/29/19 1. Problem Description You will now expand into downloading multiple URLs from an input file using a single

More information

KClone: A Proposed Approach to Fast Precise Code Clone Detection

KClone: A Proposed Approach to Fast Precise Code Clone Detection KClone: A Proposed Approach to Fast Precise Code Clone Detection Yue Jia 1, David Binkley 2, Mark Harman 1, Jens Krinke 1 and Makoto Matsushita 3 1 King s College London 2 Loyola College in Maryland 3

More information

EE458 - Embedded Systems Lecture 4 Embedded Devel.

EE458 - Embedded Systems Lecture 4 Embedded Devel. EE458 - Embedded Lecture 4 Embedded Devel. Outline C File Streams References RTC: Chapter 2 File Streams man pages 1 Cross-platform Development Environment 2 Software available on the host system typically

More information

Enhancing cloud energy models for optimizing datacenters efficiency.

Enhancing cloud energy models for optimizing datacenters efficiency. Outin, Edouard, et al. "Enhancing cloud energy models for optimizing datacenters efficiency." Cloud and Autonomic Computing (ICCAC), 2015 International Conference on. IEEE, 2015. Reviewed by Cristopher

More information

Acceleration of Virtual Machine Live Migration on QEMU/KVM by Reusing VM Memory

Acceleration of Virtual Machine Live Migration on QEMU/KVM by Reusing VM Memory Acceleration of Virtual Machine Live Migration on QEMU/KVM by Reusing VM Memory Soramichi Akiyama Department of Creative Informatics Graduate School of Information Science and Technology The University

More information

VOCEWEB R&D Center CTO 이재규

VOCEWEB R&D Center CTO 이재규 VOCEWEB R&D Center CTO 이재규 jakelee@voceweb.com Agenda Video Encoding Technology Overview ME Implementation Using CUDA Issues on Parallel Video Encoding Q&A Video Encoding 왜중요한가? 현대는 Media의전성시대 HDTV, DMB,

More information

Midterm Wednesday Oct. 27, 7pm, room 142

Midterm Wednesday Oct. 27, 7pm, room 142 Regression Testing Midterm Wednesday Oct. 27, 7pm, room 142 In class, closed book eam Includes all the material covered up (but not including) symbolic eecution Need to understand the concepts, know the

More information

Kitsune: Efficient, General-Purpose Dynamic Software Updating for C

Kitsune: Efficient, General-Purpose Dynamic Software Updating for C Kitsune: Efficient, General-Purpose Dynamic Software Updating for C Michael Hicks work with Christopher M. Hayden, Ted K. Smith, Michail Denchev, Karla Saur, and Jeffrey Foster 1 Software updates are crucial

More information

Performance Tuning NGINX

Performance Tuning NGINX Performance Tuning NGINX Name: Amir Rawdat Currently: Technical Marketing Engineer at NGINX inc. Previously: - Customer Applications Engineer at Nokia inc. Multi-Process Architecture with QPI Bus Web Server

More information

High-Level Synthesis of Programmable Hardware Accelerators Considering Potential Varieties

High-Level Synthesis of Programmable Hardware Accelerators Considering Potential Varieties THE INSTITUTE OF ELECTRONICS, INFORMATION AND COMMUNICATION ENGINEERS TECHNICAL REPORT OF IEICE.,, (VDEC) 113 8656 7 3 1 CREST E-mail: hiroaki@cad.t.u-tokyo.ac.jp, fujita@ee.t.u-tokyo.ac.jp SoC Abstract

More information

Quantifying and Assessing the Merge of Cloned Web-Based System: An Exploratory Study

Quantifying and Assessing the Merge of Cloned Web-Based System: An Exploratory Study Quantifying and Assessing the Merge of Cloned Web-Based System: An Exploratory Study Jadson Santos Department of Informatics and Applied Mathematics Federal University of Rio Grande do Norte, UFRN Natal,

More information

FFmpeg The Media Swiss Army Knife. Jess Portnoy Kaltura, Inc

FFmpeg The Media Swiss Army Knife. Jess Portnoy Kaltura, Inc FFmpeg The Media Swiss Army Knife Jess Portnoy jess.portnoy@kaltura.com, Kaltura, Inc Abstract FFmpeg is a FOSS, cross platform, solution to record, convert and stream audio and video. This session will

More information

Open2Test Test Automation Framework Introduction - TestPartner

Open2Test Test Automation Framework Introduction - TestPartner Introduction - TestPartner Version 1.0 September 2009 DISCLAIMER Verbatim copying and distribution of this entire article is permitted worldwide, without royalty, in any medium, provided this notice is

More information

Source level debugging. October 18, 2016

Source level debugging. October 18, 2016 Source level debugging October 18, 2016 Source level debugging Source debugging is a nice tool for debugging execution problems; it can be particularly useful when working with crashed programs that leave

More information

texdoc 2.0 An update on creating LaTeX documents from within Stata Example 1

texdoc 2.0 An update on creating LaTeX documents from within Stata Example 1 texdoc 2.0 An update on creating LaTeX documents from within Stata Contents Example 1 Ben Jann University of Bern, ben.jann@soz.unibe.ch UK Stata Users Group meeting London, September 89, 2016 1 The texdoc

More information

Early Performance-Cost Estimation of Application-Specific Data Path Pipelining

Early Performance-Cost Estimation of Application-Specific Data Path Pipelining Early Performance-Cost Estimation of Application-Specific Data Path Pipelining Jelena Trajkovic Computer Science Department École Polytechnique de Montréal, Canada Email: jelena.trajkovic@polymtl.ca Daniel

More information

SOFTWARE MAINTENANCE AND EVOLUTION --- REFACTORING FOR ASYNC --- CS563 WEEK 3 - THU

SOFTWARE MAINTENANCE AND EVOLUTION --- REFACTORING FOR ASYNC --- CS563 WEEK 3 - THU SOFTWARE MAINTENANCE AND EVOLUTION --- REFACTORING FOR ASYNC --- CS563 WEEK 3 - THU Danny Dig Course Objectives: Project Practice a research or novel-industrial project through all its stages: - formulate

More information

More performance options

More performance options More performance options OpenCL, streaming media, and native coding options with INDE April 8, 2014 2014, Intel Corporation. All rights reserved. Intel, the Intel logo, Intel Inside, Intel Xeon, and Intel

More information

picoq: Parallel Regression Proving for Large-Scale Verification Projects

picoq: Parallel Regression Proving for Large-Scale Verification Projects picoq: Parallel Regression Proving for Large-Scale Verification Projects Karl Palmskog, Ahmet Celik, and Milos Gligoric The University of Texas at Austin, USA 1 / 29 Introduction Verification Using Proof

More information

Evolving a CUDA Kernel from an nvidia Template

Evolving a CUDA Kernel from an nvidia Template Evolving a CUDA Kernel from an nvidia Template W. B. Langdon CREST lab, Department of Computer Science 11.5.2011 Introduction Using genetic programming to create C source code How? Why? Proof of concept:

More information

Analyzing the Product Line Adequacy of Existing Components

Analyzing the Product Line Adequacy of Existing Components Analyzing the Product Line Adequacy of Existing Components Jens Knodel and Dirk Muthig Fraunhofer Institute for Experimental Software Engineering (IESE), Fraunhofer-Platz 1, D-67663 Kaiserslautern, Germany

More information

Safe Reactive Programming: the FunLoft Proposal

Safe Reactive Programming: the FunLoft Proposal Safe Reactive Programming: the FunLoft Proposal Frédéric Boussinot MIMOSA Project, Inria Sophia-Antipolis (Joint work with Frédéric Dabrowski) http://www.inria.fr/mimosa/rp With support from ALIDECS SYNCHRON

More information

DownloadToshiba satellite a350 10a drivers. Get file exe GdipRecordMetafileStream AUDIOSES. Toshiba satellite a350 10a drivers

DownloadToshiba satellite a350 10a drivers. Get file exe GdipRecordMetafileStream AUDIOSES. Toshiba satellite a350 10a drivers DownloadToshiba satellite a350 10a drivers. Get file exe GdipRecordMetafileStream AUDIOSES. Toshiba satellite a350 10a drivers Toshiba satellite a350 10a drivers He just looks at the mobile specs and goes

More information

Fixing software bugs in 10 minutes or less using evolutionary computation

Fixing software bugs in 10 minutes or less using evolutionary computation Fixing software bugs in 10 minutes or less using evolutionary computation University of New Mexico Stephanie Forrest ThanhVu Nguyen University of Virginia Claire Le Goues Westley Weimer Summary of method

More information

Unable to import. ive read the docs/searched forums Posted by BuddyElkor - 05 May :02

Unable to import. ive read the docs/searched forums Posted by BuddyElkor - 05 May :02 Unable to import. ive read the docs/searched forums Posted by BuddyElkor - 05 May 2018 21:02 Using trial version. Im unable to import anything. Ive tried converting to mp4/aac/mp3/mpg2(ive tried many more

More information