MPI Groups and Communicators

Size: px
Start display at page:

Download "MPI Groups and Communicators"

Transcription

1 MPI Groups nd Communictors We now lern techniques to modulrize communictions t more locl level so tht messges do not interfere with ech other We do this by setting up Groups of processes We then crete new communictor bsed on the subgroup structure All MPI communiction commnds involve communictor, so fr we hve only used MPI_COMM_WORLD; we cn now use other communictors bsed on group structures

2 MPI Group Commnds MPI_Group_size returns number of processes in group MPI_Group_rnk returns rnk of clling process in group MPI_Group_compre compres group members nd group order MPI_ Group_ trnslte_ rnks trnsltes rnks of processes in one group to those in nother group MPI_Comm_group returns the group ssocited with communictor MPI_Group_union cretes group by combining two groups MPI_Group_intersection cretes group from the intersection of two groups MPI_Group_difference cretes group from the difference between two groups MPI_Group_incl cretes group from listed members of n existing group MPI_Group_excl cretes group excluding listed members of n existing group MPI_Group_rnge_incl cretes group ccording to first rnk, stride, lst rnk MPI_Group_rnge_excl cretes group by deleting ccording to first rnk, stride, lst rnk MPI_Group_free mrks group for delloction These re the most common of the commnds Detils on the prmeters will be given s prt of the exercises

3 MPI Communictor Commnds MPI_Comm_size returns number of processes in communictor's group MPI_Comm_rnk returns rnk of clling process in communictor's group MPI_ Comm_ compre compres two communictors MPI_Comm_dup duplictes communictor MPI_Comm_crete cretes new communictor for group MPI_Comm_split splits communictor into multiple, non-overlpping overlpping communictors MPI_Comm_free mrks communictor for delloction These re the most common of the commnds Detils on the prmeters will be given s prt of the exercises

4 Exmple: Eight Subgroups of Size 4 Assume 32 processes re vilble Here re the commnds to crete these groups rnks1[4]={0,1,2,3}, rnks2[4]={4,5,6,7}; rnks3[4]={8,9,10,11}, rnks4[4]={12,13,14,15}; rnks5[4]={16,17,18,19}, rnks6[4]={20,21,22,23}; rnks7[4]={24,25,26,27}, rnks8[4]={28,29,30,31}; MPI_Group orig_group, new_group; MPI_Comm new_comm; : : : /* initilize, get size, get rnks, etc. here /* Extrct the originl group hndle */ MPI_Comm_group(MPI_COMM_WORLD, &orig_group); /* Divide tsks into eight distinct groups bsed upon rnk */ if (rnk < NPROCS/8) { MPI_ Group_ incl(orig g_group, NPROCS/8, rnks1, &new_group); } else. /* other seven cses */ /* Crete new new communictor */ MPI_Comm_crete(MPI_COMM_WORLD, new_group, &new_comm);

5 In-Clss Lb You will use eight processes Process 0, 1, 2, 3 will be ssigned to the first group Process 4, 5, 6, 7 will be ssigned to the second group Ech process will know its originl rnk nd its new rnk within the new groups You will crete one new communictor bsed on these groups Using the new communictor Hve ech process sum up the originl rnks in its group using reduce ll The result for the first group is 6, the result for the second group is 22 The lb sheet describes this lb in detil; check off with the lb ssistnt when finished

6 MPI_COMM_DUP nd MPI_COMM_FREE A progrm my crete new communictor comprising the sme process group Uses new context to ensure tht communictions performed for different purposes re not confused. This mechnism supports sequentil composition. A communictor is discrded fter it is done

7 A Simple Exmple We wnt to trnspose mtrix using locl communictor tht will not interfere with other communictions integer comm, newcomm, ierr! Hndles re integers... cll MPI_COMM_DUP(comm, newcomm, ierr)! Crete new context cll trnspose(newcomm, A)! Pss mtrix A to librry cll MPI_COMM_FREE(newcomm, ierr)! Free new context This exmple is in Fortrn This exmple is in Fortrn, but you get the ide

8 MPI_COMM_SPLIT A progrm my crete new communictor comprising just subset of given group of processes. These processes cn then communicte mong themselves without fer of conflict with other concurrent computtions. This mechnism supports prllel composition.

9 A Simple Exmple The gol is to split eight processes into three communictors with the ID of ech process defined by myid mod 3 Notice tht in the subcommunictors the numbering strts t 0 nd increses by 1 MPI_Comm comm, newcomm; int myid, color; MPI_Comm_rnk(comm, &myid); color = myid%3; MPI_Comm_split(comm, color, myid, &newcomm);

10 Progrm 12 Wht will be printed by this progrm? (ssume n 8) #include <stdio.h> #include <mpi.h> min(int rgc, chr* rgv[]) { MPI_Comm MY_COMM; int world_rnk,my_rnk,my_size; sttic int vlue[12]={0,0,1,1,1,2,2,2,3,3,3,3}; int color; MPI_Init(&rgc,&rgv); MPI_Comm_rnk(MPI_COMM_WORLD,&world_rnk); COMM k) color=vlue[world_rnk]; MPI_Comm_split(MPI_COMM_WORLD,color,world_rnk,&MY_COMM); MPI_Comm_rnk(MY_COMM,&my_rnk); COMM k) MPI_Comm_size(MY_COMM,&my_size); printf("world_rnk=%d my_rnk=%d color=%d my_size=%d\n", world_rnk,my_rnk,color,my_size); k l } MPI_Finlize();

11 prog12]$ mpirun -n 8./prog12 world_rnk=0 my_rnk=0 color=0 my_size=2 world_rnk=2 my_rnk=0 color=1 my_size=3 world_rnk=6 my_rnk=1 color=2 my_size=3 world_rnk=5 my_rnk=0 color=2 my_size=3 world_rnk=1 my_rnk=1 color=0 my_size=2 world_rnk=4 my_rnk=2 color=1 my_size=3 world_ rnk=3 my_ rnk=1 color=1 my_ size=3 world_rnk=7 my_rnk=2 color=2 my_size=3 prog12]$

12 MPI_INTERCOM_CREATE A progrm my construct n intercommunictor This links processes in two groups. This mechnism supports prllel composition.

13 A Simple Exmple Suppose MPI_COMM_SPLIT hs tken 8 processes nd creted two distinct communictors: the first contins the even elements nd the second contins the odd elements The gol is the set up intercommunictions between these two communictors

14 The Progrm Code this exmple is in FORTRAN, the intent should be cler

15 #include <stdio.h> #include <mpi.h> Progrm 13-1 min(int rgc, chr* rgv[]) { MPI_Comm MY_COMM; MPI_ Comm THE_ INTER; int world_rnk,locl_rnk, inter_rnk; int color, i; int rr[5]; MPI_Sttus sttus; MPI_Init(&rgc,&rgv); MPI_Comm_rnk(MPI_COMM_WORLD,&world_rnk); color=world_rnk%2; MPI_Comm_split(MPI_COMM_WORLD,color,0,&MY_COMM); if (color==0) { MPI_Intercomm_crete(MY_COMM,0,MPI_COMM_WORLD,1,33,&THE_INTER); MPI_Comm_rnk(MY_COMM, &locl_rnk); MPI_Comm_rnk(THE_INTER, &inter_rnk); if(locl_rnk == 0){ printf("color=%d inter_rnk=%d locl rnk %d: ", color, inter_rnk, locl_rnk); for(i = 0; i < 5; i++){ printf("%d ", rr[i]); } printf("\n"); ") MPI_Send(rr, 5, MPI_INT, 0, 0, THE_INTER); } }

16 Progrm 13-2 } } else if (color==1) { MPI_Intercomm_crete(MY_COMM,0,MPI_COMM_WORLD,0,33,&THE_INTER); MPI_Comm_rnk(MY_COMM, &locl_rnk); MPI_ Comm_ rnk(the _ INTER, &inter_ rnk); if(locl_rnk == 0){ printf("about to recieve. color=%d inter_rnk=%d P%d: ", color, inter_rnk, locl_rnk); MPI_Recv(rr, 5, MPI_INT, 0, 0, THE_INTER, &sttus); for(i = 0; i<5;i++){ printf("%d ", rr[i]); } printf("\n"); } } MPI_Comm_free(&THE_INTER); MPI_Finlize(); Wht is printed by this progrm?

17 prog13]$ mpirun -n 2./prog13 color=0 inter_rnk=0 locl rnk 0: About tto recieve. color=1 1inter_rnk=0 0P0: [blk@virtul prog13]$

18 Exercise: Using Intercommunictors Split the processes s shown: 0,2,4,6 in one group nd d1357i 1,3,5,7 in one group Set up intercommunictor between corresponding elements in subgroups Use send nd receive between pired processors to exchnge their world rnks; print the sums For the originl rnks 0..7 the results re 1, 1, 5, 5, 9, 9, 13, 13; the order will vry due to prllelism Hve the lb ssistnt check off your progrm when completed

19 MPI_Crt_crete Mkes new communictor to which h topology informtion hs been ttched Synopsis #include "mpi.h" int MPI_Crt_crete ( MPI_Comm comm_old, int ndims, int *dims, int *periods, int reorder, MPI_Comm *comm_crt ) Input Prmeters comm_old input communictor (hndle) ndims number of dimensions of crtesin grid (integer) dims integer rry of size ndims specifying i the number of processes in ech dimension periods logicl rry of size ndims specifying whether the grid is periodic (true) or not (flse) in ech dimension reorder rnking my be reordered (true) or not (flse) (logicl) Output Prmeter Output Prmeter comm_crt communictor with new crtesin topology (hndle)

20 MPI_Crt_coords Determines process coords in crtesin topology given rnk in group Synopsis #include "mpi.h" int MPI_Crt_coords ( MPI_Comm comm, int rnk, int mxdims, int *coords ) Input Prmeters comm communictor with crtesin structure (hndle) rnk rnk of process within group of comm (integer) mxdims length of vector coords in the clling progrm (integer) Output Prmeter coords integer rry (of size ndims) contining the Crtesin coordintes of specified process (integer)

21 MPI_Crt_sub Prtitions communictor into subgroups which h form lower-dimensionl crtesin subgrids Synopsis #include "mpi.h" int MPI_Crt_sub ( MPI_Comm comm, int *remin_dims, MPI_Comm *comm_new ) Input Prmeters comm communictor with crtesin structure (hndle) remin_dims the ith entry of remin_dims specifies whether the ith dimension is kept in the subgrid (true) or is dropped (flse) (logicl vector) Output Prmeter newcomm communictor contining the subgrid tht includes the clling process (hndle)

22 MPI_Crt_rnk Determines process rnk in communictor given Crtesin loction Synopsis #include "mpi.h" int MPI_Crt_rnk _ ( MPI_Comm comm, int *coords, int *rnk ) Input Prmeters comm communictor with crtesin structure t (hndle) coords integer rry (of size ndims) specifying the crtesin coordintes of process Output Prmeter rnk rnk of specified process (integer)

23 Mtrix Multipliction The clssic sequentil lgorithm for (int i = 0 ; i < ROWS ; i++) { for (int j = 0 ; j < COLUMNS ; j++) { double sum = 0.0 ; for (int k = 0 ; k < COLUMNS ; k++) { sum = sum + A[i][k] * B[k][j] ; } C[i][j] = sum ; } } The complexity for n n x n mtrix is O(n 3 )

24 How to Decompose the Mtrix Some choices Which choice do you think will be most productive?

25 Multipliction of Submtrices b b b b b b b b b b b b b b b b A00A A01 A 10 A B01 B B 10 B 11 = C 00 C C10 C C 00 = A00 B00 + A01 B10 C 01 = A00 B01 + A01 B11 C10 = A10 B00 + A11 B10 C11 = A10 B01 + A11 B11

26 Sub-block definition of Mtrix Multiply The entire mtrix is 16 x 16; ech sub block is 4 x 4 Note indices strt t 0 for rows nd columns of mtrices They strt t 1 for rows nd columns of processors

27 Fox s Algorithm (Brodcst, Multiply, nd Roll)

28 The first stge -- index n=0 in sub-block sum -- of the lgorithm on N=16 exmple

29 The second stge -- n=1 in sum over subblock indices -- of the lgorithm on N=16 exmple

30 Second stge, continued

31 Look t the whole lgorithm on one element

32 More Detils in Pseudocode Clculting sub-block C[i,j] q = sqrt(p); dest = ((i-1) mod q, j); source = ((i+1) mod q, j); for(stge = 0; stge < q; stge++) { k_br = (i + stge) mod q; Brodcst A[i, k_br] cross row i; C[i,j] = C[i,j] + A[i, k_ br] * B[k _ br, j] Send B[k_br, j] to dest; Receive B[(k_br+1) mod q, j] from source; } We will use communictors for the Brodcst, Send nd Receivee

33 Holding informtion in struct We will use struct to fcilitte pssing heterogeneous set of informtion esily typedef struct { int p; /* number of processes */ MPI_Comm comm; /* Communictor for entire grid */ MPI_Comm row_comm; /* Communictor for my row */ MPI_ Comm col_ comm; /* Communictor for my col */ int q; /* order of grid */ int my_row; /* my row number */ int my_col; /* my col number */ int my_rnk; /* my rnk in the grid comm */ } GRID_INFO_T;

34 Setting up the grid - 1 Setting up grid informtion MPI_Comm_size(MPI_COMM_WORLD, &(grid->p)); MPI_Comm_rnk(MPI_COMM_WORLD, COMM &old_rnk); Assuming tht p is perfect squre we ssign grid->q = (int) sqrt((double) grid->p); dimensions[0] = dimensions[1] = grid->q; Setting up for verticl circulr shift wrp_round[0] = wrp_round[1] = 1; MPI_Crt_crete(MPI_COMM_WORLD, 2, dimensions, wrp_round, 1, &(grid->comm)); MPI_Comm_rnk(grid->comm, &(grid_rnk)); rnk)); MPI_Crt_coords(grid->comm, grid->my_rnk2, 2, coordintes); grid->my >my_row = coordintes[0]; grid->my_col = coordintes[1];

35 Setting up the grid - 2 Setting up the row communictors free_coords[0] = 0; free_coords[1] = 1; MPI_Comm_sub(grid->comm, free_coords, &(grid->row_comm)); Setting up the column communictors free_coords[0] = 1; free_coords[1] = 0; MPI_Comm_sub(grid->comm, free_coords, &(grid->col_comm));

36 A New MPI Commnd When the row of B re rolled upwrd (with wrp round), you will need to use the MPI commnd int MPI_Sendrecv_replce ( void* buffer /* in/out */, int count /* in */, MPI_Dttype dttype /* in */, int dest /* in */, int send_tg /* in */, int source /* in */, int recv_tg /* in */, MPI_Comm comm /* in */, MPI_Sttus* sttus /* out */ )

37 Set up for Fox s Algorithm - 1 Prmeters int n /* in */, GRID_INFO_T* grid /* in */, LOCAL_MATRIX_T* locl_a /* in */, LOCAL_MATRIX_T* locl_b /* in */, LOCAL_MATRIX_T* T* locl_c l /* out */ Locl Declrtions LOCAL_MATRIX_T* temp_a; int stge; int bcst_root; int n_br; int source; int dest; MPI_Sttus sttus;

38 Set up for Fox s Algorithm - 2 Initil Assignments n_br = n/grid->q; Set_to_zero(locl_C); source = (grid->my_row + 1) % grid->q; dest = (grid->my_row + grid->q 1) % grid->q; temp_a = locl_mtrix_llocte(n_br); Other tsks you need to write method Locl_mtrix_multiply tht multiplies sub-block A times sub-block B nd returns sub-block C s n out prmeter

39 Implementing the Min Loop For the grid->p stges do the following set bcst_root to (grid->my_row + stge) mod grid->q if the root equls my_col then brodcst locl_a cross the row clculte l locl_c l s locl_a l * locl_bl else brodcst temp_a cross the row clculte locl_c s temp_a * locl_b end if cll MPI_Sendrecv_replce to roll the rows of B upwrd

40 Timing Routines MPI_Wtick Returns the resolution of MPI_Wtime Synopsis #include "mpi.h" double MPI_Wtick() Return vlue Time in seconds of resolution of MPI_Wtime MPI_Wtime Returns n elpsed time on the clling processor Synopsis #include "mpi.h" double MPI_Wtime() Return vlue Time in seconds since n rbitrry time in the pst

41 Exmple of Running Fox s Algorithm Number of processes is perfect squre nd divides the size of the mtrix Two mtrices of ll 1 s re generted [blk@virtul fox]$ mpirun -n 4./fox Wht's the order of the mtrices? 8 Enter A We red A =

42 Enter B We red B = The product is time of computtion = [blk@virtul fox]$

43 Progrm: Complete Fox s Algorithm Your tsk is to get Fox s lgorithm fully functionl using MPI Define the method Fox Define the locl mtrix multiply Add timing routines to Fox s lgorithm so tht you cn collect performnce dt Collect dt for Fox s lgorithm compred with the trditionl sequentil lgorith Increse the mtrix size until you see some differences in performnce Include your results in redme file

Dynamic Programming. Andreas Klappenecker. [partially based on slides by Prof. Welch] Monday, September 24, 2012

Dynamic Programming. Andreas Klappenecker. [partially based on slides by Prof. Welch] Monday, September 24, 2012 Dynmic Progrmming Andres Klppenecker [prtilly bsed on slides by Prof. Welch] 1 Dynmic Progrmming Optiml substructure An optiml solution to the problem contins within it optiml solutions to subproblems.

More information

COSC 4397 Parallel Computation. Introduction to MPI (III) Process Grouping. Terminology (I)

COSC 4397 Parallel Computation. Introduction to MPI (III) Process Grouping. Terminology (I) COSC 4397 Introduction to MPI (III) Process Grouping Spring 2010 Terminology (I) an MPI_Group is the object describing the list of processes forming a logical entity a group has a size MPI_Group_size every

More information

Introduction to Parallel. Programming

Introduction to Parallel. Programming University of Nizhni Novgorod Faculty of Computational Mathematics & Cybernetics Introduction to Parallel Section 4. Part 3. Programming Parallel Programming with MPI Gergel V.P., Professor, D.Sc., Software

More information

INTRODUCTION TO MPI COMMUNICATORS AND VIRTUAL TOPOLOGIES

INTRODUCTION TO MPI COMMUNICATORS AND VIRTUAL TOPOLOGIES INTRODUCTION TO MPI COMMUNICATORS AND VIRTUAL TOPOLOGIES Introduction to Parallel Computing with MPI and OpenMP 24 november 2017 a.marani@cineca.it WHAT ARE COMMUNICATORS? Many users are familiar with

More information

CPS 303 High Performance Computing

CPS 303 High Performance Computing CPS 303 High Performance Computing Wensheng Shen Department of Computational Science SUNY Brockport Chapter 7: Communicators and topologies Communicators: a communicator is a collection of processes that

More information

Topologies. Ned Nedialkov. McMaster University Canada. SE 4F03 March 2016

Topologies. Ned Nedialkov. McMaster University Canada. SE 4F03 March 2016 Topologies Ned Nedialkov McMaster University Canada SE 4F03 March 2016 Outline Introduction Cartesian topology Some Cartesian topology functions Some graph topology functions c 2013 16 Ned Nedialkov 2/11

More information

Data sharing in OpenMP

Data sharing in OpenMP Dt shring in OpenMP Polo Burgio polo.burgio@unimore.it Outline Expressing prllelism Understnding prllel threds Memory Dt mngement Dt cluses Synchroniztion Brriers, locks, criticl sections Work prtitioning

More information

cisc1110 fall 2010 lecture VI.2 call by value function parameters another call by value example:

cisc1110 fall 2010 lecture VI.2 call by value function parameters another call by value example: cisc1110 fll 2010 lecture VI.2 cll y vlue function prmeters more on functions more on cll y vlue nd cll y reference pssing strings to functions returning strings from functions vrile scope glol vriles

More information

Product of polynomials. Introduction to Programming (in C++) Numerical algorithms. Product of polynomials. Product of polynomials

Product of polynomials. Introduction to Programming (in C++) Numerical algorithms. Product of polynomials. Product of polynomials Product of polynomils Introduction to Progrmming (in C++) Numericl lgorithms Jordi Cortdell, Ricrd Gvldà, Fernndo Orejs Dept. of Computer Science, UPC Given two polynomils on one vrile nd rel coefficients,

More information

Geometric transformations

Geometric transformations Geometric trnsformtions Computer Grphics Some slides re bsed on Shy Shlom slides from TAU mn n n m m T A,,,,,, 2 1 2 22 12 1 21 11 Rows become columns nd columns become rows nm n n m m A,,,,,, 1 1 2 22

More information

box Boxes and Arrows 3 true 7.59 'X' An object is drawn as a box that contains its data members, for example:

box Boxes and Arrows 3 true 7.59 'X' An object is drawn as a box that contains its data members, for example: Boxes nd Arrows There re two kinds of vriles in Jv: those tht store primitive vlues nd those tht store references. Primitive vlues re vlues of type long, int, short, chr, yte, oolen, doule, nd flot. References

More information

Stained Glass Design. Teaching Goals:

Stained Glass Design. Teaching Goals: Stined Glss Design Time required 45-90 minutes Teching Gols: 1. Students pply grphic methods to design vrious shpes on the plne.. Students pply geometric trnsformtions of grphs of functions in order to

More information

Agenda & Reading. Class Exercise. COMPSCI 105 SS 2012 Principles of Computer Science. Arrays

Agenda & Reading. Class Exercise. COMPSCI 105 SS 2012 Principles of Computer Science. Arrays COMPSCI 5 SS Principles of Computer Science Arrys & Multidimensionl Arrys Agend & Reding Agend Arrys Creting & Using Primitive & Reference Types Assignments & Equlity Pss y Vlue & Pss y Reference Copying

More information

Communicators and Topologies: Matrix Multiplication Example

Communicators and Topologies: Matrix Multiplication Example Communicators and Topologies: Matrix Multiplication Example Ned Nedialkov McMaster University Canada CS/SE 4F03 March 2016 Outline Fox s algorithm Example Implementation outline c 2013 16 Ned Nedialkov

More information

Introduction to MPI Part II Collective Communications and communicators

Introduction to MPI Part II Collective Communications and communicators Introduction to MPI Part II Collective Communications and communicators Andrew Emerson, Fabio Affinito {a.emerson,f.affinito}@cineca.it SuperComputing Applications and Innovation Department Collective

More information

Pointers and Arrays. More Pointer Examples. Pointers CS 217

Pointers and Arrays. More Pointer Examples. Pointers CS 217 Pointers nd Arrs CS 21 1 2 Pointers More Pointer Emples Wht is pointer A vrile whose vlue is the ddress of nother vrile p is pointer to vrile v Opertions &: ddress of (reference) *: indirection (dereference)

More information

Complete Coverage Path Planning of Mobile Robot Based on Dynamic Programming Algorithm Peng Zhou, Zhong-min Wang, Zhen-nan Li, Yang Li

Complete Coverage Path Planning of Mobile Robot Based on Dynamic Programming Algorithm Peng Zhou, Zhong-min Wang, Zhen-nan Li, Yang Li 2nd Interntionl Conference on Electronic & Mechnicl Engineering nd Informtion Technology (EMEIT-212) Complete Coverge Pth Plnning of Mobile Robot Bsed on Dynmic Progrmming Algorithm Peng Zhou, Zhong-min

More information

Systems I. Logic Design I. Topics Digital logic Logic gates Simple combinational logic circuits

Systems I. Logic Design I. Topics Digital logic Logic gates Simple combinational logic circuits Systems I Logic Design I Topics Digitl logic Logic gtes Simple comintionl logic circuits Simple C sttement.. C = + ; Wht pieces of hrdwre do you think you might need? Storge - for vlues,, C Computtion

More information

Agilent Mass Hunter Software

Agilent Mass Hunter Software Agilent Mss Hunter Softwre Quick Strt Guide Use this guide to get strted with the Mss Hunter softwre. Wht is Mss Hunter Softwre? Mss Hunter is n integrl prt of Agilent TOF softwre (version A.02.00). Mss

More information

Introduction To Files In Pascal

Introduction To Files In Pascal Why other With Files? Introduction To Files In Pscl Too much informtion to input ll t once The informtion must be persistent (RAM is voltile) Etc. In this section of notes you will lern how to red from

More information

Introduction to MPI part II. Fabio AFFINITO

Introduction to MPI part II. Fabio AFFINITO Introduction to MPI part II Fabio AFFINITO (f.affinito@cineca.it) Collective communications Communications involving a group of processes. They are called by all the ranks involved in a communicator (or

More information

COMPUTER SCIENCE 123. Foundations of Computer Science. 6. Tuples

COMPUTER SCIENCE 123. Foundations of Computer Science. 6. Tuples COMPUTER SCIENCE 123 Foundtions of Computer Science 6. Tuples Summry: This lecture introduces tuples in Hskell. Reference: Thompson Sections 5.1 2 R.L. While, 2000 3 Tuples Most dt comes with structure

More information

10/9/2012. Operator is an operation performed over data at runtime. Arithmetic, Logical, Comparison, Assignment, Etc. Operators have precedence

10/9/2012. Operator is an operation performed over data at runtime. Arithmetic, Logical, Comparison, Assignment, Etc. Operators have precedence /9/22 P f Performing i Si Simple l Clcultions C l l ti with ith C#. Opertors in C# nd Opertor Precedence 2. Arithmetic Opertors 3. Logicl Opertors 4. Bitwise Opertors 5. Comprison Opertors 6. Assignment

More information

CIS 1068 Program Design and Abstraction Spring2015 Midterm Exam 1. Name SOLUTION

CIS 1068 Program Design and Abstraction Spring2015 Midterm Exam 1. Name SOLUTION CIS 1068 Progrm Design nd Astrction Spring2015 Midterm Exm 1 Nme SOLUTION Pge Points Score 2 15 3 8 4 18 5 10 6 7 7 7 8 14 9 11 10 10 Totl 100 1 P ge 1. Progrm Trces (41 points, 50 minutes) Answer the

More information

1 Quad-Edge Construction Operators

1 Quad-Edge Construction Operators CS48: Computer Grphics Hndout # Geometric Modeling Originl Hndout #5 Stnford University Tuesdy, 8 December 99 Originl Lecture #5: 9 November 99 Topics: Mnipultions with Qud-Edge Dt Structures Scribe: Mike

More information

MA1008. Calculus and Linear Algebra for Engineers. Course Notes for Section B. Stephen Wills. Department of Mathematics. University College Cork

MA1008. Calculus and Linear Algebra for Engineers. Course Notes for Section B. Stephen Wills. Department of Mathematics. University College Cork MA1008 Clculus nd Liner Algebr for Engineers Course Notes for Section B Stephen Wills Deprtment of Mthemtics University College Cork s.wills@ucc.ie http://euclid.ucc.ie/pges/stff/wills/teching/m1008/ma1008.html

More information

PARALLEL AND DISTRIBUTED COMPUTING

PARALLEL AND DISTRIBUTED COMPUTING PARALLEL AND DISTRIBUTED COMPUTING 2009/2010 1 st Semester Teste Jnury 9, 2010 Durtion: 2h00 - No extr mteril llowed. This includes notes, scrtch pper, clcultor, etc. - Give your nswers in the ville spce

More information

Engineer-to-Engineer Note

Engineer-to-Engineer Note Engineer-to-Engineer Note EE-295 Technicl notes on using Anlog Devices DSPs, processors nd development tools Visit our Web resources http://www.nlog.com/ee-notes nd http://www.nlog.com/processors or e-mil

More information

MTH 146 Conics Supplement

MTH 146 Conics Supplement 105- Review of Conics MTH 146 Conics Supplement In this section we review conics If ou ne more detils thn re present in the notes, r through section 105 of the ook Definition: A prol is the set of points

More information

Transparent neutral-element elimination in MPI reduction operations

Transparent neutral-element elimination in MPI reduction operations Trnsprent neutrl-element elimintion in MPI reduction opertions Jesper Lrsson Träff Deprtment of Scientific Computing University of Vienn Disclimer Exploiting repetition nd sprsity in input for reducing

More information

Fig.25: the Role of LEX

Fig.25: the Role of LEX The Lnguge for Specifying Lexicl Anlyzer We shll now study how to uild lexicl nlyzer from specifiction of tokens in the form of list of regulr expressions The discussion centers round the design of n existing

More information

Stack. A list whose end points are pointed by top and bottom

Stack. A list whose end points are pointed by top and bottom 4. Stck Stck A list whose end points re pointed by top nd bottom Insertion nd deletion tke plce t the top (cf: Wht is the difference between Stck nd Arry?) Bottom is constnt, but top grows nd shrinks!

More information

CS201 Discussion 10 DRAWTREE + TRIES

CS201 Discussion 10 DRAWTREE + TRIES CS201 Discussion 10 DRAWTREE + TRIES DrwTree First instinct: recursion As very generic structure, we could tckle this problem s follows: drw(): Find the root drw(root) drw(root): Write the line for the

More information

Review of MPI Part 2

Review of MPI Part 2 Review of MPI Part Russian-German School on High Performance Computer Systems, June, 7 th until July, 6 th 005, Novosibirsk 3. Day, 9 th of June, 005 HLRS, University of Stuttgart Slide Chap. 5 Virtual

More information

int MPI_Cart_shift ( MPI_Comm comm, int direction, int displ, int *source, int *dest )

int MPI_Cart_shift ( MPI_Comm comm, int direction, int displ, int *source, int *dest ) Lecture 10 int MPI_Cart_shift ( MPI_Comm comm, int direction, int displ, int *source, int *dest ) comm - communicator with Cartesian structure direction - coordinate dimension of shift, in range [0,n-1]

More information

2 Computing all Intersections of a Set of Segments Line Segment Intersection

2 Computing all Intersections of a Set of Segments Line Segment Intersection 15-451/651: Design & Anlysis of Algorithms Novemer 14, 2016 Lecture #21 Sweep-Line nd Segment Intersection lst chnged: Novemer 8, 2017 1 Preliminries The sweep-line prdigm is very powerful lgorithmic design

More information

MIPS I/O and Interrupt

MIPS I/O and Interrupt MIPS I/O nd Interrupt Review Floting point instructions re crried out on seprte chip clled coprocessor 1 You hve to move dt to/from coprocessor 1 to do most common opertions such s printing, clling functions,

More information

Reference types and their characteristics Class Definition Constructors and Object Creation Special objects: Strings and Arrays

Reference types and their characteristics Class Definition Constructors and Object Creation Special objects: Strings and Arrays Objects nd Clsses Reference types nd their chrcteristics Clss Definition Constructors nd Object Cretion Specil objects: Strings nd Arrys OOAD 1999/2000 Cludi Niederée, Jochim W. Schmidt Softwre Systems

More information

Discussion 1 Recap. COP4600 Discussion 2 OS concepts, System call, and Assignment 1. Questions. Questions. Outline. Outline 10/24/2010

Discussion 1 Recap. COP4600 Discussion 2 OS concepts, System call, and Assignment 1. Questions. Questions. Outline. Outline 10/24/2010 COP4600 Discussion 2 OS concepts, System cll, nd Assignment 1 TA: Hufeng Jin hj0@cise.ufl.edu Discussion 1 Recp Introduction to C C Bsic Types (chr, int, long, flot, doule, ) C Preprocessors (#include,

More information

COMMON HALF YEARLY EXAMINATION DECEMBER 2018

COMMON HALF YEARLY EXAMINATION DECEMBER 2018 li.net i.net li.net i.net li.net i.net li.net i.net li.net i.net li.net i.net li.net i.net li.net i.net li.net i.net.pds.pds COMMON HALF YEARLY EXAMINATION DECEMBER 2018 STD : XI SUBJECT: COMPUTER SCIENCE

More information

How to Design REST API? Written Date : March 23, 2015

How to Design REST API? Written Date : March 23, 2015 Visul Prdigm How Design REST API? Turil How Design REST API? Written Dte : Mrch 23, 2015 REpresenttionl Stte Trnsfer, n rchitecturl style tht cn be used in building networked pplictions, is becoming incresingly

More information

Summer Review Packet For Algebra 2 CP/Honors

Summer Review Packet For Algebra 2 CP/Honors Summer Review Pcket For Alger CP/Honors Nme Current Course Mth Techer Introduction Alger uilds on topics studied from oth Alger nd Geometr. Certin topics re sufficientl involved tht the cll for some review

More information

Math 142, Exam 1 Information.

Math 142, Exam 1 Information. Mth 14, Exm 1 Informtion. 9/14/10, LC 41, 9:30-10:45. Exm 1 will be bsed on: Sections 7.1-7.5. The corresponding ssigned homework problems (see http://www.mth.sc.edu/ boyln/sccourses/14f10/14.html) At

More information

INTRODUCTION TO MPI VIRTUAL TOPOLOGIES

INTRODUCTION TO MPI VIRTUAL TOPOLOGIES INTRODUCTION TO MPI VIRTUAL TOPOLOGIES Introduction to Parallel Computing with MPI and OpenMP 18-19-20 november 2013 a.marani@cineca.it g.muscianisi@cineca.it l.ferraro@cineca.it VIRTUAL TOPOLOGY Topology:

More information

Alignment of Long Sequences. BMI/CS Spring 2012 Colin Dewey

Alignment of Long Sequences. BMI/CS Spring 2012 Colin Dewey Alignment of Long Sequences BMI/CS 776 www.biostt.wisc.edu/bmi776/ Spring 2012 Colin Dewey cdewey@biostt.wisc.edu Gols for Lecture the key concepts to understnd re the following how lrge-scle lignment

More information

Spring 2018 Midterm Exam 1 March 1, You may not use any books, notes, or electronic devices during this exam.

Spring 2018 Midterm Exam 1 March 1, You may not use any books, notes, or electronic devices during this exam. 15-112 Spring 2018 Midterm Exm 1 Mrch 1, 2018 Nme: Andrew ID: Recittion Section: You my not use ny books, notes, or electronic devices during this exm. You my not sk questions bout the exm except for lnguge

More information

Exam #1 for Computer Simulation Spring 2005

Exam #1 for Computer Simulation Spring 2005 Exm # for Computer Simultion Spring 005 >>> SOLUTION

More information

Virtual Machine (Part I)

Virtual Machine (Part I) Hrvrd University CS Fll 2, Shimon Schocken Virtul Mchine (Prt I) Elements of Computing Systems Virtul Mchine I (Ch. 7) Motivtion clss clss Min Min sttic sttic x; x; function function void void min() min()

More information

Slides for Data Mining by I. H. Witten and E. Frank

Slides for Data Mining by I. H. Witten and E. Frank Slides for Dt Mining y I. H. Witten nd E. Frnk Simplicity first Simple lgorithms often work very well! There re mny kinds of simple structure, eg: One ttriute does ll the work All ttriutes contriute eqully

More information

EECS 281: Homework #4 Due: Thursday, October 7, 2004

EECS 281: Homework #4 Due: Thursday, October 7, 2004 EECS 28: Homework #4 Due: Thursdy, October 7, 24 Nme: Emil:. Convert the 24-bit number x44243 to mime bse64: QUJD First, set is to brek 8-bit blocks into 6-bit blocks, nd then convert: x44243 b b 6 2 9

More information

10.5 Graphing Quadratic Functions

10.5 Graphing Quadratic Functions 0.5 Grphing Qudrtic Functions Now tht we cn solve qudrtic equtions, we wnt to lern how to grph the function ssocited with the qudrtic eqution. We cll this the qudrtic function. Grphs of Qudrtic Functions

More information

pdfapilot Server 2 Manual

pdfapilot Server 2 Manual pdfpilot Server 2 Mnul 2011 by clls softwre gmbh Schönhuser Allee 6/7 D 10119 Berlin Germny info@cllssoftwre.com www.cllssoftwre.com Mnul clls pdfpilot Server 2 Pge 2 clls pdfpilot Server 2 Mnul Lst modified:

More information

Functor (1A) Young Won Lim 10/5/17

Functor (1A) Young Won Lim 10/5/17 Copyright (c) 2016-2017 Young W. Lim. Permission is grnted to copy, distribute nd/or modify this document under the terms of the GNU Free Documenttion License, Version 1.2 or ny lter version published

More information

Section 10.4 Hyperbolas

Section 10.4 Hyperbolas 66 Section 10.4 Hyperbols Objective : Definition of hyperbol & hyperbols centered t (0, 0). The third type of conic we will study is the hyperbol. It is defined in the sme mnner tht we defined the prbol

More information

4-1 NAME DATE PERIOD. Study Guide. Parallel Lines and Planes P Q, O Q. Sample answers: A J, A F, and D E

4-1 NAME DATE PERIOD. Study Guide. Parallel Lines and Planes P Q, O Q. Sample answers: A J, A F, and D E 4-1 NAME DATE PERIOD Pges 142 147 Prllel Lines nd Plnes When plnes do not intersect, they re sid to e prllel. Also, when lines in the sme plne do not intersect, they re prllel. But when lines re not in

More information

Lecture 16. Parallel Matrix Multiplication

Lecture 16. Parallel Matrix Multiplication Lecture 16 Parallel Matrix Multiplication Assignment #5 Announcements Message passing on Triton GPU programming on Lincoln Calendar No class on Tuesday/Thursday Nov 16th/18 th TA Evaluation, Professor

More information

Mid-term exam. Scores. Fall term 2012 KAIST EE209 Programming Structures for EE. Thursday Oct 25, Student's name: Student ID:

Mid-term exam. Scores. Fall term 2012 KAIST EE209 Programming Structures for EE. Thursday Oct 25, Student's name: Student ID: Fll term 2012 KAIST EE209 Progrmming Structures for EE Mid-term exm Thursdy Oct 25, 2012 Student's nme: Student ID: The exm is closed book nd notes. Red the questions crefully nd focus your nswers on wht

More information

Very sad code. Abstraction, List, & Cons. CS61A Lecture 7. Happier Code. Goals. Constructors. Constructors 6/29/2011. Selectors.

Very sad code. Abstraction, List, & Cons. CS61A Lecture 7. Happier Code. Goals. Constructors. Constructors 6/29/2011. Selectors. 6/9/ Abstrction, List, & Cons CS6A Lecture 7-6-9 Colleen Lewis Very sd code (define (totl hnd) (if (empty? hnd) (+ (butlst (lst hnd)) (totl (butlst hnd))))) STk> (totl (h c d)) 7 STk> (totl (h ks d)) ;;;EEEK!

More information

5 Regular 4-Sided Composition

5 Regular 4-Sided Composition Xilinx-Lv User Guide 5 Regulr 4-Sided Composition This tutoril shows how regulr circuits with 4-sided elements cn be described in Lv. The type of regulr circuits tht re discussed in this tutoril re those

More information

MPI 8. CSCI 4850/5850 High-Performance Computing Spring 2018

MPI 8. CSCI 4850/5850 High-Performance Computing Spring 2018 MPI 8 CSCI 4850/5850 High-Performance Computing Spring 2018 Tae-Hyuk (Ted) Ahn Department of Computer Science Program of Bioinformatics and Computational Biology Saint Louis University Learning Objectives

More information

L2-Python-Data-Structures

L2-Python-Data-Structures L2-Python-Dt-Structures Mrch 19, 2018 1 Principl built-in types in Python (Python ) numerics: int, flot, long, complex sequences: str, unicode, list, tuple, byterry, buffer, xrnge mppings: dict files:

More information

Engineer To Engineer Note

Engineer To Engineer Note Engineer To Engineer Note EE-186 Technicl Notes on using Anlog Devices' DSP components nd development tools Contct our technicl support by phone: (800) ANALOG-D or e-mil: dsp.support@nlog.com Or visit

More information

a(e, x) = x. Diagrammatically, this is encoded as the following commutative diagrams / X

a(e, x) = x. Diagrammatically, this is encoded as the following commutative diagrams / X 4. Mon, Sept. 30 Lst time, we defined the quotient topology coming from continuous surjection q : X! Y. Recll tht q is quotient mp (nd Y hs the quotient topology) if V Y is open precisely when q (V ) X

More information

Lexical Analysis. Amitabha Sanyal. (www.cse.iitb.ac.in/ as) Department of Computer Science and Engineering, Indian Institute of Technology, Bombay

Lexical Analysis. Amitabha Sanyal. (www.cse.iitb.ac.in/ as) Department of Computer Science and Engineering, Indian Institute of Technology, Bombay Lexicl Anlysis Amith Snyl (www.cse.iit.c.in/ s) Deprtment of Computer Science nd Engineering, Indin Institute of Technology, Bomy Septemer 27 College of Engineering, Pune Lexicl Anlysis: 2/6 Recp The input

More information

File Manager Quick Reference Guide. June Prepared for the Mayo Clinic Enterprise Kahua Deployment

File Manager Quick Reference Guide. June Prepared for the Mayo Clinic Enterprise Kahua Deployment File Mnger Quick Reference Guide June 2018 Prepred for the Myo Clinic Enterprise Khu Deployment NVIGTION IN FILE MNGER To nvigte in File Mnger, users will mke use of the left pne to nvigte nd further pnes

More information

such that the S i cover S, or equivalently S

such that the S i cover S, or equivalently S MATH 55 Triple Integrls Fll 16 1. Definition Given solid in spce, prtition of consists of finite set of solis = { 1,, n } such tht the i cover, or equivlently n i. Furthermore, for ech i, intersects i

More information

Tool Vendor Perspectives SysML Thus Far

Tool Vendor Perspectives SysML Thus Far Frontiers 2008 Pnel Georgi Tec, 05-13-08 Tool Vendor Perspectives SysML Thus Fr Hns-Peter Hoffmnn, Ph.D Chief Systems Methodologist Telelogic, Systems & Softwre Modeling Business Unit Peter.Hoffmnn@telelogic.com

More information

Unit 5 Vocabulary. A function is a special relationship where each input has a single output.

Unit 5 Vocabulary. A function is a special relationship where each input has a single output. MODULE 3 Terms Definition Picture/Exmple/Nottion 1 Function Nottion Function nottion is n efficient nd effective wy to write functions of ll types. This nottion llows you to identify the input vlue with

More information

Functor (1A) Young Won Lim 8/2/17

Functor (1A) Young Won Lim 8/2/17 Copyright (c) 2016-2017 Young W. Lim. Permission is grnted to copy, distribute nd/or modify this document under the terms of the GNU Free Documenttion License, Version 1.2 or ny lter version published

More information

CHAPTER III IMAGE DEWARPING (CALIBRATION) PROCEDURE

CHAPTER III IMAGE DEWARPING (CALIBRATION) PROCEDURE CHAPTER III IMAGE DEWARPING (CALIBRATION) PROCEDURE 3.1 Scheimpflug Configurtion nd Perspective Distortion Scheimpflug criterion were found out to be the best lyout configurtion for Stereoscopic PIV, becuse

More information

Control-Flow Analysis and Loop Detection

Control-Flow Analysis and Loop Detection ! Control-Flow Anlysis nd Loop Detection!Lst time! PRE!Tody! Control-flow nlysis! Loops! Identifying loops using domintors! Reducibility! Using loop identifiction to identify induction vribles CS553 Lecture

More information

Lecture Overview. Knowledge-based systems in Bioinformatics, 1MB602. Procedural abstraction. The sum procedure. Integration as a procedure

Lecture Overview. Knowledge-based systems in Bioinformatics, 1MB602. Procedural abstraction. The sum procedure. Integration as a procedure Lecture Overview Knowledge-bsed systems in Bioinformtics, MB6 Scheme lecture Procedurl bstrction Higher order procedures Procedures s rguments Procedures s returned vlues Locl vribles Dt bstrction Compound

More information

Lecture 10 Evolutionary Computation: Evolution strategies and genetic programming

Lecture 10 Evolutionary Computation: Evolution strategies and genetic programming Lecture 10 Evolutionry Computtion: Evolution strtegies nd genetic progrmming Evolution strtegies Genetic progrmming Summry Negnevitsky, Person Eduction, 2011 1 Evolution Strtegies Another pproch to simulting

More information

Fig.1. Let a source of monochromatic light be incident on a slit of finite width a, as shown in Fig. 1.

Fig.1. Let a source of monochromatic light be incident on a slit of finite width a, as shown in Fig. 1. Answer on Question #5692, Physics, Optics Stte slient fetures of single slit Frunhofer diffrction pttern. The slit is verticl nd illuminted by point source. Also, obtin n expression for intensity distribution

More information

50 AMC LECTURES Lecture 2 Analytic Geometry Distance and Lines. can be calculated by the following formula:

50 AMC LECTURES Lecture 2 Analytic Geometry Distance and Lines. can be calculated by the following formula: 5 AMC LECTURES Lecture Anlytic Geometry Distnce nd Lines BASIC KNOWLEDGE. Distnce formul The distnce (d) between two points P ( x, y) nd P ( x, y) cn be clculted by the following formul: d ( x y () x )

More information

SUPPLEMENTARY INFORMATION

SUPPLEMENTARY INFORMATION Supplementry Figure y (m) x (m) prllel perpendiculr Distnce (m) Bird Stndrd devition for distnce (m) c 6 prllel perpendiculr 4 doi:.8/nture99 SUPPLEMENTARY FIGURE Confirmtion tht movement within the flock

More information

HW Stereotactic Targeting

HW Stereotactic Targeting HW Stereotctic Trgeting We re bout to perform stereotctic rdiosurgery with the Gmm Knife under CT guidnce. We instrument the ptient with bse ring nd for CT scnning we ttch fiducil cge (FC). Above: bse

More information

Introduction to Computer Science, Shimon Schocken, IDC Herzliya. Lecture Writing Classes

Introduction to Computer Science, Shimon Schocken, IDC Herzliya. Lecture Writing Classes Introduction to Computer Science, Shimon Schocken, IDC Herzliy Lecture 5.1-5.2 Writing Clsses Writing Clsses, Shimon Schocken IDC Herzliy, www.ro2cs.com slide 1 Clsses Two viewpos on es: Client view: how

More information

COMP 423 lecture 11 Jan. 28, 2008

COMP 423 lecture 11 Jan. 28, 2008 COMP 423 lecture 11 Jn. 28, 2008 Up to now, we hve looked t how some symols in n lphet occur more frequently thn others nd how we cn sve its y using code such tht the codewords for more frequently occuring

More information

Lab 1 - Counter. Create a project. Add files to the project. Compile design files. Run simulation. Debug results

Lab 1 - Counter. Create a project. Add files to the project. Compile design files. Run simulation. Debug results 1 L 1 - Counter A project is collection mechnism for n HDL design under specifiction or test. Projects in ModelSim ese interction nd re useful for orgnizing files nd specifying simultion settings. The

More information

Presentation Martin Randers

Presentation Martin Randers Presenttion Mrtin Rnders Outline Introduction Algorithms Implementtion nd experiments Memory consumption Summry Introduction Introduction Evolution of species cn e modelled in trees Trees consist of nodes

More information

Section 3.1: Sequences and Series

Section 3.1: Sequences and Series Section.: Sequences d Series Sequences Let s strt out with the definition of sequence: sequence: ordered list of numbers, often with definite pttern Recll tht in set, order doesn t mtter so this is one

More information

INTRODUCTION TO SIMPLICIAL COMPLEXES

INTRODUCTION TO SIMPLICIAL COMPLEXES INTRODUCTION TO SIMPLICIAL COMPLEXES CASEY KELLEHER AND ALESSANDRA PANTANO 0.1. Introduction. In this ctivity set we re going to introduce notion from Algebric Topology clled simplicil homology. The min

More information

CPSC 213. Polymorphism. Introduction to Computer Systems. Readings for Next Two Lectures. Back to Procedure Calls

CPSC 213. Polymorphism. Introduction to Computer Systems. Readings for Next Two Lectures. Back to Procedure Calls Redings for Next Two Lectures Text CPSC 213 Switch Sttements, Understnding Pointers - 2nd ed: 3.6.7, 3.10-1st ed: 3.6.6, 3.11 Introduction to Computer Systems Unit 1f Dynmic Control Flow Polymorphism nd

More information

CSc 453. Compilers and Systems Software. 4 : Lexical Analysis II. Department of Computer Science University of Arizona

CSc 453. Compilers and Systems Software. 4 : Lexical Analysis II. Department of Computer Science University of Arizona CSc 453 Compilers nd Systems Softwre 4 : Lexicl Anlysis II Deprtment of Computer Science University of Arizon collerg@gmil.com Copyright c 2009 Christin Collerg Implementing Automt NFAs nd DFAs cn e hrd-coded

More information

CS321 Languages and Compiler Design I. Winter 2012 Lecture 5

CS321 Languages and Compiler Design I. Winter 2012 Lecture 5 CS321 Lnguges nd Compiler Design I Winter 2012 Lecture 5 1 FINITE AUTOMATA A non-deterministic finite utomton (NFA) consists of: An input lphet Σ, e.g. Σ =,. A set of sttes S, e.g. S = {1, 3, 5, 7, 11,

More information

MATLAB Session for CS4514

MATLAB Session for CS4514 MATLAB Session for CS4514 Adrin Her her @wpi.edu Computing & Communictions Center - November 28, 2006- Prt of the notes re from Mtlb documenttion 1 MATLAB Session for CS4514 1. Mtlb Bsics Strting Mtlb

More information

Sample Midterm Solutions COMS W4115 Programming Languages and Translators Monday, October 12, 2009

Sample Midterm Solutions COMS W4115 Programming Languages and Translators Monday, October 12, 2009 Deprtment of Computer cience Columbi University mple Midterm olutions COM W4115 Progrmming Lnguges nd Trnsltors Mondy, October 12, 2009 Closed book, no ids. ch question is worth 20 points. Question 5(c)

More information

Solving Problems by Searching. CS 486/686: Introduction to Artificial Intelligence Winter 2016

Solving Problems by Searching. CS 486/686: Introduction to Artificial Intelligence Winter 2016 Solving Prolems y Serching CS 486/686: Introduction to Artificil Intelligence Winter 2016 1 Introduction Serch ws one of the first topics studied in AI - Newell nd Simon (1961) Generl Prolem Solver Centrl

More information

Distributed Systems Principles and Paradigms

Distributed Systems Principles and Paradigms Distriuted Systems Principles nd Prdigms Chpter 11 (version April 7, 2008) Mrten vn Steen Vrije Universiteit Amsterdm, Fculty of Science Dept. Mthemtics nd Computer Science Room R4.20. Tel: (020) 598 7784

More information

Memory Management Functions

Memory Management Functions Meory Mngeent Functions Chpter 9 Meory Mngeent Process of binding vlues to eory loctions Vlues y be sttic or dynic Vlues re ssigned t different plces Sttic eory Run-tie stck Hep 1 Meory Mngeent Sttic Meory

More information

Implementing Automata. CSc 453. Compilers and Systems Software. 4 : Lexical Analysis II. Department of Computer Science University of Arizona

Implementing Automata. CSc 453. Compilers and Systems Software. 4 : Lexical Analysis II. Department of Computer Science University of Arizona Implementing utomt Sc 5 ompilers nd Systems Softwre : Lexicl nlysis II Deprtment of omputer Science University of rizon collerg@gmil.com opyright c 009 hristin ollerg NFs nd DFs cn e hrd-coded using this

More information

ZZ - Advanced Math Review 2017

ZZ - Advanced Math Review 2017 ZZ - Advnced Mth Review Mtrix Multipliction Given! nd! find the sum of the elements of the product BA First, rewrite the mtrices in the correct order to multiply The product is BA hs order x since B is

More information

McAfee Network Security Platform

McAfee Network Security Platform Mnger Applince Quick Strt Guide Revision B McAfee Network Security Pltform This guide is high-level description of how to instll nd configure the Mnger Applince. For more detiled instlltion informtion,

More information

In the last lecture, we discussed how valid tokens may be specified by regular expressions.

In the last lecture, we discussed how valid tokens may be specified by regular expressions. LECTURE 5 Scnning SYNTAX ANALYSIS We know from our previous lectures tht the process of verifying the syntx of the progrm is performed in two stges: Scnning: Identifying nd verifying tokens in progrm.

More information

Quiz2 45mins. Personal Number: Problem 1. (20pts) Here is an Table of Perl Regular Ex

Quiz2 45mins. Personal Number: Problem 1. (20pts) Here is an Table of Perl Regular Ex Long Quiz2 45mins Nme: Personl Numer: Prolem. (20pts) Here is n Tle of Perl Regulr Ex Chrcter Description. single chrcter \s whitespce chrcter (spce, t, newline) \S non-whitespce chrcter \d digit (0-9)

More information

Compression Outline :Algorithms in the Real World. Lempel-Ziv Algorithms. LZ77: Sliding Window Lempel-Ziv

Compression Outline :Algorithms in the Real World. Lempel-Ziv Algorithms. LZ77: Sliding Window Lempel-Ziv Compression Outline 15-853:Algorithms in the Rel World Dt Compression III Introduction: Lossy vs. Lossless, Benchmrks, Informtion Theory: Entropy, etc. Proility Coding: Huffmn + Arithmetic Coding Applictions

More information

Misrepresentation of Preferences

Misrepresentation of Preferences Misrepresenttion of Preferences Gicomo Bonnno Deprtment of Economics, University of Cliforni, Dvis, USA gfbonnno@ucdvis.edu Socil choice functions Arrow s theorem sys tht it is not possible to extrct from

More information

Fault injection attacks on cryptographic devices and countermeasures Part 2

Fault injection attacks on cryptographic devices and countermeasures Part 2 Fult injection ttcks on cryptogrphic devices nd countermesures Prt Isrel Koren Deprtment of Electricl nd Computer Engineering University of Msschusetts Amherst, MA Countermesures - Exmples Must first detect

More information

9.1 apply the distance and midpoint formulas

9.1 apply the distance and midpoint formulas 9.1 pply the distnce nd midpoint formuls DISTANCE FORMULA MIDPOINT FORMULA To find the midpoint between two points x, y nd x y 1 1,, we Exmple 1: Find the distnce between the two points. Then, find the

More information