OCR Introspection EDT Characterization & Profiling Infrastructure Intel TG Team.

Slides:



Advertisements
Similar presentations
Module 13: Performance Tuning. Overview Performance tuning methodologies Instance level Database level Application level Overview of tools and techniques.
Advertisements

Statistical Metadata Driven eForms Oleg Volguine Assistant Director Technology Services Division Australian Bureau of Statistics.
Discovering and Exploiting Program Phases Timothy Sherwood, Erez Perelman, Greg Hamerly, Suleyman Sair, Brad Calder CSE 231 Presentation by Justin Ma.
Wish Branches Combining Conditional Branching and Predication for Adaptive Predicated Execution The University of Texas at Austin *Oregon Microarchitecture.
© Imperial College London Eplex: Harnessing Mathematical Programming Solvers for Constraint Logic Programming Kish Shen and Joachim Schimpf IC-Parc.
Case Tools Trisha Cummings. Our Definition of CASE  CASE is the use of computer-based support in the software development process.  A CASE tool is a.
Basic guidelines for the creation of a DW Create corporate sponsors and plan thoroughly Determine a scalable architectural framework for the DW Identify.
Lecture 5 Themes in this session Building and managing the data warehouse Data extraction and transformation Technical issues.
Online Performance Auditing Using Hot Optimizations Without Getting Burned Jeremy Lau (UCSD, IBM) Matthew Arnold (IBM) Michael Hind (IBM) Brad Calder (UCSD)
1 Lecture 6 Performance Measurement and Improvement.
DePaul Bears Try Your Luck! Plan Methodology. Team Methodology Effective Communication s, phone calls, on-line chats, in-class meetings, outside.
Nick Trebon, Alan Morris, Jaideep Ray, Sameer Shende, Allen Malony {ntrebon, amorris, Department of.
From last time: Inlining pros and cons Pros –eliminate overhead of call/return sequence –eliminate overhead of passing args & returning results –can optimize.
SyNAR: Systems Networking and Architecture Group Symbiotic Jobscheduling for a Simultaneous Multithreading Processor Presenter: Alexandra Fedorova Simon.
ThinkAir: Dynamic Resource Allocation and Parallel Execution in Cloud for Mobile Code Offloading Sokol Kosta, Pan Hui Deutsche Telekom Labs, Berlin, Germany.
Trigger and online software Simon George & Reiner Hauser T/DAQ Phase 1 IDR.
Scratch the Cat. Object Oriented Programing Writing computer programs Based on Objects Instead of Actions Based on Data Instead of Logic.
Secure Web Applications via Automatic Partitioning Stephen Chong, Jed Liu, Andrew C. Meyers, Xin Qi, K. Vikram, Lantian Zheng, Xin Zheng. Cornell University.
Introspective 3D Chips S. Mysore, B. Agrawal, N. Srivastava, S. Lin, K. Banerjee, T. Sherwood (UCSB), ASPLOS 2006 Shimin Chen (LBA Reading Group Presentation)
Exascale Programming Models Lecture Series 06/12/2014 What is OCR? TG Team (presenter: Romain Cledat) June 12,
Virtual techdays INDIA │ Nov 2010 Developing Office Biz Application using WPF on Windows 7 Sarang Datye │ Sr. Consultant, Microsoft Sridhar Poduri.
An Online Knowledge Base for Sustainable Military Facilities & Infrastructure Dr. Annie R. Pearce, Branch Head Sustainable Facilities & Infrastructure.
TYX CORPORATION Page 1 © Copyright TYX Corporation 2006 TYX TestBase Development of Diagnostics with DSI eXpress and TYX TestBase For eXpress versions.
Profile Driven Component Placement for Cluster-based Online Services Christopher Stewart (University of Rochester) Kai Shen (University of Rochester) Sandhya.
Petascale workshop 2013 Judit Gimenez Detailed evolution of performance metrics Folding.
Level 3 Muon Software Paul Balm Muon Vertical Review May 22, 2000.
LLNL Summer School 07/08/2014 What is OCR? TG Team (presenters: Romain Cledat & Bala Seshasayee) July 8, This.
Exascale Programming Models Lecture Series 06/12/2014 What is OCR? TG Team (presenter: Romain Cledat) June 12,
Dynamic Object Sampling for Pretenuring Maria Jump Department of Computer Sciences The University of Texas at Austin Stephen M. Blackburn.
LLNL Summer School 07/08/2014 What is OCR? Traleika Glacier Team (presenters: Romain Cledat & Bala Seshasayee) July 8,
Access 2007 ® Use Databases How can Microsoft Access 2007 help you structure your database?
Adding and Subtraction Polynomials. A monomial is an expression that is a number, a variable, or a product of a number and one or more variables. Each.
ICINETIC Experts in.NET technologies and architectures.
LLNL Summer School 07/08/2014 What is OCR? Traleika Glacier Team (presenters: Romain Cledat & Bala Seshasayee) July 8,
Parallelization of likelihood functions for data analysis Alfio Lazzaro CERN openlab Forum on Concurrent Programming Models and Frameworks.
Replicating Memory Behavior for Performance Skeletons Aditya Toomula PC-Doctor Inc. Reno, NV Jaspal Subhlok University of Houston Houston, TX By.
Adding and Subtracting Polynomials ALGEBRA 1 LESSON 9-1 (For help, go to Lesson 1-7.) Simplify each expression. 1.6t + 13t2.5g + 34g 3.7k – 15k4.2b – 6.
Determina, Inc. Persisting Information Across Application Executions Derek Bruening Determina, Inc.
Chapter 1 Introduction. Chapter 1 -- Introduction2  Def: Compiler --  a program that translates a program written in a language like Pascal, C, PL/I,
Software testing techniques Software testing techniques Object-oriented software testing Presentation on the seminar Kaunas University of Technology.
1 Unit Test in VS 2010 Presented by ZAN ZAN KOE. 2 Types of testing provided by VS  Unit test  Manual test  Web Performance Test  Coded UI Test 
Marcelo R.N. Mendes. What is FINCoS? A set of tools for data generation, load submission, and performance measurement of CEP systems; Main Characteristics:
Embedded System Lab. 오명훈 Addressing Shared Resource Contention in Multicore Processors via Scheduling.
PAPI on Blue Gene L Using network performance counters to layout tasks for improved performance.
Sequence Curation Paul Davis Sanger Institute. Overview Sequence curation within WormBase consortium. Import of sequence data. Prediction stats. Work.
Towards the 2011 UK Census Editing Strategy Heather Wagstaff and Steven Rogers Methodology Directorate Office for National Statistics, U.K.
Application Communities Phase 2 (AC2) Project Overview Nov. 20, 2008 Greg Sullivan BAE Systems Advanced Information Technologies (AIT)
Projections - A Step by Step Tutorial By Chee Wai Lee For the 2004 Charm++ Workshop.
Level 1-2 Trigger Data Base development Current status and overview Myron Campbell, Alexei Varganov, Stephen Miller University of Michigan August 17, 2000.
Adding and Subtracting Polynomials. 1. Determine whether the given expression is a monomial (Yes or No). For those that are monomials, state the coefficient.
Add & Subtract Polynomials Aim: Simplify a polynomial expression by adding or subtracting (add the inverse) polynomials.
Template provided by CICoaches.com, part of CICoach, Inc. User assumes all responsibility for use and outcomes of this template. CICoaches.com and CICoach,
Application-Aware Traffic Scheduling for Workload Offloading in Mobile Clouds Liang Tong, Wei Gao University of Tennessee – Knoxville IEEE INFOCOM
1 Creating Situational Awareness with Data Trending and Monitoring Zhenping Li, J.P. Douglas, and Ken. Mitchell Arctic Slope Technical Services.
Metal bioavailability under the Water Framework Directive Implementation in monitoring and assessment frameworks Implementation of Bioavailability 1.
Do Now: Simplify and write in standard form x 2 - x 2 + 4x – 1 -6x 2. 2 – 7x – x 3.
Measure Phase Wrap Up and Action Items. Measure Phase Overview - The Goal The goal of the Measure Phase is to: Define, explore and classify “X” variables.
Enabling machine learning in embedded systems
DEVOPS Diagram Template
Logistic Regression and Perceptron Prediction of Instruction Branches
Performance monitoring on HP Alpha using DCPI
Presented By: <Names> <Team Name> <Date>
Understanding Performance Counter Data - 1
CMSC 611: Advanced Computer Architecture
Adaptive Optimization in the Jalapeño JVM
COCOMO Models.
ورود اطلاعات بصورت غيربرخط
State Design Pattern Brandon Jacobsen.
CMSC 611: Advanced Computer Architecture
Measure Phase Wrap Up and Action Items
Presentation transcript:

OCR Introspection EDT Characterization & Profiling Infrastructure Intel TG Team

Overview Background Approach Current Methodology Initial Results Implementation & Interfaces Next Steps

Background Can we benefit from any ‘predictable behavior’ of EDTs ? –Code or data placement choices based on EDTs’ resource requirements –Programmer productivity tool (datablock partitioning, EDT functionality) Characterizing EDT behavior Exploiting this information at runtime

Approach Express EDT metrics as a function of size of data operated upon by EDT Use the above function at runtime to quickly estimate EDT’s resource requirements

Current Methodology Several simplifying assumptions –EDT behavior is consistent –Metrics can be expressed as polynomials –Sum of sizes of datablocks used as a proxy for size of data operated upon by EDT OCR App Raw EDT Metrics -Instruction Count -Floating Point Ops -Reads & Writes - Datablock sizes EDT Metrics Represented as polynomial function on sum of sizes of all datablocks used by an EDT Profiling header “edt1”, {polynomial coeffs}, “edt2”, {polynomial coeffs}, “edt3”, {polynomial coeffs}, Runtime Can use the projections to inform its heuristics LLVM Pass, Statistics Summarize, Best-fit Generate header Rebuild #include struct _profileStruct gProfilingTable[] = { {"mainEdt", 1, 1, 1, 1, 0.0, 0.0, 0.0, 0.0, (double []){229,}, (double []){16,}, (double []){2068,}, (double []){2632,}, 0, }, {"node_110_body", 2, 2, 2, 2, 0.0, 0.0, 0.0, 0.0, (double []){77620,25,}, (double []){0,0,}, (double []){14052,0,}, (double []){13432,1,}, 0, }, {"node_210_body", 2, 2, 3, 2, 0.0, 0.0, 0.0, 0.0, (double []){63115,0,}, (double []){0,0,}, (double []){ , , e-05,}, (double []){28000, e-12,}, 0, }, {"node_220_body", 3, 3, 4, 2, 0.0, 0.0, 0.0, 0.0, (double []){113716, , e-07,}, (double []){ , , e-08,}, (double []){ , , e- 07, e-12,}, (double []){ , ,}, 0, }, }; OCR: LLVM Pass, Statistics credit: Romain Cledat FP Ops = y = 0.33x^ x , x = sum(size_of(DB[i]))

Initial Results OCR Apps credit: Chih-Chieh Yang, Adam Smith (NAS), Roger Golliver (LULESH), Jamie Arteaga (SCF) Two phases Three modes

Implementation & Interfaces Profiling –On x86, LLVM-pass + OCR statistics hooks added by Romain –On FSim, hardware counters Data analysis –Offline tools for summarizing & best fit –Making them online will add to runtime overhead (how much?) Projections –Optional “profile.h” #include’d by OCR app Lists function name corresponding to each EDT with the polynomial coefficients of its metrics –Runtime picks it up during template creation –Runtime can use them when EDT is ready to run

Next Steps Cleanup the post-processing tools & integrate with OCR Using the projections –Code/data placement decisions –Reacting to temperature, failures Better projections –Polynomial functions not always accurate –Datablock reads vs. writes & stack accesses –Quantifying other metrics