Determining Necessity of Optimization in Matrix Chain Multiplication. Quen Parson
|
|
- Norah Hampton
- 5 years ago
- Views:
Transcription
1 Determining Necessity of Optimization in Matrix Chain Multiplication Quen Parson
2 Introduction - What is a matrix? Mathematics - set of data Arranged in rows and columns Individual cells called elements Elements can be variables, constants, functions, matrices, etc.
3 Matrix Applications Machine learning (neural networks) Elements represent links between nodes Data mining Operations on large sets of data
4 Matrix Multiplication Associative - Grouping still produces same product Grouping can affect workload (number of multiplication operations) Noncommutative - Order can change product Result matrix dimensions - # ColA x # RowB Result matrix element Elementx,y = (ax,1*b1,y + ax,2*b2,y + ) Total number of operations (multiplication weight): # RowA * # ColA * # ColB Note: # RowA = # ColB 70px- Matrix_multiplication_diagram_2.svg.png
5 Matrix Chain Multiplication and Need for Optimization Matrix Chain Multiplication: Potentially very costly Larger chains can increase multiplication operations exponentially Recall weight calculation: product matrices can grow very quickly in chains Associative property: Matrix chains can be rearranged sometimes for faster calculation
6 Optimization Algorithm Dynamic programming: breaking larger problem into smaller problems that are easier to solve Memoization: algorithm saves intermediate products to memory to speed up future calculations Algorithm: Memoization Optimization Calculates cost of every possible chain grouping Uses dynamic programming to split chains into smaller chains for easier calculation Uses memoization to save products of chains to prevent redundant calculation 12/LCS recurrence- tre e.jp g
7 Optimization Inefficiency Algorithm complexity: O(2 n ), does not run in reasonable time Algorithm can speed up calculations of expensive chains, but can slow down the calculation of others (ex. chains that are already optimized) Solution speed: Optimization time + Solving time
8 Research Goal Determine criteria for when optimization is beneficial Independent Variables: chain length, distribution of weights Dependent Variable: calculation time Weight Distribution Weight distribution measured using average rate of change in weights from beginning to end of chain Calculated by first getting the matrix multiplication weights from left to right, and then getting the average rate of change Language and IDE: Visual C++ using Visual Studio
9 Procedure 1. Implement matrix class, relevant data and methods for project 2. Implement unoptimized solver, solves matrix chain as given without optimization step 3. Implement optimized solver, solves matrix chain after optimization step 4. Implement testing class, automatically runs test cases within given boundaries to speed up testing process 5. Analyze and interpret results
10 Results Test cases generated by test program to automate experimentation 48 million test cases planned Only approx. 20 million tested due to time constraints Chain length values tested: 2 to 6 Average weight slope tested: -30 to 30 Above red line: chain better unoptimized Below red line: chain better optimized
11 of Chain Weights
12 Discussion Time differences only significant when total chain weight is significant (sum of weights > 10,000) For chains with low number of total operations, time difference and total calculation time negligible Below this point, optimization is neither significantly detrimental or beneficial Optimization dependent on average weight slope Average weight slope < 2: chain better optimized Average weight slope > 2: chain better unoptimized
13 Applications Further speed up operations with large matrix chains Minimal change to existing algorithms, but significant performance gain Can be applied on other algorithms Same procedure can find criteria for other algorithms Determining necessity of optimization is O(n), low cost operation Much faster than time wasted in unnecessary optimization Easy to implement: simple conditional
14 Future Research Test using more hardware Determine if findings remain constant on alternative hardware (various industry standards) Run more tests to reduce variance in results More exact criteria Run procedure on other optimization algorithms
15 Acknowledgements Mrs. Yarbrough, Alabama School of Fine Arts Mrs. Chin, Alabama School of Fine Arts Dr. Pirkelbauer, University of Alabama in Birmingham
MGO Tutorial: Plume Management
MGO Tutorial: Plume Management Introduction Pumping well optimization technology is used to determine the ideal pumping well locations, and ideal pumping rates at these locations, in order to minimize
More informationABOUT PIVOTTABLES TABLE OF CONTENTS
University of Southern California Academic Information Services Excel 2007 - PivotTables ABOUT PIVOTTABLES PivotTables provide an excellent means of analyzing data stored in database format by rearranging
More informationDynamic Programming. An Introduction to DP
Dynamic Programming An Introduction to DP Dynamic Programming? A programming technique Solve a problem by breaking into smaller subproblems Similar to recursion with memoisation Usefulness: Efficiency
More informationAlgorithm Design Techniques part I
Algorithm Design Techniques part I Divide-and-Conquer. Dynamic Programming DSA - lecture 8 - T.U.Cluj-Napoca - M. Joldos 1 Some Algorithm Design Techniques Top-Down Algorithms: Divide-and-Conquer Bottom-Up
More informationMGO Tutorial - Dewatering Scenario
MGO Tutorial - Dewatering Scenario Introduction 1.0.1 Background Pumping well optimization technology is used to determine the ideal pumping well locations, and ideal pumping rates at these locations,
More informationData Structures and Algorithms. Dynamic Programming
Data Structures and Algorithms Dynamic Programming Introduction Dynamic programming is simply the process of turning recursive calls in to table lookups. If a recursive function does redundant computations,
More informationColumn and row space of a matrix
Column and row space of a matrix Recall that we can consider matrices as concatenation of rows or columns. c c 2 c 3 A = r r 2 r 3 a a 2 a 3 a 2 a 22 a 23 a 3 a 32 a 33 The space spanned by columns of
More informationMGO Tutorial - Dewatering Scenario
MGO Tutorial - Dewatering Scenario Introduction Pumping well optimization technology is used to determine the ideal pumping well locations, and ideal pumping rates at these locations, in order to minimize
More informationBusiness: Administrative Information Services Crosswalk to AZ Math Standards
Page 1 of 1 August 1998 2M-P1 Construct and draw inferences including measures of central tendency, from charts, tables, graphs and data plots that summarize data from real-world situations. PO 4 2.0 Manage
More informationCPSC 695. Methods for interpolation and analysis of continuing surfaces in GIS Dr. M. Gavrilova
CPSC 695 Methods for interpolation and analysis of continuing surfaces in GIS Dr. M. Gavrilova Overview Data sampling for continuous surfaces Interpolation methods Global interpolation Local interpolation
More informationIntroduction. Linear because it requires linear functions. Programming as synonymous of planning.
LINEAR PROGRAMMING Introduction Development of linear programming was among the most important scientific advances of mid-20th cent. Most common type of applications: allocate limited resources to competing
More informationSTAT 311 (3 CREDITS) VARIANCE AND REGRESSION ANALYSIS ELECTIVE: ALL STUDENTS. CONTENT Introduction to Computer application of variance and regression
STAT 311 (3 CREDITS) VARIANCE AND REGRESSION ANALYSIS ELECTIVE: ALL STUDENTS. CONTENT Introduction to Computer application of variance and regression analysis. Analysis of Variance: one way classification,
More informationUnit-5 Dynamic Programming 2016
5 Dynamic programming Overview, Applications - shortest path in graph, matrix multiplication, travelling salesman problem, Fibonacci Series. 20% 12 Origin: Richard Bellman, 1957 Programming referred to
More information3. Replace any row by the sum of that row and a constant multiple of any other row.
Math Section. Section.: Solving Systems of Linear Equations Using Matrices As you may recall from College Algebra or Section., you can solve a system of linear equations in two variables easily by applying
More informationData mining with sparse grids
Data mining with sparse grids Jochen Garcke and Michael Griebel Institut für Angewandte Mathematik Universität Bonn Data mining with sparse grids p.1/40 Overview What is Data mining? Regularization networks
More informationNatural Language Processing CS 6320 Lecture 6 Neural Language Models. Instructor: Sanda Harabagiu
Natural Language Processing CS 6320 Lecture 6 Neural Language Models Instructor: Sanda Harabagiu In this lecture We shall cover: Deep Neural Models for Natural Language Processing Introduce Feed Forward
More informationCS473-Algorithms I. Lecture 10. Dynamic Programming. Cevdet Aykanat - Bilkent University Computer Engineering Department
CS473-Algorithms I Lecture 1 Dynamic Programming 1 Introduction An algorithm design paradigm like divide-and-conquer Programming : A tabular method (not writing computer code) Divide-and-Conquer (DAC):
More informationForms of Linear Equations
6. 1-6.3 Forms of Linear Equations Name Sec 6.1 Writing Linear Equations in Slope-Intercept Form *Recall that slope intercept form looks like y = mx + b, where m = slope and b = y=intercept 1) Writing
More informationDefinitions. Spreadsheet. Usefulness of Spreadsheets What do people use it for? Spreadsheet Page. Spreadsheet Cell
www.tongatapu.net.to Terms and 18 January 1999 Definitions Spreadsheet A table which displays numbers in rows and columns, used for accounting, budgeting, financial analysis, scientific applications, and
More informationModule 9 : Numerical Relaying II : DSP Perspective
Module 9 : Numerical Relaying II : DSP Perspective Lecture 36 : Fast Fourier Transform Objectives In this lecture, We will introduce Fast Fourier Transform (FFT). We will show equivalence between FFT and
More informationStorage and Indexing, Part I
Storage and Indexing, Part I Computer Science E-66 Harvard University David G. Sullivan, Ph.D. Accessing the Disk Data is arranged on disk in units called blocks. typically fairly large (e.g., 4K or 8K)
More informationConstraint (Logic) Programming
Constraint (Logic) Programming Roman Barták Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic bartak@ktiml.mff.cuni.cz Sudoku Combinatorial puzzle, whose goal is to enter
More informationSpace Filling Curves and Hierarchical Basis. Klaus Speer
Space Filling Curves and Hierarchical Basis Klaus Speer Abstract Real world phenomena can be best described using differential equations. After linearisation we have to deal with huge linear systems of
More informationIntermediate Microsoft Excel 2010
P a g e 1 Intermediate Microsoft Excel 2010 ABOUT THIS CLASS This class is designed to continue where the Microsoft Excel 2010 Basics class left off. Specifically, we will cover additional ways to organize
More informationDynamic Programming. Lecture Overview Introduction
Lecture 12 Dynamic Programming 12.1 Overview Dynamic Programming is a powerful technique that allows one to solve many different types of problems in time O(n 2 ) or O(n 3 ) for which a naive approach
More informationMachine Learning / Jan 27, 2010
Revisiting Logistic Regression & Naïve Bayes Aarti Singh Machine Learning 10-701/15-781 Jan 27, 2010 Generative and Discriminative Classifiers Training classifiers involves learning a mapping f: X -> Y,
More informationHow to speed up a database which has gotten slow
Triad Area, NC USA E-mail: info@geniusone.com Web: http://geniusone.com How to speed up a database which has gotten slow hardware OS database parameters Blob fields Indices table design / table contents
More informationDynamic Programmming: Activity Selection
Dynamic Programmming: Activity Selection Select the maximum number of non-overlapping activities from a set of n activities A = {a 1,, a n } (sorted by finish times). Identify easier subproblems to solve.
More informationComputer Experiments: Space Filling Design and Gaussian Process Modeling
Computer Experiments: Space Filling Design and Gaussian Process Modeling Best Practice Authored by: Cory Natoli Sarah Burke, Ph.D. 30 March 2018 The goal of the STAT COE is to assist in developing rigorous,
More informationWatch the video below to learn more about freezing panes in Excel. *Video removed from printing pages. To freeze rows:
Excel 06 Freezing Panes and View Options Introduction Whenever you're working with a lot of data, it can be di icult to compare information in your workbook. Fortunately, Excel includes several tools that
More informationGreedy Algorithms Huffman Coding
Greedy Algorithms Huffman Coding Huffman Coding Problem Example: Release 29.1 of 15-Feb-2005 of TrEMBL Protein Database contains 1,614,107 sequence entries, comprising 505,947,503 amino acids. There are
More informationTrip Distribution Models in TransCAD. Murtaza Haider Tel: , ext. 2480
Trip Distribution Models in TransCAD Murtaza Haider murtaza.haider@ryerson.ca Tel: 416.979.5000, ext. 2480 Trip Distribution Procedures Goal: understand how to use TransCAD to: Generate inputs for trip
More informationCS 231: Algorithmic Problem Solving
CS 231: Algorithmic Problem Solving Naomi Nishimura Module 5 Date of this version: June 14, 2018 WARNING: Drafts of slides are made available prior to lecture for your convenience. After lecture, slides
More informationUse of Python in data manipulation and interfacing spreadsheets (Excel)
Use of Python in data manipulation and interfacing spreadsheets (Excel) Boon Kwee Chan School of IT, Republic Polytechnic, Singapore chan_boon_kwee@rp.sg Why is there a need for python when there is already
More informationLecture 8. Dynamic Programming
Lecture 8. Dynamic Programming T. H. Cormen, C. E. Leiserson and R. L. Rivest Introduction to Algorithms, 3rd Edition, MIT Press, 2009 Sungkyunkwan University Hyunseung Choo choo@skku.edu Copyright 2000-2018
More informationChapter 3 Dynamic programming
Chapter 3 Dynamic programming 1 Dynamic programming also solve a problem by combining the solutions to subproblems. But dynamic programming considers the situation that some subproblems will be called
More informationUniversity of Florida CISE department Gator Engineering. Clustering Part 5
Clustering Part 5 Dr. Sanjay Ranka Professor Computer and Information Science and Engineering University of Florida, Gainesville SNN Approach to Clustering Ordinary distance measures have problems Euclidean
More informationOptimization. Using Analytic Solver Platform REVIEW BASED ON MANAGEMENT SCIENCE
Optimization Using Analytic Solver Platform REVIEW BASED ON MANAGEMENT SCIENCE What We ll Cover Today Introduction Frontline Systems Session Ι beta training program goals Overview of Analytic Solver Platform
More informationInformation Systems Development COMM005 (CSM03) Autumn Semester 2009
Information Systems Development COMM005 (CSM03) Autumn Semester 2009 Dr. Jonathan Y. Clark Email: j.y.clark@surrey.ac.uk Course Website: www.computing.surrey.ac.uk/courses/csm03/isdmain.htm Slide 1 Adapted
More informationy j LCS-Length(X,Y) Running time: O(st) set c[i,0] s and c[0,j] s to 0 for i=1 to s for j=1 to t if x i =y j then else if
Recursive solution for finding LCS of X and Y if x s =y t, then find an LCS of X s-1 and Y t-1, and then append x s =y t to this LCS if x s y t, then solve two subproblems: (1) find an LCS of X s-1 and
More informationWe augment RBTs to support operations on dynamic sets of intervals A closed interval is an ordered pair of real
14.3 Interval trees We augment RBTs to support operations on dynamic sets of intervals A closed interval is an ordered pair of real numbers ], with Interval ]represents the set Open and half-open intervals
More informationCS 380 ALGORITHM DESIGN AND ANALYSIS
CS 380 ALGORITHM DESIGN AND ANALYSIS Lecture 14: Dynamic Programming Text Reference: Chapter 15 Dynamic Programming We know that we can use the divide-and-conquer technique to obtain efficient algorithms
More informationHighly Efficient Compensationbased Parallelism for Wavefront Loops on GPUs
Highly Efficient Compensationbased Parallelism for Wavefront Loops on GPUs Kaixi Hou, Hao Wang, Wu chun Feng {kaixihou, hwang121, wfeng}@vt.edu Jeffrey S. Vetter, Seyong Lee vetter@computer.org, lees2@ornl.gov
More informationDynamic Programming. Design and Analysis of Algorithms. Entwurf und Analyse von Algorithmen. Irene Parada. Design and Analysis of Algorithms
Entwurf und Analyse von Algorithmen Dynamic Programming Overview Introduction Example 1 When and how to apply this method Example 2 Final remarks Introduction: when recursion is inefficient Example: Calculation
More informationAnnals of the University of North Carolina Wilmington Master of Science in Computer Science and Information Systems
Annals of the University of North Carolina Wilmington Master of Science in Computer Science and Information Systems Suppressing Independent Loops in Packing/Unpacking Loop Nests to Reduce Message Size
More informationCS 177. Lists and Matrices. Week 8
CS 177 Lists and Matrices Week 8 1 Announcements Project 2 due on 7 th March, 2015 at 11.59 pm Table of Contents Lists Matrices Traversing a Matrix Construction of Matrices 3 Just a list of numbers 1D
More informationNew Implementation for the Multi-sequence All-Against-All Substring Matching Problem
New Implementation for the Multi-sequence All-Against-All Substring Matching Problem Oana Sandu Supervised by Ulrike Stege In collaboration with Chris Upton, Alex Thomo, and Marina Barsky University of
More informationSTAT 5200 Handout #25. R-Square & Design Matrix in Mixed Models
STAT 5200 Handout #25 R-Square & Design Matrix in Mixed Models I. R-Square in Mixed Models (with Example from Handout #20): For mixed models, the concept of R 2 is a little complicated (and neither PROC
More informationPractice Problems for the Final
ECE-250 Algorithms and Data Structures (Winter 2012) Practice Problems for the Final Disclaimer: Please do keep in mind that this problem set does not reflect the exact topics or the fractions of each
More informationDynamic Programming part 2
Dynamic Programming part 2 Week 7 Objectives More dynamic programming examples - Matrix Multiplication Parenthesis - Longest Common Subsequence Subproblem Optimal structure Defining the dynamic recurrence
More informationLesson 15 Working with Tables
Working with Tables Computer Literacy BASICS: A Comprehensive Guide to IC 3, 4 th Edition 1 Objectives Create a table and insert text. Insert and delete rows and columns. Adjust column width and row height.
More informationStructure of Computer Systems
288 between this new matrix and the initial collision matrix M A, because the original forbidden latencies for functional unit A still have to be considered in later initiations. Figure 5.37. State diagram
More informationComputer Graphics Hands-on
Computer Graphics Hands-on Two-Dimensional Transformations Objectives Visualize the fundamental 2D geometric operations translation, rotation about the origin, and scale about the origin Learn how to compose
More informationLesson 15 Working with Tables
Working with Tables Computer Literacy BASICS: A Comprehensive Guide to IC 3, 5 th Edition 1 Objectives Create a table and insert text. Insert and delete rows and columns. Adjust column width and row height.
More informationTutorial 10: Performing What-If Analyses. Microsoft Excel 2013 Enhanced
Tutorial 10: Performing What-If Analyses Microsoft Excel 2013 Enhanced Objectives Explore the principles of cost-volume-profit relationships Create a one-variable data table Create a two-variable data
More informationLecture 2 Notes. Outline. Neural Networks. The Big Idea. Architecture. Instructors: Parth Shah, Riju Pahwa
Instructors: Parth Shah, Riju Pahwa Lecture 2 Notes Outline 1. Neural Networks The Big Idea Architecture SGD and Backpropagation 2. Convolutional Neural Networks Intuition Architecture 3. Recurrent Neural
More informationMicrosoft Office Illustrated. Analyzing Table Data
Analyzing Table Data Objectives Filter a Table Create a custom filter Filter a Table with Advanced Filter Extract Table data 2 Objectives Look up values in a table Summarize table data Validate table data
More informationChapter 2. Related Work
Chapter 2 Related Work There are three areas of research highly related to our exploration in this dissertation, namely sequential pattern mining, multiple alignment, and approximate frequent pattern mining.
More informationPart II. C. M. Bishop PATTERN RECOGNITION AND MACHINE LEARNING CHAPTER 8: GRAPHICAL MODELS
Part II C. M. Bishop PATTERN RECOGNITION AND MACHINE LEARNING CHAPTER 8: GRAPHICAL MODELS Converting Directed to Undirected Graphs (1) Converting Directed to Undirected Graphs (2) Add extra links between
More informationINFORMATION SHEET 24002/1: AN EXCEL PRIMER
INFORMATION SHEET 24002/1: AN EXCEL PRIMER How to use this document This guide to the basics of Microsoft Excel is intended for those people who use the program, but need or wish to know more than the
More information14 Dynamic. Matrix-chain multiplication. P.D. Dr. Alexander Souza. Winter term 11/12
Algorithms Theory 14 Dynamic Programming (2) Matrix-chain multiplication P.D. Dr. Alexander Souza Optimal substructure Dynamic programming is typically applied to optimization problems. An optimal solution
More informationProbability Models.S4 Simulating Random Variables
Operations Research Models and Methods Paul A. Jensen and Jonathan F. Bard Probability Models.S4 Simulating Random Variables In the fashion of the last several sections, we will often create probability
More informationHomework # 2 Due: October 6. Programming Multiprocessors: Parallelism, Communication, and Synchronization
ECE669: Parallel Computer Architecture Fall 2 Handout #2 Homework # 2 Due: October 6 Programming Multiprocessors: Parallelism, Communication, and Synchronization 1 Introduction When developing multiprocessor
More informationGuide to Make PowerPoint Files ADA Compliant
Guide to Make PowerPoint Files ADA Compliant Slide Layouts PowerPoint contains a series of highly-accessible slide layouts. PowerPoint is designed to encourage the use of these slide layouts to ensure
More informationAMS526: Numerical Analysis I (Numerical Linear Algebra)
AMS526: Numerical Analysis I (Numerical Linear Algebra) Lecture 20: Sparse Linear Systems; Direct Methods vs. Iterative Methods Xiangmin Jiao SUNY Stony Brook Xiangmin Jiao Numerical Analysis I 1 / 26
More informationMath 308 Autumn 2016 MIDTERM /18/2016
Name: Math 38 Autumn 26 MIDTERM - 2 /8/26 Instructions: The exam is 9 pages long, including this title page. The number of points each problem is worth is listed after the problem number. The exam totals
More informationUniversity of Waterloo. Storing Directed Acyclic Graphs in Relational Databases
University of Waterloo Software Engineering Storing Directed Acyclic Graphs in Relational Databases Spotify USA Inc New York, NY, USA Prepared by Soheil Koushan Student ID: 20523416 User ID: skoushan 4A
More informationTaking Apart Numbers and Shapes
Taking Apart Numbers and Shapes Writing Equivalent Expressions Using the Distributive Property 1 WARM UP Calculate the area of each rectangle. Show your work. 1. 6 in. 2. 15 in. 12 yd 9 yd LEARNING GOALS
More informationLecture 2: Symbolic Model Checking With SAT
Lecture 2: Symbolic Model Checking With SAT Edmund M. Clarke, Jr. School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 (Joint work over several years with: A. Biere, A. Cimatti, Y.
More informationIntegrated Math I. IM1.1.3 Understand and use the distributive, associative, and commutative properties.
Standard 1: Number Sense and Computation Students simplify and compare expressions. They use rational exponents and simplify square roots. IM1.1.1 Compare real number expressions. IM1.1.2 Simplify square
More informationNew Perspectives on Microsoft Excel Module 5: Working with Excel Tables, PivotTables, and PivotCharts
New Perspectives on Microsoft Excel 2016 Module 5: Working with Excel Tables, PivotTables, and PivotCharts Objectives, Part 1 Explore a structured range of data Freeze rows and columns Plan and create
More informationExcel 2016 for Mac Financial Analysis with Microsoft Excel, 8 th Edition Mac User Guide
Excel 2016 for Mac Financial Analysis with Microsoft Excel, 8 th Edition Mac User Guide Unfortunately, Mac users of Microsoft Office don t have 100% compatibility with the Windows version. However, the
More informationDynamic Programming Matrix-chain Multiplication
1 / 32 Dynamic Programming Matrix-chain Multiplication CS 584: Algorithm Design and Analysis Daniel Leblanc 1 1 Senior Adjunct Instructor Portland State University Maseeh College of Engineering and Computer
More informationCS281 Section 3: Practical Optimization
CS281 Section 3: Practical Optimization David Duvenaud and Dougal Maclaurin Most parameter estimation problems in machine learning cannot be solved in closed form, so we often have to resort to numerical
More informationDynamic Programming. Introduction, Weighted Interval Scheduling, Knapsack. Tyler Moore. Lecture 15/16
Dynamic Programming Introduction, Weighted Interval Scheduling, Knapsack Tyler Moore CSE, SMU, Dallas, TX Lecture /6 Greedy. Build up a solution incrementally, myopically optimizing some local criterion.
More informationSystems Analysis & Design
Systems Analysis & Design Dr. Arif Sari Email: arif@arifsari.net Course Website: www.arifsari.net/courses/ Slide 1 Adapted from slides 2005 John Wiley & Sons, Inc. Slide 2 Course Textbook: Systems Analysis
More informationCPSC 340: Machine Learning and Data Mining. Probabilistic Classification Fall 2017
CPSC 340: Machine Learning and Data Mining Probabilistic Classification Fall 2017 Admin Assignment 0 is due tonight: you should be almost done. 1 late day to hand it in Monday, 2 late days for Wednesday.
More informationBoost ERP/CRM Performance by Reorganizing Your Oracle Database: A Proven Reorganization Strategy Donald Bakels
Boost ERP/CRM Performance by Reorganizing Your Oracle Database: A Proven Reorganization Strategy Donald Bakels Challenge: Oracle Space management in large, active, business critical ERP/CRM sites Donald
More informationSeveral sets of parameters and configuration techniques affect communication performance:
Cyberlogic Knowledge Base KB2010-05: OPTIMIZING THE DHX OPC DRIVER AGENT Cyberlogic s OPC Server Suites include several unique features that you can adjust to achieve superior communication performance.
More informationCHAPTER 2. Graphs. 1. Introduction to Graphs and Graph Isomorphism
CHAPTER 2 Graphs 1. Introduction to Graphs and Graph Isomorphism 1.1. The Graph Menagerie. Definition 1.1.1. A simple graph G = (V, E) consists of a set V of vertices and a set E of edges, represented
More informationData mining, 4 cu Lecture 8:
582364 Data mining, 4 cu Lecture 8: Graph mining Spring 2010 Lecturer: Juho Rousu Teaching assistant: Taru Itäpelto Frequent Subgraph Mining Extend association rule mining to finding frequent subgraphs
More informationPartha Sarathi Manal
MA 515: Introduction to Algorithms & MA353 : Design and Analysis of Algorithms [3-0-0-6] Lecture 29 http://www.iitg.ernet.in/psm/indexing_ma353/y09/index.html Partha Sarathi Manal psm@iitg.ernet.in Dept.
More informationTutorial 5: Working with Excel Tables, PivotTables, and PivotCharts. Microsoft Excel 2013 Enhanced
Tutorial 5: Working with Excel Tables, PivotTables, and PivotCharts Microsoft Excel 2013 Enhanced Objectives Explore a structured range of data Freeze rows and columns Plan and create an Excel table Rename
More informationDynamic Programming (Part #2)
Dynamic Programming (Part #) Introduction to Algorithms MIT Press (Chapter 5) Matrix-Chain Multiplication Problem: given a sequence A, A,, A n, compute the product: A A A n Matrix compatibility: C = A
More informationMulti-Operand Addition Ivor Page 1
Multi-Operand Addition 1 Multi-Operand Addition Ivor Page 1 9.1 Motivation The motivation for multi-operand adders comes from the need for innerproduct calculations and multiplication (summing the partial
More informationMachine Learning. Topic 5: Linear Discriminants. Bryan Pardo, EECS 349 Machine Learning, 2013
Machine Learning Topic 5: Linear Discriminants Bryan Pardo, EECS 349 Machine Learning, 2013 Thanks to Mark Cartwright for his extensive contributions to these slides Thanks to Alpaydin, Bishop, and Duda/Hart/Stork
More informationA Feasibility Study for Methods of Effective Memoization Optimization
A Feasibility Study for Methods of Effective Memoization Optimization Daniel Mock October 2018 Abstract Traditionally, memoization is a compiler optimization that is applied to regions of code with few
More informationOffice 2016 Excel Basics 25 Video/Class Project #37 Excel Basics 25: Power Query (Get & Transform Data) to Convert Bad Data into Proper Data Set
Office 2016 Excel Basics 25 Video/Class Project #37 Excel Basics 25: Power Query (Get & Transform Data) to Convert Bad Data into Proper Data Set Goal in video # 25: Learn about how to use the Get & Transform
More informationJob Re-Packing for Enhancing the Performance of Gang Scheduling
Job Re-Packing for Enhancing the Performance of Gang Scheduling B. B. Zhou 1, R. P. Brent 2, C. W. Johnson 3, and D. Walsh 3 1 Computer Sciences Laboratory, Australian National University, Canberra, ACT
More informationSCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics. Numbers & Number Systems
SCHOOL OF ENGINEERING & BUILT ENVIRONMENT Mathematics Numbers & Number Systems Introduction Numbers and Their Properties Multiples and Factors The Division Algorithm Prime and Composite Numbers Prime Factors
More informationSteven Skiena. skiena
Lecture 12: Examples of Dynamic Programming (1997) Steven Skiena Department of Computer Science State University of New York Stony Brook, NY 11794 4400 http://www.cs.sunysb.edu/ skiena Give an O(n 2 )
More informationregister allocation saves energy register allocation reduces memory accesses.
Lesson 10 Register Allocation Full Compiler Structure Embedded systems need highly optimized code. This part of the course will focus on Back end code generation. Back end: generation of assembly instructions
More informationDate Lesson TOPIC HOMEWORK. Displaying Data WS 6.1. Measures of Central Tendency WS 6.2. Common Distributions WS 6.6. Outliers WS 6.
UNIT 6 ONE VARIABLE STATISTICS Date Lesson TOPIC HOMEWORK 6.1 3.3 6.2 3.4 Displaying Data WS 6.1 Measures of Central Tendency WS 6.2 6.3 6.4 3.5 6.5 3.5 Grouped Data Central Tendency Measures of Spread
More informationWe ve done. Now. Next
We ve done Matroid Theory Task scheduling problem (another matroid example) Dijkstra s algorithm (another greedy example) Dynamic Programming Now Matrix Chain Multiplication Longest Common Subsequence
More informationRegister Allocation. Global Register Allocation Webs and Graph Coloring Node Splitting and Other Transformations
Register Allocation Global Register Allocation Webs and Graph Coloring Node Splitting and Other Transformations Copyright 2015, Pedro C. Diniz, all rights reserved. Students enrolled in the Compilers class
More informationFundamentals of Modeling Systems and a System Approach to Simulation Optimization. Jun Ma IEMS, Northwestern University 02/02/2005
Fundamentals of Modeling Systems and a System Approach to Simulation Optimization Jun Ma IEMS, Northwestern University 0/0/005 Jun Ma, Northwestern University, February 0, 005 1. History and Background
More informationComputational Physics PHYS 420
Computational Physics PHYS 420 Dr Richard H. Cyburt Assistant Professor of Physics My office: 402c in the Science Building My phone: (304) 384-6006 My email: rcyburt@concord.edu My webpage: www.concord.edu/rcyburt
More informationLecture 18: DRAM Technologies
Lecture 18: DRAM Technologies Last Time: Cache and Virtual Memory Review Today DRAM organization or, why is DRAM so slow??? Lecture 18 1 Main Memory = DRAM Lecture 18 2 Basic DRAM Architecture Lecture
More informationHARNESSING CERTAINTY TO SPEED TASK-ALLOCATION ALGORITHMS FOR MULTI-ROBOT SYSTEMS
HARNESSING CERTAINTY TO SPEED TASK-ALLOCATION ALGORITHMS FOR MULTI-ROBOT SYSTEMS An Undergraduate Research Scholars Thesis by DENISE IRVIN Submitted to the Undergraduate Research Scholars program at Texas
More informationSparse Matrix-Matrix Multiplication on the GPU. Julien Demouth, NVIDIA
Sparse Matrix-Matrix Multiplication on the GPU Julien Demouth, NVIDIA Introduction: Problem Two sparse matrices A and B, compute: Sparse matrix: Many zeroes C = AB x Non-zero Zero Only non-zero elements
More information