Par4All. From Convex Array Regions to Heterogeneous Computing

Size: px
Start display at page:

Download "Par4All. From Convex Array Regions to Heterogeneous Computing"

Transcription

1 Par4All From Covex Array Regios to Heterogeeous Computig Mehdi Amii, Béatrice Creusillet, Stéphaie Eve, Roa Keryell, Oig Goubier, Serge Guelto, Jaice Oaia McMaho, Fraçois Xavier Pasquier, Grégoire Péa, Pierre Villalo IMPACT d Iteratioal Workshop o Polyhedral Compilatio Techiques 1/21

2 Par4All project: automatic source-to-source parallelizatio for heterogeeous targets HPC Project eeds tools for its hardware accelerators (Wild Nodes from Wild Systems) ad to parallelize, port & optimize customer applicatios Ureasoable to begi yet aother ew compiler project May academic Ope Source projects are available......but customers eed products Itegrate your ideas ad developmets i existig project...or buy oe if you ca afford (ST with PGI...) Not reivetig the wheel (o NIH sydrome) => Fudig a iitiative to idustrialize Ope Source tools Par4All is fully Ope-Source (mix of MIT/GPL licese) Accordig to Keshav Pigali, we're wrog at raisig automatic parallelizatio from low-level code. But we provide geerality across differet tools, each with its ow high-abstractio. (ad: versio released *today*, check it out!) 2/21

3 Par4All overview PIPS is the first project to eter the Par4All iitiative Preseted at Impact 2011: PIPS Is ot (just) Polyhedral Software Source code (with directives?) PIPS Trasformatios && Aalyses kerels Post-processor host code Par4all Rutime vcclike host compiler Fial Biary Par4All Pytho Driver 3/21

4 Demo Example: madelbrot writte i Scilab Coverted to C usig COLD, a i-house (commercial) scilab-to-c compiler The C code is processed by Par4All to target multi-core or GPU PIPS is iter-procedural ad thus eeds all the source code, we eed to provide stubs for the Scilab rutime

5 Focus o array regios aalyses Startig with Béatrice Creusillet thesis (1996) Fid out what part of a array is read or writte Approximatio: may/must/exact Set of liear relatios Applicatios: Parallelizatio Array privatizatio Scalarizatio Statemet isolatio Memory footprit reductio usig tilig 5/21

6 Focus o array regios aalyses // <a[phi1][phi2]-w-may-{0<=phi1, PHI1<=PHI2, PHI1+PHI2+1<=m, // 2PHI1+2<=> it triagular(it m, it, double a[][m]) { it h = /2; // <a[phi1][phi2]-w-exact-{0<=phi1, // PHI1<=PHI2, PHI1+PHI2+1<=m, // PHI1+1<=h, <=2h+1, 2h<=> for(it i = 0; i < h; i += 1) { M // <a[phi1][phi2]-w-exact-{phi1==i, i<=phi2, // PHI2+i+1<=m, 0<=i, // i+1<=h, <=2h+1, 2h<=> for(it j = i; j < m-i; j += 1) { // <a[phi1][phi2]-w-exact-{phi1==i, PHI2==j, // i<=j, j+i+1<=m, 0<=i, // i+1<=h, <=2h+1, 2h<=> a[i][j] = f(); N

7 IN/OUT Regios PIPS icludes iter-procedural IN ad OUT regios IN regios iclude part of the array read by a statemet, for which the value was produced earlier i the program No i regio o b Overwrite 1st b assigmet it i_regios(it, double a[], double b[], double c[]) { // <a[phi1]-out-exact-{0<=phi1, PHI1+1<=> for(it i=0; i<; i++) { a[i] = iit(); b[i] = iit(); // <a[phi1]-in-exact-{0<=phi1, PHI1+1<=> for(it i=0; i<; i++) { b[i] = a[i]+1; c[i] = f(a[i],b[i]); 7/21

8 IN/OUT Regios PIPS icludes iter-procedural IN ad OUT regios OUT regios iclude part of the array produced by a statemet ad that will be used later i the program No out regio o b No i regio o b Overwrite 1st b assigmet it i_regios(it, double a[], double b[], double c[]) { // <a[phi1]-out-exact-{0<=phi1, PHI1+1<=> for(it i=0; i<; i++) { a[i] = iit(); b[i] = iit(); // <a[phi1]-in-exact-{0<=phi1, PHI1+1<=> for(it i=0; i<; i++) { b[i] = a[i]+1; c[i] = f(a[i],b[i]); No out regio o b meas that a scalarizatio is possible Nobody would write such code... 8/21

9 IN/OUT Regios PIPS icludes iter-procedural IN ad OUT regios OUT regios iclude part of the array produced by a statemet ad that will be used later i the program No out regio o b No i regio o b Overwrite 1st b assigmet it i_regios(it, double a[], double b[], double c[]) { // <a[phi1]-out-exact-{0<=phi1, PHI1+1<=> for(it i=0; i<; i++) { a[i] = iit(); b[i] = iit(); // <a[phi1]-in-exact-{0<=phi1, PHI1+1<=> for(it i=0; i<; i++) { b[i] = a[i]+1; c[i] = f(a[i],b[i]); No out regio o b meas that a scalarizatio is possible Nobody would write such code... but what about automatically geerated code from higher level descriptio? 9/21

10 Applicatio to host-accelerator commuicatios void kerel(it, double X[][]) { it i1, i2; for (i1 = 0; i1 < /2; i1++) { // Sequetial for(i2 = i1; i2 < -i1; i2++) { // Parallel X[ i1][i2] = X[ i1][i2] - X[ - i1-3][i2]; it mai(it argc, char **argv) { if(argc!=2) { fpritf(stderr,"size expected as first argumet\"); exit(1); it size = atoi(argv[1]); // Usafe! double (*X)[size] = (double (*)[size])malloc(sizeof(double)*size*size); double (*A)[size] = (double (*)[size])malloc(sizeof(double)*size*size); double (*B)[size] = (double (*)[size])malloc(sizeof(double)*size*size); kerel(size,x,a,b); 10/21

11 Applicatio to host-accelerator commuicatios // <X[PHI1][PHI2]-R-MAY-{PHI2<=PHI1+2, <=PHI1+PHI2+3, <=2PHI1+4, PHI1+2<=, 0<=PHI2, PHI2+1<=, 2<=> // <X[PHI1][PHI2]-W-MAY-{PHI2<=PHI1+1, <=PHI1+PHI2+2, <=2PHI1+2, PHI1+2<=> for (i1 = 0; i1 < /2; i1++) { // Sequetial // <X[PHI1][PHI2]-R-EXACT-{<=PHI1+i1+3, PHI1+i1+2<=, i1<=phi2, PHI2+i1+1<=> // <X[PHI1][PHI2]-W-EXACT-{PHI1+i1==-2, i1<=phi2, PHI2+i1+1<=> for(i2 = i1; i2 < -i1; i2++) { // Parallel // <X[PHI1][PHI2]-R-EXACT-{PHI2==i2, <=PHI1+i1+3, PHI1+i1+2<=, i1<=phi2, PHI2+i1+1<=> // <X[PHI1][PHI2]-W-EXACT-{PHI1+i1==-2, PHI2==i2, 0<=i1, i1<=i2> X[ i1][i2] = X[ i1][i2] - X[ - i1-3][i2]; Read Read ad Writte 11/21

12 Applicatio to host-accelerator commuicatios // <X[PHI1][PHI2]-R-MAY-{PHI2<=PHI1+2, <=PHI1+PHI2+3, <=2PHI1+4, PHI1+2<=, 0<=PHI2, PHI2+1<=, 2<=> // <X[PHI1][PHI2]-W-MAY-{PHI2<=PHI1+1, <=PHI1+PHI2+2, <=2PHI1+2, PHI1+2<=> for (i1 = 0; i1 < /2; i1++) { // Sequetial // <X[PHI1][PHI2]-R-EXACT-{<=PHI1+i1+3, PHI1+i1+2<=, i1<=phi2, PHI2+i1+1<=> // <X[PHI1][PHI2]-W-EXACT-{PHI1+i1==-2, i1<=phi2, PHI2+i1+1<=> for(i2 = i1; i2 < -i1; i2++) { // Parallel // <X[PHI1][PHI2]-R-EXACT-{PHI2==i2, <=PHI1+i1+3, PHI1+i1+2<=, i1<=phi2, PHI2+i1+1<=> // <X[PHI1][PHI2]-W-EXACT-{PHI1+i1==-2, PHI2==i2, 0<=i1, i1<=i2> X[ i1][i2] = X[ i1][i2] - X[ - i1-3][i2]; Read Read ad Writte Writte o previous iteratios 12/21

13 Applicatio to host-accelerator commuicatios // <X[PHI1][PHI2]-R-MAY-{PHI2<=PHI1+2, <=PHI1+PHI2+3, <=2PHI1+4, PHI1+2<=, 0<=PHI2, PHI2+1<=, 2<=> // <X[PHI1][PHI2]-W-MAY-{PHI2<=PHI1+1, <=PHI1+PHI2+2, <=2PHI1+2, PHI1+2<=> for (i1 = 0; i1 < /2; i1++) { // Sequetial // <X[PHI1][PHI2]-R-EXACT-{<=PHI1+i1+3, PHI1+i1+2<=, i1<=phi2, PHI2+i1+1<=> // <X[PHI1][PHI2]-W-EXACT-{PHI1+i1==-2, i1<=phi2, PHI2+i1+1<=> for(i2 = i1; i2 < -i1; i2++) { // Parallel // <X[PHI1][PHI2]-R-EXACT-{PHI2==i2, <=PHI1+i1+3, PHI1+i1+2<=, i1<=phi2, PHI2+i1+1<=> // <X[PHI1][PHI2]-W-EXACT-{PHI1+i1==-2, PHI2==i2, 0<=i1, i1<=i2> X[ i1][i2] = X[ i1][i2] - X[ - i1-3][i2]; Read Read ad Writte Writte o previous iteratios 13/21

14 Applicatio to host-accelerator commuicatios // <X[PHI1][PHI2]-R-MAY-{PHI2<=PHI1+2, <=PHI1+PHI2+3, <=2PHI1+4, PHI1+2<=, 0<=PHI2, PHI2+1<=, 2<=> // <X[PHI1][PHI2]-W-MAY-{PHI2<=PHI1+1, <=PHI1+PHI2+2, <=2PHI1+2, PHI1+2<=> for (i1 = 0; i1 < /2; i1++) { // Sequetial // <X[PHI1][PHI2]-R-EXACT-{<=PHI1+i1+3, PHI1+i1+2<=, i1<=phi2, PHI2+i1+1<=> // <X[PHI1][PHI2]-W-EXACT-{PHI1+i1==-2, i1<=phi2, PHI2+i1+1<=> for(i2 = i1; i2 < -i1; i2++) { // Parallel // <X[PHI1][PHI2]-R-EXACT-{PHI2==i2, <=PHI1+i1+3, PHI1+i1+2<=, i1<=phi2, PHI2+i1+1<=> // <X[PHI1][PHI2]-W-EXACT-{PHI1+i1==-2, PHI2==i2, 0<=i1, i1<=i2> X[ i1][i2] = X[ i1][i2] - X[ - i1-3][i2]; Read Read ad Writte Writte o previous iteratios Optimize commuicatios (covex hull, pipelie, ) 14/21

15 Applicatio to host-accelerator commuicatios // <X[PHI1][PHI2]-R-MAY-{PHI2<=PHI1+2, <=PHI1+PHI2+3, <=2PHI1+4, PHI1+2<=, 0<=PHI2, PHI2+1<=, 2<=> // <X[PHI1][PHI2]-W-MAY-{PHI2<=PHI1+1, <=PHI1+PHI2+2, <=2PHI1+2, PHI1+2<=> for (i1 = 0; i1 < /2; i1++) { // Sequetial // <X[PHI1][PHI2]-R-EXACT-{<=PHI1+i1+3, PHI1+i1+2<=, i1<=phi2, PHI2+i1+1<=> // <X[PHI1][PHI2]-W-EXACT-{PHI1+i1==-2, i1<=phi2, PHI2+i1+1<=> for(i2 = i1; i2 < -i1; i2++) { // Parallel // <X[PHI1][PHI2]-R-EXACT-{PHI2==i2, <=PHI1+i1+3, PHI1+i1+2<=, i1<=phi2, PHI2+i1+1<=> // <X[PHI1][PHI2]-W-EXACT-{PHI1+i1==-2, PHI2==i2, 0<=i1, i1<=i2> X[ i1][i2] = X[ i1][i2] - X[ - i1-3][i2]; Read Read ad Writte Writte o previous iteratios 15/21

16 Applicatio to host-accelerator commuicatios for (i1 = 0; i1 < /2; i1++) { // Sequetial // Allocate all the array o the accelerator double (*accel_x)[2][-2*i1+]; P4A_accel_malloc((void **) &accel_x, sizeof(double)*i1*2)); Copy_to_accel_2d(sizeof(double),,, 2, -2*i1+, -i1+-3, i1, &X[0][0], *accel_x); for(i2 = 0; i2 < -i1-i1; i2++) { // Parallel (has bee skewed to start from 0) accel_x[1][i2] = accel_x[1][i2] - accel_x[0][i2]; Copy_from_accel_2d( Data writte by the kerel sizeof(double),,, // host size 1, -2*i1+, // trasfer -i1+-2, i1, // offset &X[0][0], &accel_x[1][0]); Accel_free(accel_X); Rectagular hull Exact data read by the kerel Read Read ad Writte Writte o previous iteratios Data trasferred o curret iteratio 16/21

17 Applicatio to host-accelerator commuicatios for (i1 = 0; i1 < /2; i1++) { // Sequetial // Allocate all the array o the accelerator double (*accel_x)[2][-2*i1+]; P4A_accel_malloc((void **) &accel_x, sizeof(double)*i1*2)); Copy_to_accel_2d(sizeof(double),,, 2, -2*i1+, -i1+-3, i1, &X[0][0], *accel_x); for(i2 = 0; i2 < -i1-i1; i2++) { // Parallel (has bee skewed to start from 0) accel_x[1][i2] = accel_x[1][i2] - accel_x[0][i2]; Copy_from_accel_2d( Data writte by the kerel sizeof(double),,, // host size 1, -2*i1+, // trasfer -i1+-2, i1, // offset &X[0][0], &accel_x[1][0]); Accel_free(accel_X); Rectagular hull Exact data read by the kerel Read Read ad Writte Writte o previous iteratios Data trasferred o curret iteratio Data trasferred o previous iteratio 17/21

18 Applicatio to host-accelerator commuicatios Ca we avoid redudat trasfers? Try a subtractio: <X[PHI1][PHI2]-{<=PHI1+i1+3, PHI1+i1+2<=, i1<=phi2, PHI2+i1+1<=> - <X[PHI1][PHI2]-{<=PHI1+(i1-1)+3, PHI1+(i1-1)+2<=, (i1-1)<=phi2, PHI2+(i1-1)+1<=> = <X[PHI1][PHI2]-{==PHI1+i1+3, i1<=phi2, PHI2+i1+1<=> Data trasferred o curret iteratio Data trasferred o previous iteratio Differece From Alias, Darte, ad Plesco, Impact 2012: I(I1 ) \ Out(i1 < I1 ) Load(i1 I1 ) Out(i1 < I1 ) Load(I1 ) = 18/21

19 Applicatio to host-accelerator commuicatios // <X[PHI1][PHI2]-R-MAY-{PHI2<=PHI1+2, <=PHI1+PHI2+3, <=2PHI1+4, PHI1+2<=, 0<=PHI2, PHI2+1<=, 2<=> // <X[PHI1][PHI2]-W-MAY-{PHI2<=PHI1+1, <=PHI1+PHI2+2, <=2PHI1+2, PHI1+2<=> double (*accel_x)[-2-(/2-1)+1][-1+1]; P4A_accel_malloc((void **) &accel_x, sizeof(double)*(-2-(/2-1)+1)*(-1+1)); // Data for first iteratio Copy_to_accel_2d(sizeof(double),,, 1,, -3, 0, &X[0][0], &accel_x[-2-(/2-1)+1][0]); for (i1 = 0; i1 < /2; i1++) { // Sequetial Copy_to_accel_2d(sizeof(double),,, 1,-2*i1+,-i (/2-1)+1, i1, &X[0][0],*accel_X); for(i2 = 0; i2 < -i1-i1; i2++) // Parallel X[ i1-2-(/2-1)+1][i2] = X[ i1-2-(/2-1)+1][i2] - X[ - i1 3-2-(/2-1)+1][i2]; Copy_from_accel_2d( sizeof(double),,, // host size 1, -2*i1+, // trasfer -i1+-2, i1, // offset &X[0][0], &accel_x[1][0]); Accel_free(accel_X); Further optimizatios (prefetch...) would easily allow overlap betwee commuicatios ad computatios. See for istace Alias, Darte, ad Plesco, Impact /21

20 Par4All future Source code (with directives?) PIPS Trasformatios && Aalyses Source code with directives feature extractor polyhedral optimizer kerels host code OpeSCoP Post-processor, optimizer,... Post-processor, optimizer,... Par4All Rutime Other Rutimes vcclike host compiler Fial Biary 20/21

21 Par4All future Source code (with directives?) PIPS Trasformatios && Aalyses Source code with directives Your? feature extractor Your? polyhedral optimizer kerels host code OpeSCoP Your? Post-processor, optimizer,... Your? Post-processor, optimizer,... Par4All Rutime Other Rutimes Icludig yours? vcclike host compiler Fial Biary

CS553 Lecture Reuse Optimization: Common SubExpr Elim 3

CS553 Lecture Reuse Optimization: Common SubExpr Elim 3 Reuse Optimizatio Last time Value umberig Today Commo subexpressio elimiatio (CSE) CS553 Lecture Reuse Optimizatio: Commo SubExpr Elim 2 Commo Subexpressio Elimiatio Fid commo subexpressios whose rage

More information

Lecture 18. Optimization in n dimensions

Lecture 18. Optimization in n dimensions Lecture 8 Optimizatio i dimesios Itroductio We ow cosider the problem of miimizig a sigle scalar fuctio of variables, f x, where x=[ x, x,, x ]T. The D case ca be visualized as fidig the lowest poit of

More information

Outline. Research Definition. Motivation. Foundation of Reverse Engineering. Dynamic Analysis and Design Pattern Detection in Java Programs

Outline. Research Definition. Motivation. Foundation of Reverse Engineering. Dynamic Analysis and Design Pattern Detection in Java Programs Dyamic Aalysis ad Desig Patter Detectio i Java Programs Outlie Lei Hu Kamra Sartipi {hul4, sartipi}@mcmasterca Departmet of Computig ad Software McMaster Uiversity Caada Motivatio Research Problem Defiitio

More information

Polyèdres et compilation

Polyèdres et compilation Polyèdres et compilation François Irigoin & Mehdi Amini & Corinne Ancourt & Fabien Coelho & Béatrice Creusillet & Ronan Keryell MINES ParisTech - Centre de Recherche en Informatique 12 May 2011 François

More information

. Written in factored form it is easy to see that the roots are 2, 2, i,

. Written in factored form it is easy to see that the roots are 2, 2, i, CMPS A Itroductio to Programmig Programmig Assigmet 4 I this assigmet you will write a java program that determies the real roots of a polyomial that lie withi a specified rage. Recall that the roots (or

More information

Project 2.5 Improved Euler Implementation

Project 2.5 Improved Euler Implementation Project 2.5 Improved Euler Implemetatio Figure 2.5.10 i the text lists TI-85 ad BASIC programs implemetig the improved Euler method to approximate the solutio of the iitial value problem dy dx = x+ y,

More information

Chapter 5. Functions for All Subtasks. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Chapter 5. Functions for All Subtasks. Copyright 2015 Pearson Education, Ltd.. All rights reserved. Chapter 5 Fuctios for All Subtasks Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 5.1 void Fuctios 5.2 Call-By-Referece Parameters 5.3 Usig Procedural Abstractio 5.4 Testig ad Debuggig

More information

CS 11 C track: lecture 1

CS 11 C track: lecture 1 CS 11 C track: lecture 1 Prelimiaries Need a CMS cluster accout http://acctreq.cms.caltech.edu/cgi-bi/request.cgi Need to kow UNIX IMSS tutorial liked from track home page Track home page: http://courses.cms.caltech.edu/courses/cs11/material

More information

SCI Reflective Memory

SCI Reflective Memory Embedded SCI Solutios SCI Reflective Memory (Experimetal) Atle Vesterkjær Dolphi Itercoect Solutios AS Olaf Helsets vei 6, N-0621 Oslo, Norway Phoe: (47) 23 16 71 42 Fax: (47) 23 16 71 80 Mail: atleve@dolphiics.o

More information

COSC 1P03. Ch 7 Recursion. Introduction to Data Structures 8.1

COSC 1P03. Ch 7 Recursion. Introduction to Data Structures 8.1 COSC 1P03 Ch 7 Recursio Itroductio to Data Structures 8.1 COSC 1P03 Recursio Recursio I Mathematics factorial Fiboacci umbers defie ifiite set with fiite defiitio I Computer Sciece sytax rules fiite defiitio,

More information

Solving Fuzzy Assignment Problem Using Fourier Elimination Method

Solving Fuzzy Assignment Problem Using Fourier Elimination Method Global Joural of Pure ad Applied Mathematics. ISSN 0973-768 Volume 3, Number 2 (207), pp. 453-462 Research Idia Publicatios http://www.ripublicatio.com Solvig Fuzzy Assigmet Problem Usig Fourier Elimiatio

More information

3D Model Retrieval Method Based on Sample Prediction

3D Model Retrieval Method Based on Sample Prediction 20 Iteratioal Coferece o Computer Commuicatio ad Maagemet Proc.of CSIT vol.5 (20) (20) IACSIT Press, Sigapore 3D Model Retrieval Method Based o Sample Predictio Qigche Zhag, Ya Tag* School of Computer

More information

Lecture Notes 6 Introduction to algorithm analysis CSS 501 Data Structures and Object-Oriented Programming

Lecture Notes 6 Introduction to algorithm analysis CSS 501 Data Structures and Object-Oriented Programming Lecture Notes 6 Itroductio to algorithm aalysis CSS 501 Data Structures ad Object-Orieted Programmig Readig for this lecture: Carrao, Chapter 10 To be covered i this lecture: Itroductio to algorithm aalysis

More information

Creating Exact Bezier Representations of CST Shapes. David D. Marshall. California Polytechnic State University, San Luis Obispo, CA , USA

Creating Exact Bezier Representations of CST Shapes. David D. Marshall. California Polytechnic State University, San Luis Obispo, CA , USA Creatig Exact Bezier Represetatios of CST Shapes David D. Marshall Califoria Polytechic State Uiversity, Sa Luis Obispo, CA 93407-035, USA The paper presets a method of expressig CST shapes pioeered by

More information

CS 111 Green: Program Design I Lecture 27: Speed (cont.); parting thoughts

CS 111 Green: Program Design I Lecture 27: Speed (cont.); parting thoughts CS 111 Gree: Program Desig I Lecture 27: Speed (cot.); partig thoughts By Nascarkig - Ow work, CC BY-SA 4.0, https://commos.wikimedia.org/w/idex.php?curid=38671041 Robert H. Sloa (CS) & Rachel Poretsky

More information

A graphical view of big-o notation. c*g(n) f(n) f(n) = O(g(n))

A graphical view of big-o notation. c*g(n) f(n) f(n) = O(g(n)) ca see that time required to search/sort grows with size of We How do space/time eeds of program grow with iput size? iput. time: cout umber of operatios as fuctio of iput Executio size operatio Assigmet:

More information

Python Programming: An Introduction to Computer Science

Python Programming: An Introduction to Computer Science Pytho Programmig: A Itroductio to Computer Sciece Chapter 6 Defiig Fuctios Pytho Programmig, 2/e 1 Objectives To uderstad why programmers divide programs up ito sets of cooperatig fuctios. To be able to

More information

A SOFTWARE MODEL FOR THE MULTILAYER PERCEPTRON

A SOFTWARE MODEL FOR THE MULTILAYER PERCEPTRON A SOFTWARE MODEL FOR THE MULTILAYER PERCEPTRON Roberto Lopez ad Eugeio Oñate Iteratioal Ceter for Numerical Methods i Egieerig (CIMNE) Edificio C1, Gra Capitá s/, 08034 Barceloa, Spai ABSTRACT I this work

More information

A New Morphological 3D Shape Decomposition: Grayscale Interframe Interpolation Method

A New Morphological 3D Shape Decomposition: Grayscale Interframe Interpolation Method A ew Morphological 3D Shape Decompositio: Grayscale Iterframe Iterpolatio Method D.. Vizireau Politehica Uiversity Bucharest, Romaia ae@comm.pub.ro R. M. Udrea Politehica Uiversity Bucharest, Romaia mihea@comm.pub.ro

More information

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe Copyright 2016 Ramez Elmasri ad Shamkat B. Navathe CHAPTER 19 Query Optimizatio Copyright 2016 Ramez Elmasri ad Shamkat B. Navathe Itroductio Query optimizatio Coducted by a query optimizer i a DBMS Goal:

More information

Elementary Educational Computer

Elementary Educational Computer Chapter 5 Elemetary Educatioal Computer. Geeral structure of the Elemetary Educatioal Computer (EEC) The EEC coforms to the 5 uits structure defied by vo Neuma's model (.) All uits are preseted i a simplified

More information

MOTIF XF Extension Owner s Manual

MOTIF XF Extension Owner s Manual MOTIF XF Extesio Ower s Maual Table of Cotets About MOTIF XF Extesio...2 What Extesio ca do...2 Auto settig of Audio Driver... 2 Auto settigs of Remote Device... 2 Project templates with Iput/ Output Bus

More information

Baan Tools User Management

Baan Tools User Management Baa Tools User Maagemet Module Procedure UP008A US Documetiformatio Documet Documet code : UP008A US Documet group : User Documetatio Documet title : User Maagemet Applicatio/Package : Baa Tools Editio

More information

Introduction to SWARM Software and Algorithms for Running on Multicore Processors

Introduction to SWARM Software and Algorithms for Running on Multicore Processors Itroductio to SWARM Software ad Algorithms for Ruig o Multicore Processors David A. Bader Georgia Istitute of Techology http://www.cc.gatech.edu/~bader Tutorial compiled by Rucheek H. Sagai M.S. Studet,

More information

CMPT 125 Assignment 2 Solutions

CMPT 125 Assignment 2 Solutions CMPT 25 Assigmet 2 Solutios Questio (20 marks total) a) Let s cosider a iteger array of size 0. (0 marks, each part is 2 marks) it a[0]; I. How would you assig a poiter, called pa, to store the address

More information

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe Copyright 2016 Ramez Elmasri ad Shamkat B. Navathe CHAPTER 18 Strategies for Query Processig Copyright 2016 Ramez Elmasri ad Shamkat B. Navathe Itroductio DBMS techiques to process a query Scaer idetifies

More information

EE 459/500 HDL Based Digital Design with Programmable Logic. Lecture 13 Control and Sequencing: Hardwired and Microprogrammed Control

EE 459/500 HDL Based Digital Design with Programmable Logic. Lecture 13 Control and Sequencing: Hardwired and Microprogrammed Control EE 459/500 HDL Based Digital Desig with Programmable Logic Lecture 13 Cotrol ad Sequecig: Hardwired ad Microprogrammed Cotrol Refereces: Chapter s 4,5 from textbook Chapter 7 of M.M. Mao ad C.R. Kime,

More information

Python Programming: An Introduction to Computer Science

Python Programming: An Introduction to Computer Science Pytho Programmig: A Itroductio to Computer Sciece Chapter 1 Computers ad Programs 1 Objectives To uderstad the respective roles of hardware ad software i a computig system. To lear what computer scietists

More information

CSC 220: Computer Organization Unit 11 Basic Computer Organization and Design

CSC 220: Computer Organization Unit 11 Basic Computer Organization and Design College of Computer ad Iformatio Scieces Departmet of Computer Sciece CSC 220: Computer Orgaizatio Uit 11 Basic Computer Orgaizatio ad Desig 1 For the rest of the semester, we ll focus o computer architecture:

More information

How do we evaluate algorithms?

How do we evaluate algorithms? F2 Readig referece: chapter 2 + slides Algorithm complexity Big O ad big Ω To calculate ruig time Aalysis of recursive Algorithms Next time: Litterature: slides mostly The first Algorithm desig methods:

More information

Transforming Irregular Algorithms for Heterogeneous Computing - Case Studies in Bioinformatics

Transforming Irregular Algorithms for Heterogeneous Computing - Case Studies in Bioinformatics Trasformig Irregular lgorithms for Heterogeeous omputig - ase Studies i ioiformatics Jig Zhag dvisor: Dr. Wu Feg ollaborator: Hao Wag syergy.cs.vt.edu Irregular lgorithms haracterized by Operate o irregular

More information

Software development of components for complex signal analysis on the example of adaptive recursive estimation methods.

Software development of components for complex signal analysis on the example of adaptive recursive estimation methods. Software developmet of compoets for complex sigal aalysis o the example of adaptive recursive estimatio methods. SIMON BOYMANN, RALPH MASCHOTTA, SILKE LEHMANN, DUNJA STEUER Istitute of Biomedical Egieerig

More information

Chapter 4. Procedural Abstraction and Functions That Return a Value. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Chapter 4. Procedural Abstraction and Functions That Return a Value. Copyright 2015 Pearson Education, Ltd.. All rights reserved. Chapter 4 Procedural Abstractio ad Fuctios That Retur a Value Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 4.1 Top-Dow Desig 4.2 Predefied Fuctios 4.3 Programmer-Defied Fuctios 4.4

More information

Solutions to Final COMS W4115 Programming Languages and Translators Monday, May 4, :10-5:25pm, 309 Havemeyer

Solutions to Final COMS W4115 Programming Languages and Translators Monday, May 4, :10-5:25pm, 309 Havemeyer Departmet of Computer ciece Columbia Uiversity olutios to Fial COM W45 Programmig Laguages ad Traslators Moday, May 4, 2009 4:0-5:25pm, 309 Havemeyer Closed book, o aids. Do questios 5. Each questio is

More information

Programming with Shared Memory PART II. HPC Spring 2017 Prof. Robert van Engelen

Programming with Shared Memory PART II. HPC Spring 2017 Prof. Robert van Engelen Programmig with Shared Memory PART II HPC Sprig 2017 Prof. Robert va Egele Overview Sequetial cosistecy Parallel programmig costructs Depedece aalysis OpeMP Autoparallelizatio Further readig HPC Sprig

More information

arxiv: v2 [cs.ds] 24 Mar 2018

arxiv: v2 [cs.ds] 24 Mar 2018 Similar Elemets ad Metric Labelig o Complete Graphs arxiv:1803.08037v [cs.ds] 4 Mar 018 Pedro F. Felzeszwalb Brow Uiversity Providece, RI, USA pff@brow.edu March 8, 018 We cosider a problem that ivolves

More information

Computer Graphics Hardware An Overview

Computer Graphics Hardware An Overview Computer Graphics Hardware A Overview Graphics System Moitor Iput devices CPU/Memory GPU Raster Graphics System Raster: A array of picture elemets Based o raster-sca TV techology The scree (ad a picture)

More information

Analysis Metrics. Intro to Algorithm Analysis. Slides. 12. Alg Analysis. 12. Alg Analysis

Analysis Metrics. Intro to Algorithm Analysis. Slides. 12. Alg Analysis. 12. Alg Analysis Itro to Algorithm Aalysis Aalysis Metrics Slides. Table of Cotets. Aalysis Metrics 3. Exact Aalysis Rules 4. Simple Summatio 5. Summatio Formulas 6. Order of Magitude 7. Big-O otatio 8. Big-O Theorems

More information

Module Instantiation. Finite State Machines. Two Types of FSMs. Finite State Machines. Given submodule mux32two: Instantiation of mux32two

Module Instantiation. Finite State Machines. Two Types of FSMs. Finite State Machines. Given submodule mux32two: Instantiation of mux32two Give submodule mux32two: 2-to- MUX module mux32two (iput [3:] i,i, iput sel, output [3:] out); Module Istatiatio Fiite Machies esig methodology for sequetial logic -- idetify distict s -- create trasitio

More information

Pseudocode ( 1.1) Analysis of Algorithms. Primitive Operations. Pseudocode Details. Running Time ( 1.1) Estimating performance

Pseudocode ( 1.1) Analysis of Algorithms. Primitive Operations. Pseudocode Details. Running Time ( 1.1) Estimating performance Aalysis of Algorithms Iput Algorithm Output A algorithm is a step-by-step procedure for solvig a problem i a fiite amout of time. Pseudocode ( 1.1) High-level descriptio of a algorithm More structured

More information

Customer Portal Quick Reference User Guide

Customer Portal Quick Reference User Guide Customer Portal Quick Referece User Guide Overview This user guide is iteded for FM Approvals customers usig the Approval Iformatio Maagemet (AIM) customer portal to track their active projects. AIM is

More information

CMSC Computer Architecture Lecture 12: Virtual Memory. Prof. Yanjing Li University of Chicago

CMSC Computer Architecture Lecture 12: Virtual Memory. Prof. Yanjing Li University of Chicago CMSC 22200 Computer Architecture Lecture 12: Virtual Memory Prof. Yajig Li Uiversity of Chicago A System with Physical Memory Oly Examples: most Cray machies early PCs Memory early all embedded systems

More information

FURTHER INTEGRATION TECHNIQUES (TRIG, LOG, EXP FUNCTIONS)

FURTHER INTEGRATION TECHNIQUES (TRIG, LOG, EXP FUNCTIONS) Mathematics Revisio Guides More Trigoometric ad Log Itegrals Page of 7 MK HOME TUITION Mathematics Revisio Guides Level: AS / A Level AQA : C Edexcel: C OCR: C OCR MEI: C FURTHER INTEGRATION TECHNIQUES

More information

Image Segmentation EEE 508

Image Segmentation EEE 508 Image Segmetatio Objective: to determie (etract) object boudaries. It is a process of partitioig a image ito distict regios by groupig together eighborig piels based o some predefied similarity criterio.

More information

Recursion. Computer Science S-111 Harvard University David G. Sullivan, Ph.D. Review: Method Frames

Recursion. Computer Science S-111 Harvard University David G. Sullivan, Ph.D. Review: Method Frames Uit 4, Part 3 Recursio Computer Sciece S-111 Harvard Uiversity David G. Sulliva, Ph.D. Review: Method Frames Whe you make a method call, the Java rutime sets aside a block of memory kow as the frame of

More information

OCR Statistics 1. Working with data. Section 3: Measures of spread

OCR Statistics 1. Working with data. Section 3: Measures of spread Notes ad Eamples OCR Statistics 1 Workig with data Sectio 3: Measures of spread Just as there are several differet measures of cetral tedec (averages), there are a variet of statistical measures of spread.

More information

Bezier curves. Figure 2 shows cubic Bezier curves for various control points. In a Bezier curve, only

Bezier curves. Figure 2 shows cubic Bezier curves for various control points. In a Bezier curve, only Edited: Yeh-Liag Hsu (998--; recommeded: Yeh-Liag Hsu (--9; last updated: Yeh-Liag Hsu (9--7. Note: This is the course material for ME55 Geometric modelig ad computer graphics, Yua Ze Uiversity. art of

More information

COP4020 Programming Languages. Functional Programming Prof. Robert van Engelen

COP4020 Programming Languages. Functional Programming Prof. Robert van Engelen COP4020 Programmig Laguages Fuctioal Programmig Prof. Robert va Egele Overview What is fuctioal programmig? Historical origis of fuctioal programmig Fuctioal programmig today Cocepts of fuctioal programmig

More information

BAAN IVc/BaanERP. Conversion Guide Oracle7 to Oracle8

BAAN IVc/BaanERP. Conversion Guide Oracle7 to Oracle8 BAAN IVc/BaaERP A publicatio of: Baa Developmet B.V. P.O.Box 143 3770 AC Bareveld The Netherlads Prited i the Netherlads Baa Developmet B.V. 1999. All rights reserved. The iformatio i this documet is subject

More information

Administrative UNSUPERVISED LEARNING. Unsupervised learning. Supervised learning 11/25/13. Final project. No office hours today

Administrative UNSUPERVISED LEARNING. Unsupervised learning. Supervised learning 11/25/13. Final project. No office hours today Admiistrative Fial project No office hours today UNSUPERVISED LEARNING David Kauchak CS 451 Fall 2013 Supervised learig Usupervised learig label label 1 label 3 model/ predictor label 4 label 5 Supervised

More information

Baan Finance Financial Statements

Baan Finance Financial Statements Baa Fiace Fiacial Statemets Module Procedure UP041A US Documetiformatio Documet Documet code : UP041A US Documet group : User Documetatio Documet title : Fiacial Statemets Applicatio/Package : Baa Fiace

More information

Civil Engineering Computation

Civil Engineering Computation Civil Egieerig Computatio Fidig Roots of No-Liear Equatios March 14, 1945 World War II The R.A.F. first operatioal use of the Grad Slam bomb, Bielefeld, Germay. Cotets 2 Root basics Excel solver Newto-Raphso

More information

Chapter 9. Pointers and Dynamic Arrays. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Chapter 9. Pointers and Dynamic Arrays. Copyright 2015 Pearson Education, Ltd.. All rights reserved. Chapter 9 Poiters ad Dyamic Arrays Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 9.1 Poiters 9.2 Dyamic Arrays Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Slide 9-3

More information

Introduction to Computing Systems: From Bits and Gates to C and Beyond 2 nd Edition

Introduction to Computing Systems: From Bits and Gates to C and Beyond 2 nd Edition Lecture Goals Itroductio to Computig Systems: From Bits ad Gates to C ad Beyod 2 d Editio Yale N. Patt Sajay J. Patel Origial slides from Gregory Byrd, North Carolia State Uiversity Modified slides by

More information

Chapter 1. Introduction to Computers and C++ Programming. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Chapter 1. Introduction to Computers and C++ Programming. Copyright 2015 Pearson Education, Ltd.. All rights reserved. Chapter 1 Itroductio to Computers ad C++ Programmig Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 1.1 Computer Systems 1.2 Programmig ad Problem Solvig 1.3 Itroductio to C++ 1.4 Testig

More information

Cubic Polynomial Curves with a Shape Parameter

Cubic Polynomial Curves with a Shape Parameter roceedigs of the th WSEAS Iteratioal Coferece o Robotics Cotrol ad Maufacturig Techology Hagzhou Chia April -8 00 (pp5-70) Cubic olyomial Curves with a Shape arameter MO GUOLIANG ZHAO YANAN Iformatio ad

More information

A Note on Least-norm Solution of Global WireWarping

A Note on Least-norm Solution of Global WireWarping A Note o Least-orm Solutio of Global WireWarpig Charlie C. L. Wag Departmet of Mechaical ad Automatio Egieerig The Chiese Uiversity of Hog Kog Shati, N.T., Hog Kog E-mail: cwag@mae.cuhk.edu.hk Abstract

More information

CHAPTER IV: GRAPH THEORY. Section 1: Introduction to Graphs

CHAPTER IV: GRAPH THEORY. Section 1: Introduction to Graphs CHAPTER IV: GRAPH THEORY Sectio : Itroductio to Graphs Sice this class is called Number-Theoretic ad Discrete Structures, it would be a crime to oly focus o umber theory regardless how woderful those topics

More information

CS475 Parallel Programming

CS475 Parallel Programming CS475 Parallel Programmig Dese Matrix Multiply Wim Bohm, Colorado State Uiversity Except as otherwise oted, the cotet of this presetatio is licesed uder the Creative Commos Attributio 2.5 licese. Block

More information

One advantage that SONAR has over any other music-sequencing product I ve worked

One advantage that SONAR has over any other music-sequencing product I ve worked *gajedra* D:/Thomso_Learig_Projects/Garrigus_163132/z_productio/z_3B2_3D_files/Garrigus_163132_ch17.3d, 14/11/08/16:26:39, 16:26, page: 647 17 CAL 101 Oe advatage that SONAR has over ay other music-sequecig

More information

Chapter 11. Friends, Overloaded Operators, and Arrays in Classes. Copyright 2014 Pearson Addison-Wesley. All rights reserved.

Chapter 11. Friends, Overloaded Operators, and Arrays in Classes. Copyright 2014 Pearson Addison-Wesley. All rights reserved. Chapter 11 Frieds, Overloaded Operators, ad Arrays i Classes Copyright 2014 Pearso Addiso-Wesley. All rights reserved. Overview 11.1 Fried Fuctios 11.2 Overloadig Operators 11.3 Arrays ad Classes 11.4

More information

UNIT 4C Iteration: Scalability & Big O. Efficiency

UNIT 4C Iteration: Scalability & Big O. Efficiency UNIT 4C Iteratio: Scalability & Big O 1 Efficiecy A computer program should be totally correct, but it should also execute as quickly as possible (time-efficiecy) use memory wisely (storage-efficiecy)

More information

Web OS Switch Software

Web OS Switch Software Web OS Switch Software BBI Quick Guide Nortel Networks Part Number: 213164, Revisio A, July 2000 50 Great Oaks Boulevard Sa Jose, Califoria 95119 408-360-5500 Mai 408-360-5501 Fax www.orteletworks.com

More information

Pruning and Summarizing the Discovered Time Series Association Rules from Mechanical Sensor Data Qing YANG1,a,*, Shao-Yu WANG1,b, Ting-Ting ZHANG2,c

Pruning and Summarizing the Discovered Time Series Association Rules from Mechanical Sensor Data Qing YANG1,a,*, Shao-Yu WANG1,b, Ting-Ting ZHANG2,c Advaces i Egieerig Research (AER), volume 131 3rd Aual Iteratioal Coferece o Electroics, Electrical Egieerig ad Iformatio Sciece (EEEIS 2017) Pruig ad Summarizig the Discovered Time Series Associatio Rules

More information

Threads and Concurrency in Java: Part 1

Threads and Concurrency in Java: Part 1 Cocurrecy Threads ad Cocurrecy i Java: Part 1 What every computer egieer eeds to kow about cocurrecy: Cocurrecy is to utraied programmers as matches are to small childre. It is all too easy to get bured.

More information

n Explore virtualization concepts n Become familiar with cloud concepts

n Explore virtualization concepts n Become familiar with cloud concepts Chapter Objectives Explore virtualizatio cocepts Become familiar with cloud cocepts Chapter #15: Architecture ad Desig 2 Hypervisor Virtualizatio ad cloud services are becomig commo eterprise tools to

More information

New Results on Energy of Graphs of Small Order

New Results on Energy of Graphs of Small Order Global Joural of Pure ad Applied Mathematics. ISSN 0973-1768 Volume 13, Number 7 (2017), pp. 2837-2848 Research Idia Publicatios http://www.ripublicatio.com New Results o Eergy of Graphs of Small Order

More information

Threads and Concurrency in Java: Part 1

Threads and Concurrency in Java: Part 1 Threads ad Cocurrecy i Java: Part 1 1 Cocurrecy What every computer egieer eeds to kow about cocurrecy: Cocurrecy is to utraied programmers as matches are to small childre. It is all too easy to get bured.

More information

Analysis of Algorithms

Analysis of Algorithms Aalysis of Algorithms Ruig Time of a algorithm Ruig Time Upper Bouds Lower Bouds Examples Mathematical facts Iput Algorithm Output A algorithm is a step-by-step procedure for solvig a problem i a fiite

More information

Section 7.2: Direction Fields and Euler s Methods

Section 7.2: Direction Fields and Euler s Methods Sectio 7.: Directio ields ad Euler s Methods Practice HW from Stewart Tetbook ot to had i p. 5 # -3 9-3 odd or a give differetial equatio we wat to look at was to fid its solutio. I this chapter we will

More information

Message Integrity and Hash Functions. TELE3119: Week4

Message Integrity and Hash Functions. TELE3119: Week4 Message Itegrity ad Hash Fuctios TELE3119: Week4 Outlie Message Itegrity Hash fuctios ad applicatios Hash Structure Popular Hash fuctios 4-2 Message Itegrity Goal: itegrity (ot secrecy) Allows commuicatig

More information

Convex hull ( 凸殻 ) property

Convex hull ( 凸殻 ) property Covex hull ( 凸殻 ) property The covex hull of a set of poits S i dimesios is the itersectio of all covex sets cotaiig S. For N poits P,..., P N, the covex hull C is the give by the expressio The covex hull

More information

Chapter 8. Strings and Vectors. Copyright 2014 Pearson Addison-Wesley. All rights reserved.

Chapter 8. Strings and Vectors. Copyright 2014 Pearson Addison-Wesley. All rights reserved. Chapter 8 Strigs ad Vectors Overview 8.1 A Array Type for Strigs 8.2 The Stadard strig Class 8.3 Vectors Slide 8-3 8.1 A Array Type for Strigs A Array Type for Strigs C-strigs ca be used to represet strigs

More information

The isoperimetric problem on the hypercube

The isoperimetric problem on the hypercube The isoperimetric problem o the hypercube Prepared by: Steve Butler November 2, 2005 1 The isoperimetric problem We will cosider the -dimesioal hypercube Q Recall that the hypercube Q is a graph whose

More information

condition w i B i S maximum u i

condition w i B i S maximum u i ecture 10 Dyamic Programmig 10.1 Kapsack Problem November 1, 2004 ecturer: Kamal Jai Notes: Tobias Holgers We are give a set of items U = {a 1, a 2,..., a }. Each item has a weight w i Z + ad a utility

More information

BASED ON ITERATIVE ERROR-CORRECTION

BASED ON ITERATIVE ERROR-CORRECTION A COHPARISO OF CRYPTAALYTIC PRICIPLES BASED O ITERATIVE ERROR-CORRECTIO Miodrag J. MihaljeviC ad Jova Dj. GoliC Istitute of Applied Mathematics ad Electroics. Belgrade School of Electrical Egieerig. Uiversity

More information

Stone Images Retrieval Based on Color Histogram

Stone Images Retrieval Based on Color Histogram Stoe Images Retrieval Based o Color Histogram Qiag Zhao, Jie Yag, Jigyi Yag, Hogxig Liu School of Iformatio Egieerig, Wuha Uiversity of Techology Wuha, Chia Abstract Stoe images color features are chose

More information

GE FUNDAMENTALS OF COMPUTING AND PROGRAMMING UNIT III

GE FUNDAMENTALS OF COMPUTING AND PROGRAMMING UNIT III GE2112 - FUNDAMENTALS OF COMPUTING AND PROGRAMMING UNIT III PROBLEM SOLVING AND OFFICE APPLICATION SOFTWARE Plaig the Computer Program Purpose Algorithm Flow Charts Pseudocode -Applicatio Software Packages-

More information

A Taste of Maya. Character Setup

A Taste of Maya. Character Setup This tutorial goes through the steps to add aimatio cotrols to a previously modeled character. The character i the scee below is wearig clothes made with Cloth ad the sceery has bee created with Pait Effects.

More information

COP4020 Programming Languages. Compilers and Interpreters Prof. Robert van Engelen

COP4020 Programming Languages. Compilers and Interpreters Prof. Robert van Engelen COP4020 mig Laguages Compilers ad Iterpreters Prof. Robert va Egele Overview Commo compiler ad iterpreter cofiguratios Virtual machies Itegrated developmet eviromets Compiler phases Lexical aalysis Sytax

More information

Chapter 10. Defining Classes. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Chapter 10. Defining Classes. Copyright 2015 Pearson Education, Ltd.. All rights reserved. Chapter 10 Defiig Classes Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 10.1 Structures 10.2 Classes 10.3 Abstract Data Types 10.4 Itroductio to Iheritace Copyright 2015 Pearso Educatio,

More information

Polynomial Functions and Models. Learning Objectives. Polynomials. P (x) = a n x n + a n 1 x n a 1 x + a 0, a n 0

Polynomial Functions and Models. Learning Objectives. Polynomials. P (x) = a n x n + a n 1 x n a 1 x + a 0, a n 0 Polyomial Fuctios ad Models 1 Learig Objectives 1. Idetify polyomial fuctios ad their degree 2. Graph polyomial fuctios usig trasformatios 3. Idetify the real zeros of a polyomial fuctio ad their multiplicity

More information

Task scenarios Outline. Scenarios in Knowledge Extraction. Proposed Framework for Scenario to Design Diagram Transformation

Task scenarios Outline. Scenarios in Knowledge Extraction. Proposed Framework for Scenario to Design Diagram Transformation 6-0-0 Kowledge Trasformatio from Task Scearios to View-based Desig Diagrams Nima Dezhkam Kamra Sartipi {dezhka, sartipi}@mcmaster.ca Departmet of Computig ad Software McMaster Uiversity CANADA SEKE 08

More information

Overview. Chapter 18 Vectors and Arrays. Reminder. vector. Bjarne Stroustrup

Overview. Chapter 18 Vectors and Arrays. Reminder. vector. Bjarne Stroustrup Chapter 18 Vectors ad Arrays Bjare Stroustrup Vector revisited How are they implemeted? Poiters ad free store Destructors Iitializatio Copy ad move Arrays Array ad poiter problems Chagig size Templates

More information

AUTOMATICALLY AND ACCURATELY MATCHING OBJECTS IN GEOSPATIAL DATASETS

AUTOMATICALLY AND ACCURATELY MATCHING OBJECTS IN GEOSPATIAL DATASETS AUTOMATICALLY AND ACCURATELY MATCHING OBJECTS IN GEOSPATIAL DATASETS L. Li a, *, M. F. Goodchild a a Dept. of Geography, Uiversity of Califoria, Sata Barbara, CA, 93106 US - (lia, good)@geog.ucsb.edu KEY

More information

Lecture 14. Shell. File descriptors. File table and descriptors. Fork and exec Fd manipulation Pipes

Lecture 14. Shell. File descriptors. File table and descriptors. Fork and exec Fd manipulation Pipes 218 Dr. Jeffrey A. Turkstra 1 Lecture 14 File table ad descriptors CS 252: Systems Programmig Lecture 14: Files, Fork, ad Pipes Fork ad exec Fd maipulatio Pipes Dr. Jef Turkstra 218 Dr. Jeffrey A. Turkstra

More information

n The C++ template facility provides the ability to define n A generic facility allows code to be written once then

n The C++ template facility provides the ability to define n A generic facility allows code to be written once then UCLA PIC 10 B Problem Solvig usig C++ Programmig Ivo Diov, Asst. Prof. i Mathematics, Neurology, Statistics Istructor: Teachig Assistat: Suzae Nezzar, Mathematics Chapter 13 Templates for More Abstractio

More information

Behavioral Modeling in Verilog

Behavioral Modeling in Verilog Behavioral Modelig i Verilog COE 202 Digital Logic Desig Dr. Muhamed Mudawar Kig Fahd Uiversity of Petroleum ad Mierals Presetatio Outlie Itroductio to Dataflow ad Behavioral Modelig Verilog Operators

More information

CSE 417: Algorithms and Computational Complexity

CSE 417: Algorithms and Computational Complexity Time CSE 47: Algorithms ad Computatioal Readig assigmet Read Chapter of The ALGORITHM Desig Maual Aalysis & Sortig Autum 00 Paul Beame aalysis Problem size Worst-case complexity: max # steps algorithm

More information

Parabolic Path to a Best Best-Fit Line:

Parabolic Path to a Best Best-Fit Line: Studet Activity : Fidig the Least Squares Regressio Lie By Explorig the Relatioship betwee Slope ad Residuals Objective: How does oe determie a best best-fit lie for a set of data? Eyeballig it may be

More information

THIN LAYER ORIENTED MAGNETOSTATIC CALCULATION MODULE FOR ELMER FEM, BASED ON THE METHOD OF THE MOMENTS. Roman Szewczyk

THIN LAYER ORIENTED MAGNETOSTATIC CALCULATION MODULE FOR ELMER FEM, BASED ON THE METHOD OF THE MOMENTS. Roman Szewczyk THIN LAYER ORIENTED MAGNETOSTATIC CALCULATION MODULE FOR ELMER FEM, BASED ON THE METHOD OF THE MOMENTS Roma Szewczyk Istitute of Metrology ad Biomedical Egieerig, Warsaw Uiversity of Techology E-mail:

More information

Fast Fourier Transform (FFT) Algorithms

Fast Fourier Transform (FFT) Algorithms Fast Fourier Trasform FFT Algorithms Relatio to the z-trasform elsewhere, ozero, z x z X x [ ] 2 ~ elsewhere,, ~ e j x X x x π j e z z X X π 2 ~ The DFS X represets evely spaced samples of the z- trasform

More information

CORD Test Project in Okinawa Open Laboratory

CORD Test Project in Okinawa Open Laboratory CORD Test Project i Okiawa Ope Laboratory Fukumasa Morifuji NTT Commuicatios Trasform your busiess, trasced expectatios with our techologically advaced solutios. Ageda VxF platform i NTT Commuicatios Expectatio

More information

What are we going to learn? CSC Data Structures Analysis of Algorithms. Overview. Algorithm, and Inputs

What are we going to learn? CSC Data Structures Analysis of Algorithms. Overview. Algorithm, and Inputs What are we goig to lear? CSC316-003 Data Structures Aalysis of Algorithms Computer Sciece North Carolia State Uiversity Need to say that some algorithms are better tha others Criteria for evaluatio Structure

More information

the beginning of the program in order for it to work correctly. Similarly, a Confirm

the beginning of the program in order for it to work correctly. Similarly, a Confirm I our sytax, a Assume statemet will be used to record what must be true at the begiig of the program i order for it to work correctly. Similarly, a Cofirm statemet is used to record what should be true

More information

JavaFX. JavaFX 2.2 Installation Guide Release 2.2 E August 2012 Installation instructions by operating system for JavaFX 2.

JavaFX. JavaFX 2.2 Installation Guide Release 2.2 E August 2012 Installation instructions by operating system for JavaFX 2. JavaFX JavaFX 2.2 Istallatio Guide Release 2.2 E20474-06 August 2012 Istallatio istructios by operatig system for JavaFX 2.2 JavaFX/JavaFX 2.2 Istallatio Guide E20474-06 Copyright 2008, 2012, Oracle ad/or

More information

Chapter 8. Strings and Vectors. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Chapter 8. Strings and Vectors. Copyright 2015 Pearson Education, Ltd.. All rights reserved. Chapter 8 Strigs ad Vectors Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 8.1 A Array Type for Strigs 8.2 The Stadard strig Class 8.3 Vectors Copyright 2015 Pearso Educatio, Ltd..

More information

Transitioning to BGP

Transitioning to BGP Trasitioig to BGP ISP Workshops These materials are licesed uder the Creative Commos Attributio-NoCommercial 4.0 Iteratioal licese (http://creativecommos.org/liceses/by-c/4.0/) Last updated 24 th April

More information

A Boolean Query Processing with a Result Cache in Mediator Systems

A Boolean Query Processing with a Result Cache in Mediator Systems A Boolea Query Processig with a Result Cache i Mediator Systems Jae-heo Cheog ad Sag-goo Lee * Departmet of Computer Sciece Seoul Natioal Uiversity Sa 56-1 Shillim-dog Kwaak-gu, Seoul Korea {cjh, sglee}cygus.su.ac.kr

More information

WEBSITE STRUCTURE IMPROVEMENT USING ANT COLONY TECHNIQUE

WEBSITE STRUCTURE IMPROVEMENT USING ANT COLONY TECHNIQUE WEBSITE STRUCTURE IMPROVEMENT USING ANT COLONY TECHNIQUE Wiwik Aggraei 1, Agyl Ardi Rahmadi 1, Radityo Prasetyo Wibowo 1 1 Iformatio System Departmet, Faculty of Iformatio Techology, Istitut Tekologi Sepuluh

More information