CISC 879 - Machine Learning for Solving Systems Problems Presented by: Alparslan SARI Dept of Computer & Information Sciences University of Delaware

Slides:



Advertisements
Similar presentations
Feedback Control Real-Time Scheduling: Framework, Modeling, and Algorithms Chenyang Lu, John A. Stankovic, Gang Tao, Sang H. Son Presented by Josh Carl.
Advertisements

Efficient Program Compilation through Machine Learning Techniques Gennady Pekhimenko IBM Canada Angela Demke Brown University of Toronto.
To Share or Not to Share? Ryan Johnson Nikos Hardavellas, Ippokratis Pandis, Naju Mancheril, Stavros Harizopoulos**, Kivanc Sabirli, Anastasia Ailamaki,
Overcoming Limitations of Sampling for Agrregation Queries Surajit ChaudhuriMicrosoft Research Gautam DasMicrosoft Research Mayur DatarStanford University.
Scalable Multi-Cache Simulation Using GPUs Michael Moeng Sangyeun Cho Rami Melhem University of Pittsburgh.
Data Mining Methodology 1. Why have a Methodology  Don’t want to learn things that aren’t true May not represent any underlying reality ○ Spurious correlation.
Image Indexing and Retrieval using Moment Invariants Imran Ahmad School of Computer Science University of Windsor – Canada.
All Hands Meeting, 2006 Title: Grid Workflow Scheduling in WOSE (Workflow Optimisation Services for e- Science Applications) Authors: Yash Patel, Andrew.
Relevance Feedback Content-Based Image Retrieval Using Query Distribution Estimation Based on Maximum Entropy Principle Irwin King and Zhong Jin Nov
Rutgers Components Phase 2 Principal investigators –Paul Kantor, PI; Design, modelling and analysis –Kwong Bor Ng, Co-PI - Fusion; Experimental design.
Semantic text features from small world graphs Jure Leskovec, IJS + CMU John Shawe-Taylor, Southampton.
A Practical Method For Quickly Evaluating Program Optimizations Grigori Fursin, Albert Cohen, Michael O’Boyle and Olivier Temam ALCHEMY Group, INRIA Futurs.
1 Improving Hash Join Performance through Prefetching _________________________________________________By SHIMIN CHEN Intel Research Pittsburgh ANASTASSIA.
1 An Empirical Study on Large-Scale Content-Based Image Retrieval Group Meeting Presented by Wyman
Sparsity, Scalability and Distribution in Recommender Systems
Chapter 6: An Introduction to System Software and Virtual Machines
A Search-based Method for Forecasting Ad Impression in Contextual Advertising Defense.
The Relevance Model  A distribution over terms, given information need I, (Lavrenko and Croft 2001). For term r, P(I) can be dropped w/o affecting the.
Session-02. Objective In this session you will learn : What is Class Loader ? What is Byte Code Verifier? JIT & JAVA API Features of Java Java Environment.
New Challenges in Cloud Datacenter Monitoring and Management
CISC673 – Optimizing Compilers1/34 Presented by: Sameer Kulkarni Dept of Computer & Information Sciences University of Delaware Phase Ordering.
Impact Analysis of Database Schema Changes Andy Maule, Wolfgang Emmerich and David S. Rosenblum London Software Systems Dept. of Computer Science, University.
The Group Runtime Optimization for High-Performance Computing An Install-Time System for Automatic Generation of Optimized Parallel Sorting Algorithms.
Venkatram Ramanathan 1. Motivation Evolution of Multi-Core Machines and the challenges Background: MapReduce and FREERIDE Co-clustering on FREERIDE Experimental.
Interpreting the data: Parallel analysis with Sawzall LIN Wenbin 25 Mar 2014.
CISC Machine Learning for Solving Systems Problems Arch Explorer Lecture 5 John Cavazos Dept of Computer & Information Sciences University of Delaware.
Predictive Runtime Code Scheduling for Heterogeneous Architectures 1.
Introduction and Overview Questions answered in this lecture: What is an operating system? How have operating systems evolved? Why study operating systems?
Ahsanul Haque *, Swarup Chandra *, Latifur Khan * and Charu Aggarwal + * Department of Computer Science, University of Texas at Dallas + IBM T. J. Watson.
Performance Tuning on Multicore Systems for Feature Matching within Image Collections Xiaoxin Tang*, Steven Mills, David Eyers, Zhiyi Huang, Kai-Cheung.
1 Research Groups : KEEL: A Software Tool to Assess Evolutionary Algorithms for Data Mining Problems SCI 2 SMetrology and Models Intelligent.
Ahsanul Haque *, Swarup Chandra *, Latifur Khan * and Michael Baron + * Department of Computer Science, University of Texas at Dallas + Department of Mathematical.
Dept. of Computer and Information Sciences : University of Delaware John Cavazos Department of Computer and Information Sciences University of Delaware.
GAUSSIAN PROCESS FACTORIZATION MACHINES FOR CONTEXT-AWARE RECOMMENDATIONS Trung V. Nguyen, Alexandros Karatzoglou, Linas Baltrunas SIGIR 2014 Presentation:
1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt.
ACMSE’04, ALDepartment of Electrical and Computer Engineering - UAH Execution Characteristics of SPEC CPU2000 Benchmarks: Intel C++ vs. Microsoft VC++
RecBench: Benchmarks for Evaluating Performance of Recommender System Architectures Justin Levandoski Michael D. Ekstrand Michael J. Ludwig Ahmed Eldawy.
Exploiting Context Analysis for Combining Multiple Entity Resolution Systems -Ramu Bandaru Zhaoqi Chen Dmitri V.kalashnikov Sharad Mehrotra.
A Region Based Stereo Matching Algorithm Using Cooperative Optimization Zeng-Fu Wang, Zhi-Gang Zheng University of Science and Technology of China Computer.
Framework for MDO Studies Amitay Isaacs Center for Aerospace System Design and Engineering IIT Bombay.
CISC Machine Learning for Solving Systems Problems Presented by: Ashwani Rao Dept of Computer & Information Sciences University of Delaware Learning.
Exploring the role of visualization and engagement in Computer Science Education Naps, T., & etc. (2003). Exploring the role of visualization and engagement.
Indexes and Views Unit 7.
CISC Machine Learning for Solving Systems Problems John Cavazos Dept of Computer & Information Sciences University of Delaware
1 Supporting Dynamic Migration in Tightly Coupled Grid Applications Liang Chen Qian Zhu Gagan Agrawal Computer Science & Engineering The Ohio State University.
Multi-Speaker Modeling with Shared Prior Distributions and Model Structures for Bayesian Speech Synthesis Kei Hashimoto, Yoshihiko Nankaku, and Keiichi.
CISC Machine Learning for Solving Systems Problems Presented by: Satyajeet Dept of Computer & Information Sciences University of Delaware Automatic.
Supporting Privacy Protection in Personalized Web Search.
Layali Rashid, Wessam M. Hassanein, and Moustafa A. Hammad*
1 Adaptive Parallelism for Web Search Myeongjae Jeon Rice University In collaboration with Yuxiong He (MSR), Sameh Elnikety (MSR), Alan L. Cox (Rice),
CISC Machine Learning for Solving Systems Problems Microarchitecture Design Space Exploration Lecture 4 John Cavazos Dept of Computer & Information.
CISC Machine Learning for Solving Systems Problems Presented by: Eunjung Park Dept of Computer & Information Sciences University of Delaware Solutions.
Learning Photographic Global Tonal Adjustment with a Database of Input / Output Image Pairs.
3/12/2013Computer Engg, IIT(BHU)1 INTRODUCTION-1.
UCI Large-Scale Collection of Application Usage Data to Inform Software Development David M. Hilbert David F. Redmiles Information and Computer Science.
Fast face localization and verification J.Matas, K.Johnson,J.Kittler Presented by: Dong Xie.
1 A latent information function to extend domain attributes to improve the accuracy of small-data-set forecasting Reporter : Zhao-Wei Luo Che-Jung Chang,Der-Chiang.
Resource Optimization for Publisher/Subscriber-based Avionics Systems Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee.
Algorithms in Programming Computer Science Principles LO
Closing the Query Processing Loop in Oracle 11g Allison Lee, Mohamed Zait.
Accelerating K-Means Clustering with Parallel Implementations and GPU Computing Janki Bhimani Miriam Leeser Ningfang Mi
WORKFLOW PETRI NETS USED IN MODELING OF PARALLEL ARCHITECTURES
Faster File matching using GPGPU’s Deephan Mohan Professor: Dr
Objective of This Course
CMSC 611: Advanced Computer Architecture
Reducing Training Time in a One-shot Machine Learning-based Compiler
Christophe Dubach, Timothy M. Jones and Michael F.P. O’Boyle
Presented by: Divya Muppaneni
CMSC 611: Advanced Computer Architecture
Performance And Scalability In Oracle9i And SQL Server 2000
Presentation transcript:

CISC Machine Learning for Solving Systems Problems Presented by: Alparslan SARI Dept of Computer & Information Sciences University of Delaware Collective Optimization Grigori Fursin and Olivier Temam

CISC Machine Learning for Solving Systems Problems Overview Introduction Experimental Setup Motivation Overview Collective Learning Collective Compiler Performance Evaluation Background and Related Work Conclusion and Future Work

CISC Machine Learning for Solving Systems Problems Introduction What is Iterative Compilation? Iterative Compilation vs Static Compiler Optimization - Outperform? - Quickly adapt to complex processor architecture? - Machine Learning Algorithms?

CISC Machine Learning for Solving Systems Problems Introduction How are they overcome that practical obstacle using Collective Optimization? - A Central Database - Query for Optimization Suggestions - Recompile Is it even make sense to use Collective Optimization?

CISC Machine Learning for Solving Systems Problems Introduction The most important hurdle is that iterative techniques almost rely on a large number of training runs. Why is that? - Optimization Space?

CISC Machine Learning for Solving Systems Problems Introduction What is the key research issue? - Improve overall program performance - Learn how it reacts to the various optimizations

CISC Machine Learning for Solving Systems Problems Experimental Setup GCC compiler 88 program transformations has identified. Transformations are randomly selected AMD Athlon XP 2800 (AMD32) – 5 machines AMD Athlon (AMD64) – 16 machines Intel Xeon 2.80GHz (IA32) – 2 machines

CISC Machine Learning for Solving Systems Problems Experimental Setup Figure 1 from pg. 3, Collective Optimization, G. Fursin, O. Temam

CISC Machine Learning for Solving Systems Problems Experimental Setup Collecting information on a program run - add to each program a - it collects a program identifier - architecture - compiler identifiers - applied optimizations

CISC Machine Learning for Solving Systems Problems Experimental Setup Last run - performance measurements - currently execution time - profiling information After the information collection what next? - Store them to database

CISC Machine Learning for Solving Systems Problems Motivation Figure 2 from pg. 4, Collective Optimization, G. Fursin, O. Temam

CISC Machine Learning for Solving Systems Problems Overview Figure 1 from pg. 3, Collective Optimization, G. Fursin, O. Temam

CISC Machine Learning for Solving Systems Problems Overview “Maturation” stages of a program - Stage 1 : Program unknown, d1 - Stage 2 : Program known, a few runs only, d2 - Stage 3 : Program well known,heavily used, d3

CISC Machine Learning for Solving Systems Problems Collective Learning Figure 2 from pg. 4, Collective Optimization, G. Fursin, O. Temam

CISC Machine Learning for Solving Systems Problems Collective Learning Building the program distribution d3 using statistical comparison of optimizations combinations - Comparing two combinations C1, C2 - Execution times T1, T2 - T1 < T2 ? Cloned functions used - if T1 C2 This approach requires no reference, test or training run.

CISC Machine Learning for Solving Systems Problems Collective Learning Building the aggregate distribution d1 - d1 is simply the average of all d3 distributions of each program. - d1 reflects most common cases

CISC Machine Learning for Solving Systems Problems Collective Learning Building the matching distribution d2 - Characterize programs - C1 > C2 is a reaction to program optimizations John Cavazos have shown that its possible to improve similar program characterizations by identifying and then restricting to optimizations which carry the most information using the mutual information criterion.

CISC Machine Learning for Solving Systems Problems Collective Compiler Program identification : uniquely identified using a 32byte MD5 checksum of all the files in its source directory. Termination routine : main() - exit() Cloning : Optimizations are evaluated through cloned routines. (Using gprof utility) Security : very little program info sent to DB(G/L)

CISC Machine Learning for Solving Systems Problems Performance Evaluation Figure 3 from pg. 10, Collective Optimization, G. Fursin, O. Temam

CISC Machine Learning for Solving Systems Problems Performance Evaluation

CISC Machine Learning for Solving Systems Problems Background and. Several research works have shown how machine learning and statistical techniques can be used to select or tune program transformations based on program features. Java JIT compiler - Tuning - Predict optimization They have focus more on the impact of data sets from multiple users and the optimization selection robustness.

CISC Machine Learning for Solving Systems Problems Conclusions First contribution : identify the true limitations of the adoption of iterative optimization in production environment. The Second : showing that it is possible to simultaneously learn and improve performance across runs.

CISC Machine Learning for Solving Systems Problems Conclusions The Third : propose multi-level competition to understand the impact of optimization without even a reference run for computing speedups. The Fourth : highlight that knowledge accumulated across data sets for a single program is more useful, in the real and practical context of collective optimization, than the knowledge accumulated across programs.

CISC Machine Learning for Solving Systems Problems Questions

CISC Machine Learning for Solving Systems Problems Questions