Sorting on Clusters of SMPs (Extended Abstract)

Size: px
Start display at page:

Download "Sorting on Clusters of SMPs (Extended Abstract)"

Transcription

1 Sortig o Clusters of SMPs (Exteded Abstract) David R. Helma Joseh JáJá Istitute for Advaced Comuter Studies & Deartmet of Electrical Egieerig, Uiversity of Marylad, College Park, MD fhelma, joseh g@umiacs.umd.edu Abstract We itroduce a efficiet algorithm for sortig o clusters of symmetric multirocessors (SMPs). This algorithm relies o a ovel scheme for stably sortig o a sigle SMP couled with balaced regular commuicatio o the cluster. Our SMP algorithm seems to be asymtotically faster tha ay of the ublished algorithms. The algorithms were imlemeted i C usig POSIX threads ad the SIMPLE library of commuicatio rimitives ad ru o a cluster of DEC AlhaServer 2100A systems. Our exerimetal results verify the scalability ad efficiecy of our roosed solutio ad illustrate the imortace of cosiderig both memory hierarchy ad the overhead of shiftig to multile odes. 1 Itroductio Clusters of symmetric multirocessors (SMPs) have emerged as a rimary cadidate for large scale multirocessor systems. I site of this tred, relatively little work has bee doe to develo techiques for desigig algorithms that make effective use of the resources available o such latforms. This task is made difficult by the cotrastig requiremets of the latform. O the oe had, each SMP must be viewed o its ow as a hierarchical shared memory machie. Good erformace requires both good load distributio ad the miimizatio of the overhead icurred by simultaeous mai memory access. O the other had, from the ersective of the cluster, each ode is i effect a suerrocessor, ad therefore the cluster of SMPs is a collectio of owerful rocessors coected by a commuicatio et- Suorted i art by NSF grat No. CCR ad NSF HPCC/GCAG grat No. BIR Thaks to David Bader of the Uiversity of New Mexico for the use of his SIMPLE commuicatio rimitives. work. Maximizig the erformace of such a distributed memory machie requires both efficiet load balacig ad regular balaced commuicatio. I this aer, we examie the roblem of sortig o SMP clusters because of its demadig requiremets for irregular memory access ad iterrocessor commuicatio. From the ersective of the cluster, ay algorithm which erforms well for distributed memory machies would be a reasoable cadidate. I articular, we have idetified two such algorithms i our revious work [8, 7, 10]. The first is a variatio o samle sort ad the other is a variatio o the aroach of sortig by regular samlig. O the other had, from the ersective of the idividual SMP, there are fewer choices for sortig o hierarchical shared memory machies. These iclude the algorithms described i [3, 11, 12, 2, 6, 13]. Ufortuately, oe of these algorithms by itself is sufficiet to achieve efficiet erformace o a SMP cluster. Efficiet algorithms for distributed memory machies ted to cofie iterrocessor commuicatio to a miimum umber of regular balaced exchages. By cotrast, algorithms for shared memory machies tyically caitalize o the fact that accessig data associated with aother rocessor is o more exesive tha accessig its ow data i the shared memory. We itroduce a sortig algorithm for clusters of SMPs which is a hybrid of our modified algorithms for arallel sortig by radom samlig ad arallel sortig by determiistic samlig. Our algorithm was imlemeted i C usig POSIX threads ad rus o a cluster of DEC AlhaServer 2100A systems. We ra our code usig a variety of bechmarks that we have idetified to examie the deedece of our algorithm o the iut distributio. Our exerimetal results verify the scalability ad efficiecy of our roosed solutio ad illustrate the imortace of cosiderig both memory hierarchy ad the overhead of shiftig to multile odes.

2 The orgaizatio of our abstract is as follows. Sectio 2 resets our comutatioal model for aalyzig algorithms for SMP clusters. Sectio 3 describes our sortig algorithm for this latform. Fially, Sectio 4 describes the exerimetal erformace of our sortig algorithm o a SMP cluster. 2 Comutatioal Model For our uroses, the cost of a algorithm eeds to iclude a measure that reflects the umber ad tye of memory accesses. A memory access ca either be to a local cache, a local mai memory, or a remote mai memory. A umber of models have already bee roosed to cature the erformace of multilevel hierarchical memories, icludig the D-disk model of Vitter ad Shriver [14], the Hierarchical Memory with Block Trasfer Model of Aggarwal et al. [1], ad the Uiform Memory Hierarchy Model of Aler et al. [4]. However, we believe these models are uecessarily comlicated for use with clusters of SMPs ad would require sigificat refiemets to cature the corresodig hybrid architecture. I our comlexity model, each SMP is viewed as a twolevel hierarchy for which good erformace requires both good load distributio ad the miimizatio of the overhead icurred by secodary memory access. The cluster is viewed as a collectio of owerful rocessors coected by a commuicatio etwork. Maximizig erformace o the cluster requires both efficiet load balacig ad regular balaced commuicatio. Hece, our erformace model combies two searate but comlemetary models. More secifically, i our SMP model, memory at each SMP is see as cosistig of two levels: cache ad mai memory. A block of w cotiguous, words ca be read from or writte to mai memory i + wr time, where is the latecy of the bus, r is the umber of rocessors cometig for access to ossibly distict blocks i mai memory, ad is the badwidth. By cotrast,, the trasfer of w ocotiguous words would require w + r time. We cature erformace o a SMP cluster i exactly the same way as described i [8, 7, 10]. We view a arallel algorithm as a sequece of local SMP comutatios iterleaved with commuicatio stes, where we allow comutatio ad commuicatio to overla. Assumig o cogestio, the trasfer of a block cosistigof w cotiguous words betwee two odes takes + w time, where is the latecy of the etwork ad is the badwidth er ode. We assume that the bisectio badwidth is sufficietly high to suort block ermutatio routig amogst the N odes at the rate of 1=. I articular, for ay subset of r odes, a block ermutatio amogst the r odes takes + w time, where w is the size of the largest block. Usig this cost model, we ca evaluate the commuicatio time T comm (; N ) of a algorithm as a fuctio of the iut size, the umber of odes N, ad the arameters ad. The overall comlexity of the cluster T (;N ) is give by the sum of T SMP ad T comm (; N ). See [9] for a more extesive discussio of comutatioal models. 3 Sortig Algorithms For simlicity of resetatio, we first cosider a algorithm for sortig o a sigle SMP, ad the describe a algorithm for sortig o clusters of SMPs Sortig o a Sigle SMP Our algorithm is a adatatio of our sortig by regular samlig [8, 10], which we origially develoed for distributed memory machies. As modified for a SMP, this algorithm is similar to the arallel sortig by regular samlig (PSRS) algorithm, excet that our algorithm ca be easily imlemeted as a stable iteger sort. The seudocode for our algorithm is as follows, where C is the size of the cache ad L is the cache lie size: (1) Each rocessor P i (1 i ) sorts the subsequece of the iut elemets with idices (i,1) +1 through i as follows: (A)Sort each block of m iut elemets usig a aroriate sequetial algorithm, where m C. For itegers we use the radix sort algorithm, whereas for floatig oit umbers we use the merge sort algorithm. log(=m) (B)For j = 1 u to, merge the sorted blocks of size, mz (j,1) usig z-way merge, where z C L. th (i,1) + k s (2) Each rocessor P i selects each elemet as a samle, for (1 k s) ad a give value of s s. 2 (3) Processor P merges the sorted subsequeces of samles ad the selects the (ks) th samle as Slitter[k], for(1 k, 1). By default, the th slitter is the largest value allowed by the data tye used. Additioally, biary search is used to comute for the set of samles with idices 1 through (ks) the umberof samles Est[k] which share the same value as Slitter[k]. Ste (4): Each rocessor P i uses biary search to defie a idex b (i;j) for each of the sorted iut sequeces created i Ste (1). If we defie T (i;j) as 2

3 a subsequece cotaiig the first b (i;j) elemets i the j th sorted iut sequece, the the set of subsequeces ft (i;1);t (i;2); :::; T (i;)g will cotai all those values i the iut setwhich are strictly less tha Slitter[i] ad at most Est[i] s elemets with the same value as Slitter[i]. Ste (5): Each rocessor P i merges those subsequeces of the sorted iut sequeces which lie betwee idices b ((i,1);j) ad b (i;j) usig -way merge. It ca be show [8, 10] that o rocessor will merge more tha + s, elemets. It is straightforward to see how this algorithm ca be imlemeted as a stable iteger sort, ad [9] cotais a iformal roof. The aalysis of our algorithm is as follows. The cost of sequetially sortig elemets i blocks of size m i Ste (1A) deeds o the data tye - sortig itegers usig radix sort requires O + + time, whereas sortig floatig oit umbers usig merge sort requires O log m + + time. Ste (1B) ivolves merge begiig with requires oly O log because of satial locality. log(=m) m m + m + log(=m) rouds of z-way blocks of size m, which time The readig of s oco-,, tiguous samles i Ste (2) requires O s + s + time. Ste (3) ivolves a -way merge of blocks of size s followed by biary searches o segmets of size s. Sice oly, oe rocessor is active i Ste (3), it requires O s log() + log(s) + s time. Ste (4) ivolves biary searches o segmets of size. Sice these reads are ocotiguous, they require O log + log, + time. Fially, Ste (5), ivolves a -way merge of blocks of total maximum size + s,, requirig at most log s O + s time. It ca be show that the overall comlexity ca be aroximated by: 0 T (; ) log log + log (z) m 1 A The aalysis suggests that the arameters m ad z should be as large as ossible, subject to the stated costraits. Ideed, i such a case we believe our algorithm to be asymtotically faster tha the erformace achieved by ay of the other kow algorithms o our model. However, our exerimetal ivestigatio shows that the otimal choices for m ad z are actually slightly smaller tha suggested by our aalysis, sice they deed o a variety of factors besides those catured i our model Sortig O a Cluster of SMPs We have already develoed both a determiistic [8, 10] ad a radomized [8, 7] samle sort algorithm which we have show to be very efficiet for message assig latforms. Either would be a aroriate choice for a cluster of SMPs, but we chose the radomized samle sort because it roved to be slightly faster i its imlemetatio. We reeat the seudocode here for coveiece, where we relace each sequetial ste where aroriate by a multithreaded SMP imlemetatio. Note that the commuicatio rimitives metioed are described i detail i [9]. Ste (1): Usig threads, each ode N i (1 i N ) radomly assigs each of its N elemets to oe of N buckets. With high robability, o bucket will receive more tha c 1 N 2 elemets, for (c 1 2). Ste (2): Each ode N i routes the cotets of bucket j to ode N j,for(1 i; j N ). Sice with high robability o bucket will receive more tha c 1 N 2 elemets, this is equivalet to erformig a trasose oeratio with block size c 1 N 2. Ste (3): Usig threads, each ode N i sorts at most 1 N ( 1 c 1 ) values received i Ste (2) with the aroriate versio of our SMP sortig algorithm, deedig o the data tye. Ste (4): From its sorted list, of N ( 1) elemets, ode N 1 selects each j N th elemet as 2 Slitter[j], for (1 j N, 1). By default, Slitter[N ] is the largest value allowed by the data tye used. Additioally, for each Slitter[j], biary search is used to determie the values Frac L [j] ad Frac R [j], which are resectively the fractios of the total umber of elemets at ode N 1 with the same value as Slitter[j,, 1] ad Slitter[j] which also lie betwee idex (j, 1) N 2 +1, ad idex j N 2, iclusively. Ste (5): Node N 1 broadcasts the Slitter, Frac L, ad Frac R arrays to the other N, 1 odes. Ste (6): Each ode N i uses biary search o its sorted local array to defie for each of the N slitters a subsequece S j. The subsequece associated with Slitter[j] cotaisall thosevalueswhich are greater tha Slitter[j,1] ad less tha Slitter[j], as well as Frac L [j] ad Frac R [j] of the total umber of elemets i the local array with the same value as Slitter[j, 1] ad Slitter[j], resectively. 3

4 Ste (7): Each ode N i routes the subsequece associated with Slitter[j] to rocessor N j,for (1 i; j N ). Sice with high robability o sequece will cotai more tha c 2 N 2 elemets, for (c 2 5:42), this is equivalet to erformig a trasose oeratio with block size c 2 N 2. Ste (8): Usig threads, each ode N i merges the N sorted subsequeces received i Ste (7) to roduce the i th colum of the sorted array. Note that, with high robability, o ode has received more tha 2 N elemets, for ( 2 2:62). A detailed aalysis of this algorithm ca be foud i [9], ad we merely reeat its coclusio here for coveiece. With high robability, the overall comlexity of our samle sort algorithm is give (for floatig oit umbers) by T (; ) T com (; N; ) +T comm (; N; ) for N 2 < = O 3l. N log + 4 Performace Evaluatio log Nm log (z) N + + N Our algorithms were imlemeted usig POSIX threads ad ru o a DEC Alha Cluster. Our DEC Alha cluster cosists of 10 AlhaServer 2100A systems, each of which holds 4 Alha 21064A rocessors ruig each at 275 MHz. Each Alha 21064A rocessor has a 16KB rimary data cache ad a 4MB secodary data cache. The AlhaServers are coected usig the Digital Gigaswitch/ATM ad OC-3c adater cards, which have a eak badwidth ratig of Mbs. Iterode commuicatio is effected by calls to the SIMPLE collective commuicatio rimitives [5]. We tested our code o a variety of bechmarks, each of which had both a 32-bit iteger versio ad a 64-bit double recisio floatig oit umber (double) versio. See [9] for a detailed descritio ad justificatio of these bechmarks Exerimetal Results for a Sigle SMP We begi by exerimetally determiig the otimal values of the arameters m ad z, wherem is the block size i Ste (1A) ad z is the z-way merge used i Ste (1B). Table 1 dislays the times required to sort 4M doubles usig four threads as a fuctio of m ad z. Clearly, erformace suffers dramatically whe the block size reaches 4MB (512K eight byte double recisio umbers), which 1 A is the limit of the secodary cache. This is exected, sice sortig a block i Ste (1A) ow requires that data be reeatedly swaed to mai memory. It is more difficult to exlai why the otimal values for m ad z were 32K ad 32, resectively, sice this block size exceeds the 16KB rimary cache but falls well short of the secodary cache size. Part of the exlaatio might lie i the fact that the overall comlexity of O log + log( m ) obscures the fact that the comlexity of the block sort i Ste (1a) is O log m + +, which is a icreasig fuctio of m. Thevalueofz =32isreasoable whe we ote tha the actual cache lie size is 32 bytes. Our tree of losers is imlemeted with z 12-byte records, so the etire rocess could easily take lace i the 16KB rimary cache. For the remaiig discussio, the times reorted are for the exerimetally otimal values of m ad z ad for the umber of samles s =8. The relative erformace of the algorithm o differet bechmarks seems to cofirm that this was a reasoable choice for s. Block Deomiatio of z-way Merge Size K K K K K K K K K M (No z-way merge is ecessary for this block size) Table 1. Time (i secods) required to sort 4M doubles usig four threads as a fuctio of M ad z. Table 1 also rovides a iterestig illustratio i the imortace of miimizig secodary memory access. If we cosider the data for a block size of 2K, the executio time dros as we move from z = 2 to z = 4 to z = 8. This is reasoable sice we require 9 rouds of 2-way merge, 5 rouds of 4-way merge, ad oly 3 rouds of 8-way merge, ad each roud of z-way merge is obviously aother roud where all the iut elemets must be brought i from mai memory. Movig from z = 8 to z = 16 has little effect o the executio time sice it does othig to reduce the memory requiremets, but movig to z =32saves a roud of memory access ad, hece, the executio time is further reduced. However, the most dramatic illustratio of the imortace of miimizig secodary memory access ca be foud by comarig the otimal sortig time of 3:41 secods for m =32K ad z =32with the time of 9:86 secods required to sort usig oly biary merge sort. Reducig memory access by a combiatio of block sortig ad 4

5 z-way mergig imroved erformace early threefold. Tables 2 dislays the erformace of our sortig algorithm as a fuctio of iut distributio for a variety of iut sizes. Notice that the he erformace is essetially similar for bechmarks [U], [G], ad[wr] ad for bechmarks [Z], [DD], ad[rd]. The reaso why the bechmarks i the secod grou ra sigificatly faster tha the bechmarks i the first grou is that the secod grou of bechmarks all cotaied values restricted to a very small rage (f0g,f0; 1; 2g, ad f0; 1; :::; 32g) which results i sigificat savigs i time required for sortig ad mergig. Because there was little differece i the erformace of the bechmarks i the first grou, the remaider of this sectio will oly discuss the erformace of our sortig algorithm o the sigle bechmark [U] (uiform distributio). Iut Bechmark Size [U] [G] [Z] [WR] [DD] [RD] 1M M M M Table 2. Sortig itegers (i secods) usig 4 threads o a DEC AlhaServer 21000A. The results i Figure 1 examie the scalability of our sortig algorithm as a fuctio of the umber of threads. Results are show for sortig both itegers ad doubles. Bearig i mid that these grahs are log-log lots, they show that for a fixed iut size the executio time early halves whe the umber of threads is doubled. The grah i Figure 2 examies the scalability of our sortig algorithm as a fuctio of roblem size, for differig umbers of threads. They show that for a fixed umber of threads there is a almost liear deedece betwee the executio time ad the total umber of elemets. Figure 1. Scalability of sortig itegers ad doubles with resect to the umber of threads Exerimetal Results for a Cluster of SMPs For each exerimet, the iut is evely distributed amogst the odes. The outut cosists of the elemets i o-descedig order arraged amogst the odes so that the elemets at each ode are i sorted order ad o elemet at ode N i is greater tha ay elemet at rocessor N j, for all i<j. Note that i all cases the results show for a sigle ode were obtaied usig the sortig algorithm for a sigle SMP. Table 3 dislays the erformace of our sortig algorithm as a fuctio of iut distributio for a variety of iut sizes. I each case, the erformace is essetially ideedet of the iut distributio. Because of this ideedece, the remaider of this sectio will oly discuss the erformace of our sortig algorithm o the sigle bechmark [U] (uiform distributio). Figure 2. Scalability of sortig doubles with resect to the roblem size, for differig umbers of threads. 5

6 Iut Bechmark Size [U] [G] [2-G] [B] [S] [Z] [WR] [DD] [RD] 4M M M M Table 3. Total executio time (i secods) required to sort a variety of doubles bechmarks o a 8 ode cluster usig 4 threads. The results i Figure 3 examies the scalability of our sortig algorithm as a fuctio of the umber of odes, for a variety of threads. To uderstad these results, cosider the ste by ste breakdow of the executio times show i Table 4 for sortig 8M itegers with both 1 ad 4 threads. Movig from oe ode to two itroduces the overhead of Stes 1-2 ad 4-8, which together accout for aroximately 35% ad 50% of the total executio time o oe ode with 1 ad 4 threads, resectively. This cosumes the majority of the time we could hoe to save by sharig the work of sortig amogst two odes. The effect is more roouced for multile threads because as our model redicts iterode commuicatio is ideedet of the umber of threads. The effect of this overhead would be eve more roouced were it ot for the fact that the time required for Ste 3 for both 1 ad 4 odes is cosiderably higher tha we would exect from sortig 4M itegers o a sigle ode. But movig betwee 1 ad 4 odes ad 1 ad 8 odes, the time required for Ste (3) scales iversely with the umber of odes, which is the exectatio of our model. The failure of commuicatio i Stes 2 ad 7 to scale iversely with the umber of odes might at first aear surrisig. However, this erformace is actually quite reasoable if we recall that for 2, 4, ad 8 odes, each ode has to sed aroximately 2M, 1.5M, ad 0.875M itegers across the etwork, resectively. The clear imlicatio of these results is that a algorithm must be both efficiet ad scalable to justify the use of multile odes. Oe Thread Four Threads Ste(s) Total Table 4. Time required for each ste of sortig 8M itegers with resect to the umber of odes usig 1 ad 4 threads. The grahs i Figures 4 ad 5 examie the scalability of our sortig algorithm as a fuctio of roblem size, for Figure 3. Scalability of sortig itegers with resect to the umber of odes, for differig umbers of threads. differig umbers of odes ad for 1 ad 4 threads. For oe thread, they show that for a fixed umber of odes there is a almost liear deedece betwee the executio time ad the total umber of elemets. The results for 4 threads i Figure 5 are seemigly more roblematic. However, a ste by ste breakdow of the ruig times i [9] shows that the commuicatio costs domiate the executio time ad that as the roblem size icreases from 1M to 2M itegers the commuicatio costs actually decrease,resumablybecause of a chage i the commuicatio rotocol. Oce the rotocol is switched, the relative costs of commuicatio declie ad the executio time scales with roblem size as our model aticiates. Refereces [1] A. Aggarwal, A. Chadra, ad M. Sir. Heirarchical Memory with Block Trasfer. I Proceedigs of the 28th Aual IEEE Symosium o Foudatios of Comuter Sciece, ages , October [2] A. Aggarwal ad G. Plaxto. Otimal Parallel Sortig i Multi-Level Storage. I Proceedigs of the Fifth Aual ACM-SIAM Symosium o Discrete Algorithms, ages , [3] A. Aggarwal ad J. Vitter. The Iut/Outut Comlexity of Sortig ad Related Problems. Commuicatios of the ACM, 31: ,

7 Figure 4. Scalability of sortig itegers with resect to the roblem size, for differig umbers of odes ad a sigle thread. Figure 5. Scalability of sortig itegers with resect to the roblem size, for differig umbers of odes ad four threads. [4] B. Aler, L. Carter, E. Feig, ad T. Selker. The Uiform Memory Hierarchy Model of Comuatatio. Algorithmica, 12:72 109, [5] D.A. Bader ad J. JáJá. SIMPLE: A Methodology for Programmig High Performace Algorithms o Clusters of Symmetric Multirocessors. UMIACS-TR Techical Reort, UMIACS, Uiversity of Marylad, [6] R. Barve, E. Grove, ad J. Vitter. Simle Radomized Mergesort o Parallel Disks. I Proceedigs of the Eighth Aual ACM Symosium o Parallel Algorithms ad Architectures, ages , Padua, Italy, Jue [7] D.R. Helma, D.A. Bader, ad J. JáJá. A Radomized Parallel Sortig Algorithm With a Exerimetal Study. Techical Reort UMIACS-TR-96-53, UMI- ACS, Uiversity of Marylad, To aear i the Joural of Parallel ad Distributed Comutig. [8] D.R. Helma, D.A. Bader, ad J. JáJá. Parallel Algorithms for Persoalized Commuicatio ad Sortig With a Exerimetal Study. I Proceedigs of the Eighth Aual ACM Symosium o Parallel Algorithms ad Architectures, ages , Padua, Italy, Jue [9] D.R. Helma ad J. JáJá. Sortig o Clusters of SMPSs. Techical Reort UMIACS-TR-97-69, UMI- ACS, Uiversity of Marylad, [10] D.R. Helma, J. JáJá, ad D.A. Bader. A New Determiistic Parallel Sortig Algorithm With a Exerimetal Evaluatio. Techical Reort UMIACS-TR , UMIACS, Uiversity of Marylad, [11] M. Nodie ad J. Vitter. Large-Scale Sortig i Parallel Memories. I Proceedigs of the Third Aual ACM Symosium o Parallel Algorithms ad Architectures, ages 29 39, Newort, RI, Jue [12] M. Nodie ad J. Vitter. Determiistic Distributio Sort i Shared ad Distributed Memory Multirocessors. I Proceedigs of the Fifth Aual ACM Symosium o Parallel Algorithms ad Architectures, ages , Vele, Germay, Jue [13] P. Varma, B. Iyer, D. Haderle, ad S. Du. Parallel Mergig: Algorithm ad Imlemetatio Results. Parallel Comutig, 15: , [14] J. Vitter ad E. Shriver. Algorithms for Parallel Memory I: Two-Level Memories. Algorithmica, 12: ,

A NOTE ON COARSE GRAINED PARALLEL INTEGER SORTING

A NOTE ON COARSE GRAINED PARALLEL INTEGER SORTING Chater 26 A NOTE ON COARSE GRAINED PARALLEL INTEGER SORTING A. Cha ad F. Dehe School of Comuter Sciece Carleto Uiversity Ottawa, Caada K1S 5B6 æ {acha,dehe}@scs.carleto.ca Abstract Keywords: We observe

More information

islerp: An Incremental Approach to Slerp

islerp: An Incremental Approach to Slerp isler: A Icremetal Aroach to Sler Xi Li Comuter Sciece Deartmet Digie Istitute of Techology xli@digie.edu Abstract I this aer, a icremetal uaterio iterolatio algorithm is itroduced. With the assumtio of

More information

2009 International Conference on Parallel and Distributed Computing, Applications and Technologies

2009 International Conference on Parallel and Distributed Computing, Applications and Technologies 2009 Iteratioal Coferece o Parallel ad Distributed Comutig, Alicatios ad Techologies A ef ciet arallel sortig comatible with the stadard qsort Duhu Ma, Yasuai Ito ad Koji Naao Deartmet of Iformatio Egieerig,

More information

Design of efficient, virtual non-blocking optical switches

Design of efficient, virtual non-blocking optical switches Desig of efficiet, virtual o-blockig otical switches Larry F. Lid, Michael Sratt Mobile Systems ad Services Laboratory HP Laboratories Bristol HPL-200-239 March 3 th, 2002* otical switchig, switch desig

More information

Lecture 5. Counting Sort / Radix Sort

Lecture 5. Counting Sort / Radix Sort Lecture 5. Coutig Sort / Radix Sort T. H. Corme, C. E. Leiserso ad R. L. Rivest Itroductio to Algorithms, 3rd Editio, MIT Press, 2009 Sugkyukwa Uiversity Hyuseug Choo choo@skku.edu Copyright 2000-2018

More information

Lower Bounds for Sorting

Lower Bounds for Sorting Liear Sortig Topics Covered: Lower Bouds for Sortig Coutig Sort Radix Sort Bucket Sort Lower Bouds for Sortig Compariso vs. o-compariso sortig Decisio tree model Worst case lower boud Compariso Sortig

More information

Asynchronous Memory Machine Models with Barrier Synchronization

Asynchronous Memory Machine Models with Barrier Synchronization Asychroous Memory Machie Models ith Barrier Sychroizatio Koji Nakao Deartmet of Iformatio Egieerig Hiroshima Uiversity Kagamiyama 1-4-1, Higashi Hiroshima, 739-8527 Jaa Email: akao@cs.hiroshima-u.ac.j

More information

Sorting in Linear Time. Data Structures and Algorithms Andrei Bulatov

Sorting in Linear Time. Data Structures and Algorithms Andrei Bulatov Sortig i Liear Time Data Structures ad Algorithms Adrei Bulatov Algorithms Sortig i Liear Time 7-2 Compariso Sorts The oly test that all the algorithms we have cosidered so far is compariso The oly iformatio

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

Morgan Kaufmann Publishers 26 February, COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface. Chapter 5

Morgan Kaufmann Publishers 26 February, COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface. Chapter 5 Morga Kaufma Publishers 26 February, 28 COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Iterface 5 th Editio Chapter 5 Set-Associative Cache Architecture Performace Summary Whe CPU performace icreases:

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

A Parallel DFA Minimization Algorithm

A Parallel DFA Minimization Algorithm A Parallel DFA Miimizatio Algorithm Ambuj Tewari, Utkarsh Srivastava, ad P. Gupta Departmet of Computer Sciece & Egieerig Idia Istitute of Techology Kapur Kapur 208 016,INDIA pg@iitk.ac.i Abstract. I this

More information

Load balanced Parallel Prime Number Generator with Sieve of Eratosthenes on Cluster Computers *

Load balanced Parallel Prime Number Generator with Sieve of Eratosthenes on Cluster Computers * Load balaced Parallel Prime umber Geerator with Sieve of Eratosthees o luster omputers * Soowook Hwag*, Kyusik hug**, ad Dogseug Kim* *Departmet of Electrical Egieerig Korea Uiversity Seoul, -, Rep. of

More information

4th IEEE International Symposium on Electronic Design, Test & Applications

4th IEEE International Symposium on Electronic Design, Test & Applications 4th EEE teratioal Symosium o Electroic Desig, Test & Alicatios Abstract terolatio Models for mage Suer-resolutio Adrew Gilma, Doald G. Bailey, Stehe R. Marslad stitute of formatio Scieces ad Techology

More information

What is the difference between a statistician and a mortician? Nobody's dying to see the statistician! Chapter 8 Interval Estimation

What is the difference between a statistician and a mortician? Nobody's dying to see the statistician! Chapter 8 Interval Estimation Slides Preared by JOHN S. LOUCKS St. Edward s Uiversity Slide 1 What is the differece betwee a statisticia ad a morticia? Nobody's dyig to see the statisticia! Slide Chater 8 Iterval Estimatio Poulatio

More information

1/27/12. Vectors: Outline and Reading. Chapter 6: Vectors, Lists and Sequences. The Vector ADT. Applications of Vectors. Array based Vector: Insertion

1/27/12. Vectors: Outline and Reading. Chapter 6: Vectors, Lists and Sequences. The Vector ADT. Applications of Vectors. Array based Vector: Insertion Chater 6: ectors, Lists ad Sequeces ectors: Outlie ad Readig The ector ADT ( 6.1.1) Array-based imlemetatio ( 6.1.2) Nacy Amato Parasol Lab, Det. CSE, Texas A&M Uiversity Ackowledgemet: These slides are

More information

Chapter 24. Sorting. Objectives. 1. To study and analyze time efficiency of various sorting algorithms

Chapter 24. Sorting. Objectives. 1. To study and analyze time efficiency of various sorting algorithms Chapter 4 Sortig 1 Objectives 1. o study ad aalyze time efficiecy of various sortig algorithms 4. 4.7.. o desig, implemet, ad aalyze bubble sort 4.. 3. o desig, implemet, ad aalyze merge sort 4.3. 4. o

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

Data Structures Week #9. Sorting

Data Structures Week #9. Sorting Data Structures Week #9 Sortig Outlie Motivatio Types of Sortig Elemetary (O( 2 )) Sortig Techiques Other (O(*log())) Sortig Techiques 21.Aralık.2010 Boraha Tümer, Ph.D. 2 Sortig 21.Aralık.2010 Boraha

More information

15-859E: Advanced Algorithms CMU, Spring 2015 Lecture #2: Randomized MST and MST Verification January 14, 2015

15-859E: Advanced Algorithms CMU, Spring 2015 Lecture #2: Randomized MST and MST Verification January 14, 2015 15-859E: Advaced Algorithms CMU, Sprig 2015 Lecture #2: Radomized MST ad MST Verificatio Jauary 14, 2015 Lecturer: Aupam Gupta Scribe: Yu Zhao 1 Prelimiaries I this lecture we are talkig about two cotets:

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

A GENERIC CONTEXT MODEL FOR UNIFORM-RECONSTRUCTION BASED SNR-SCALABLE REPRESENTATIONS OF RESIDUAL TEXTURE SIGNALS

A GENERIC CONTEXT MODEL FOR UNIFORM-RECONSTRUCTION BASED SNR-SCALABLE REPRESENTATIONS OF RESIDUAL TEXTURE SIGNALS A GENERIC CONTEXT MODEL FOR UNIFORM-RECONSTRUCTION BASED SNR-SCALABLE REPRESENTATIONS OF RESIDUAL TEXTURE SIGNALS Heier Kirchhoffer, Detlev Mare, ad Thomas Wiegad Image Commuicatio Grou, Image Processig

More information

Big-O Analysis. Asymptotics

Big-O Analysis. Asymptotics Big-O Aalysis 1 Defiitio: Suppose that f() ad g() are oegative fuctios of. The we say that f() is O(g()) provided that there are costats C > 0 ad N > 0 such that for all > N, f() Cg(). Big-O expresses

More information

On (K t e)-saturated Graphs

On (K t e)-saturated Graphs Noame mauscript No. (will be iserted by the editor O (K t e-saturated Graphs Jessica Fuller Roald J. Gould the date of receipt ad acceptace should be iserted later Abstract Give a graph H, we say a graph

More information

6.854J / J Advanced Algorithms Fall 2008

6.854J / J Advanced Algorithms Fall 2008 MIT OpeCourseWare http://ocw.mit.edu 6.854J / 18.415J Advaced Algorithms Fall 2008 For iformatio about citig these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. 18.415/6.854 Advaced Algorithms

More information

rus i O(log log Λ = log log ) time usig a optimal umber of processors. Chaudhuri, Hagerup, ad Rama's algorithm [2] rus i O(log= loglog) time o the CRC

rus i O(log log Λ = log log ) time usig a optimal umber of processors. Chaudhuri, Hagerup, ad Rama's algorithm [2] rus i O(log= loglog) time o the CRC Selectio Algorithms for Parallel Disk Systems 1 Saguthevar Rajasekara Dept. of CISE, Uiv. of Florida, Gaiesville, FL 32611. Abstract. With the wideig gap betwee processor speeds ad disk access speeds,

More information

Big-O Analysis. Asymptotics

Big-O Analysis. Asymptotics Big-O Aalysis 1 Defiitio: Suppose that f() ad g() are oegative fuctios of. The we say that f() is O(g()) provided that there are costats C > 0 ad N > 0 such that for all > N, f() Cg(). Big-O expresses

More information

Journal of Chemical and Pharmaceutical Research, 2014, 6(2): Research Article

Journal of Chemical and Pharmaceutical Research, 2014, 6(2): Research Article Available olie www.ocr.com Joural of Chemical ad Pharmaceutical Research 204 6(2):250-255 Research Article ISSN : 0975-784 CODEN(USA) : JCPRC5 Based fuzzy atter recogitio methodology for the DDos evaluatio

More information

Ones Assignment Method for Solving Traveling Salesman Problem

Ones Assignment Method for Solving Traveling Salesman Problem Joural of mathematics ad computer sciece 0 (0), 58-65 Oes Assigmet Method for Solvig Travelig Salesma Problem Hadi Basirzadeh Departmet of Mathematics, Shahid Chamra Uiversity, Ahvaz, Ira Article history:

More information

Interfrence-Aware Clustering Algorithms for Mobile ad hoc Network

Interfrence-Aware Clustering Algorithms for Mobile ad hoc Network Iterfrece-Aware Clusterig Algorithms for Mobile ad hoc Network At Coloy otimizatio-based Algorithm Mahboobeh Parsaoor, Urba Bilstru School of Iformatio Sciece, Comuter ad Electrical Egieerig (IDE), Halmstad

More information

Access path support for referential integrity in SQL2

Access path support for referential integrity in SQL2 The VLDB Joural 5: 196 214 (1996) The VLDB Joural c Sriger-Verlag 1996 Access ath suort for referetial itegrity i SQL2 Theo Härder, Joachim Reiert Deartmet of Comuter Sciece, Uiversity of Kaiserslauter,

More information

Minimum Rank of Graphs Powers Family

Minimum Rank of Graphs Powers Family Oe Joural of Discrete Mathematics 0 65-69 htt://dxdoiorg/046/odm00 Published Olie Aril 0 (htt://wwwscirporg/oural/odm) Miimum Rak of rahs Powers Family Alimohammad Nazari Marzieh Karimi Radoor Deartmet

More information

Lecture 28: Data Link Layer

Lecture 28: Data Link Layer Automatic Repeat Request (ARQ) 2. Go ack N ARQ Although the Stop ad Wait ARQ is very simple, you ca easily show that it has very the low efficiecy. The low efficiecy comes from the fact that the trasmittig

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

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

An Efficient Algorithm for Graph Bisection of Triangularizations

An Efficient Algorithm for Graph Bisection of Triangularizations A Efficiet Algorithm for Graph Bisectio of Triagularizatios Gerold Jäger Departmet of Computer Sciece Washigto Uiversity Campus Box 1045 Oe Brookigs Drive St. Louis, Missouri 63130-4899, USA jaegerg@cse.wustl.edu

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

FREQUENCY ESTIMATION OF INTERNET PACKET STREAMS WITH LIMITED SPACE: UPPER AND LOWER BOUNDS

FREQUENCY ESTIMATION OF INTERNET PACKET STREAMS WITH LIMITED SPACE: UPPER AND LOWER BOUNDS FREQUENCY ESTIMATION OF INTERNET PACKET STREAMS WITH LIMITED SPACE: UPPER AND LOWER BOUNDS Prosejit Bose Evagelos Kraakis Pat Mori Yihui Tag School of Computer Sciece, Carleto Uiversity {jit,kraakis,mori,y

More information

n n B. How many subsets of C are there of cardinality n. We are selecting elements for such a

n n B. How many subsets of C are there of cardinality n. We are selecting elements for such a 4. [10] Usig a combiatorial argumet, prove that for 1: = 0 = Let A ad B be disjoit sets of cardiality each ad C = A B. How may subsets of C are there of cardiality. We are selectig elemets for such a subset

More information

found that now considerable work has been done in this started with some example, which motivates the later results.

found that now considerable work has been done in this started with some example, which motivates the later results. 8 Iteratioal Joural of Comuter Sciece & Emergig Techologies (E-ISSN: 44-64) Volume, Issue 4, December A Study o Adjacecy Matrix for Zero-Divisor Grahs over Fiite Rig of Gaussia Iteger Prajali, Amit Sharma

More information

Appendix D. Controller Implementation

Appendix D. Controller Implementation COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Iterface 5 th Editio Appedix D Cotroller Implemetatio Cotroller Implemetatios Combiatioal logic (sigle-cycle); Fiite state machie (multi-cycle, pipelied);

More information

CIS 121 Data Structures and Algorithms with Java Fall Big-Oh Notation Tuesday, September 5 (Make-up Friday, September 8)

CIS 121 Data Structures and Algorithms with Java Fall Big-Oh Notation Tuesday, September 5 (Make-up Friday, September 8) CIS 11 Data Structures ad Algorithms with Java Fall 017 Big-Oh Notatio Tuesday, September 5 (Make-up Friday, September 8) Learig Goals Review Big-Oh ad lear big/small omega/theta otatios Practice solvig

More information

An Efficient Algorithm for Graph Bisection of Triangularizations

An Efficient Algorithm for Graph Bisection of Triangularizations Applied Mathematical Scieces, Vol. 1, 2007, o. 25, 1203-1215 A Efficiet Algorithm for Graph Bisectio of Triagularizatios Gerold Jäger Departmet of Computer Sciece Washigto Uiversity Campus Box 1045, Oe

More information

FAST BIT-REVERSALS ON UNIPROCESSORS AND SHARED-MEMORY MULTIPROCESSORS

FAST BIT-REVERSALS ON UNIPROCESSORS AND SHARED-MEMORY MULTIPROCESSORS SIAM J. SCI. COMPUT. Vol. 22, No. 6, pp. 2113 2134 c 21 Society for Idustrial ad Applied Mathematics FAST BIT-REVERSALS ON UNIPROCESSORS AND SHARED-MEMORY MULTIPROCESSORS ZHAO ZHANG AND XIAODONG ZHANG

More information

Figure 1. Illustration of proximity set and interaction set in two dimensions.

Figure 1. Illustration of proximity set and interaction set in two dimensions. A Provably Otimal, Distributio-Ideedet Parallel Fast Multiole Method Λ Fatih E. Sevilge Syracuse Uiversity School of EECS Syracuse, NY 13244 sevilge@ecs.syr.edu Sriivas Aluru Iowa State Uiversity Det.

More information

why study sorting? Sorting is a classic subject in computer science. There are three reasons for studying sorting algorithms.

why study sorting? Sorting is a classic subject in computer science. There are three reasons for studying sorting algorithms. Chapter 5 Sortig IST311 - CIS65/506 Clevelad State Uiversity Prof. Victor Matos Adapted from: Itroductio to Java Programmig: Comprehesive Versio, Eighth Editio by Y. Daiel Liag why study sortig? Sortig

More information

Contrace: Traceroute Facility for Content- Centric Network

Contrace: Traceroute Facility for Content- Centric Network Cotrace: Traceroute Facility for Cotet- Cetric Network htts://tools.ietf.org/html/draft-asaeda-icrg-cotrace-01 Hitoshi Asaeda (NICT) Xu Shao (NICT) Thierry Turletti (Iria) 1 Outlie Motivatio Desig cocet

More information

CIS 121 Data Structures and Algorithms with Java Spring Stacks, Queues, and Heaps Monday, February 18 / Tuesday, February 19

CIS 121 Data Structures and Algorithms with Java Spring Stacks, Queues, and Heaps Monday, February 18 / Tuesday, February 19 CIS Data Structures ad Algorithms with Java Sprig 09 Stacks, Queues, ad Heaps Moday, February 8 / Tuesday, February 9 Stacks ad Queues Recall the stack ad queue ADTs (abstract data types from lecture.

More information

Computer Science Foundation Exam. August 12, Computer Science. Section 1A. No Calculators! KEY. Solutions and Grading Criteria.

Computer Science Foundation Exam. August 12, Computer Science. Section 1A. No Calculators! KEY. Solutions and Grading Criteria. Computer Sciece Foudatio Exam August, 005 Computer Sciece Sectio A No Calculators! Name: SSN: KEY Solutios ad Gradig Criteria Score: 50 I this sectio of the exam, there are four (4) problems. You must

More information

c-dominating Sets for Families of Graphs

c-dominating Sets for Families of Graphs c-domiatig Sets for Families of Graphs Kelsie Syder Mathematics Uiversity of Mary Washigto April 6, 011 1 Abstract The topic of domiatio i graphs has a rich history, begiig with chess ethusiasts i the

More information

Examples and Applications of Binary Search

Examples and Applications of Binary Search Toy Gog ITEE Uiersity of Queeslad I the secod lecture last week we studied the biary search algorithm that soles the problem of determiig if a particular alue appears i a sorted list of iteger or ot. We

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

! Given the following Structure: ! We can define a pointer to a structure. ! Now studentptr points to the s1 structure.

! Given the following Structure: ! We can define a pointer to a structure. ! Now studentptr points to the s1 structure. Liked Lists Uit 5 Sectios 11.9 & 18.1-2 CS 2308 Fall 2018 Jill Seama 11.9: Poiters to Structures! Give the followig Structure: struct Studet { strig ame; // Studet s ame it idnum; // Studet ID umber it

More information

Streaming PRAM. Abstract. 1. Introduction Simple PRAM

Streaming PRAM. Abstract. 1. Introduction Simple PRAM Streamig PRAM Darrell R. Ulm Deartmet of Comuter Sciece Uiversity of Akro dulm@cs.uakro.edu Michael Scherger Deartmet of Comuter Sciece Ket State Uiversity mscherge@cs.ket.edu Abstract Parallel radom access

More information

Multiprocessors. HPC Prof. Robert van Engelen

Multiprocessors. HPC Prof. Robert van Engelen Multiprocessors Prof. Robert va Egele Overview The PMS model Shared memory multiprocessors Basic shared memory systems SMP, Multicore, ad COMA Distributed memory multicomputers MPP systems Network topologies

More information

Distributed Power-law Graph Computing: Theoretical and Empirical Analysis

Distributed Power-law Graph Computing: Theoretical and Empirical Analysis Distributed Power-law Grah Comutig Distributed Power-law Grah Comutig: Theoretical ad Emirical Aalysis Cog Xie Deartmet of Comuter Sciece ad Egieerig Shaghai Jiao Tog Uiversity 800 Dog Chua Road, Shaghai,

More information

Announcements. Reading. Project #4 is on the web. Homework #1. Midterm #2. Chapter 4 ( ) Note policy about project #3 missing components

Announcements. Reading. Project #4 is on the web. Homework #1. Midterm #2. Chapter 4 ( ) Note policy about project #3 missing components Aoucemets Readig Chapter 4 (4.1-4.2) Project #4 is o the web ote policy about project #3 missig compoets Homework #1 Due 11/6/01 Chapter 6: 4, 12, 24, 37 Midterm #2 11/8/01 i class 1 Project #4 otes IPv6Iit,

More information

Course Site: Copyright 2012, Elsevier Inc. All rights reserved.

Course Site:   Copyright 2012, Elsevier Inc. All rights reserved. Course Site: http://cc.sjtu.edu.c/g2s/site/aca.html 1 Computer Architecture A Quatitative Approach, Fifth Editio Chapter 2 Memory Hierarchy Desig 2 Outlie Memory Hierarchy Cache Desig Basic Cache Optimizatios

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

A Study on the Performance of Cholesky-Factorization using MPI

A Study on the Performance of Cholesky-Factorization using MPI A Study o the Performace of Cholesky-Factorizatio usig MPI Ha S. Kim Scott B. Bade Departmet of Computer Sciece ad Egieerig Uiversity of Califoria Sa Diego {hskim, bade}@cs.ucsd.edu Abstract Cholesky-factorizatio

More information

Trajectory Improves Data Delivery in Urban Vehicular Networks

Trajectory Improves Data Delivery in Urban Vehicular Networks IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS Trajectory Imroves Data Delivery i Urba Vehicular Networks Yami Zhu, Member, IEEE, Yuche Wu, ad Bo Li, Fellow, IEEE Abstract Efficiet data delivery

More information

Improvement of the Orthogonal Code Convolution Capabilities Using FPGA Implementation

Improvement of the Orthogonal Code Convolution Capabilities Using FPGA Implementation Improvemet of the Orthogoal Code Covolutio Capabilities Usig FPGA Implemetatio Naima Kaabouch, Member, IEEE, Apara Dhirde, Member, IEEE, Saleh Faruque, Member, IEEE Departmet of Electrical Egieerig, Uiversity

More information

Mathematical Stat I: solutions of homework 1

Mathematical Stat I: solutions of homework 1 Mathematical Stat I: solutios of homework Name: Studet Id N:. Suppose we tur over cards simultaeously from two well shuffled decks of ordiary playig cards. We say we obtai a exact match o a particular

More information

The Magma Database file formats

The Magma Database file formats The Magma Database file formats Adrew Gaylard, Bret Pikey, ad Mart-Mari Breedt Johaesburg, South Africa 15th May 2006 1 Summary Magma is a ope-source object database created by Chris Muller, of Kasas City,

More information

1.2 Binomial Coefficients and Subsets

1.2 Binomial Coefficients and Subsets 1.2. BINOMIAL COEFFICIENTS AND SUBSETS 13 1.2 Biomial Coefficiets ad Subsets 1.2-1 The loop below is part of a program to determie the umber of triagles formed by poits i the plae. for i =1 to for j =

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

CIS 121 Data Structures and Algorithms with Java Spring Stacks and Queues Monday, February 12 / Tuesday, February 13

CIS 121 Data Structures and Algorithms with Java Spring Stacks and Queues Monday, February 12 / Tuesday, February 13 CIS Data Structures ad Algorithms with Java Sprig 08 Stacks ad Queues Moday, February / Tuesday, February Learig Goals Durig this lab, you will: Review stacks ad queues. Lear amortized ruig time aalysis

More information

Lecturers: Sanjam Garg and Prasad Raghavendra Feb 21, Midterm 1 Solutions

Lecturers: Sanjam Garg and Prasad Raghavendra Feb 21, Midterm 1 Solutions U.C. Berkeley CS170 : Algorithms Midterm 1 Solutios Lecturers: Sajam Garg ad Prasad Raghavedra Feb 1, 017 Midterm 1 Solutios 1. (4 poits) For the directed graph below, fid all the strogly coected compoets

More information

CS200: Hash Tables. Prichard Ch CS200 - Hash Tables 1

CS200: Hash Tables. Prichard Ch CS200 - Hash Tables 1 CS200: Hash Tables Prichard Ch. 13.2 CS200 - Hash Tables 1 Table Implemetatios: average cases Search Add Remove Sorted array-based Usorted array-based Balaced Search Trees O(log ) O() O() O() O(1) O()

More information

Effective Presentation Techniques

Effective Presentation Techniques Versio 1.2 Effective Presetatio Techiques Michael J. Qui 7 October 2005 Outlie Structurig resetatio Desigig slides Pausig techiques Aswerig questios Structurig resetatio Desigig slides Pausig techiques

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

End Semester Examination CSE, III Yr. (I Sem), 30002: Computer Organization

End Semester Examination CSE, III Yr. (I Sem), 30002: Computer Organization Ed Semester Examiatio 2013-14 CSE, III Yr. (I Sem), 30002: Computer Orgaizatio Istructios: GROUP -A 1. Write the questio paper group (A, B, C, D), o frot page top of aswer book, as per what is metioed

More information

Improved Random Graph Isomorphism

Improved Random Graph Isomorphism Improved Radom Graph Isomorphism Tomek Czajka Gopal Paduraga Abstract Caoical labelig of a graph cosists of assigig a uique label to each vertex such that the labels are ivariat uder isomorphism. Such

More information

Combination Labelings Of Graphs

Combination Labelings Of Graphs Applied Mathematics E-Notes, (0), - c ISSN 0-0 Available free at mirror sites of http://wwwmaththuedutw/ame/ Combiatio Labeligs Of Graphs Pak Chig Li y Received February 0 Abstract Suppose G = (V; E) is

More information

Computers and Scientific Thinking

Computers and Scientific Thinking Computers ad Scietific Thikig David Reed, Creighto Uiversity Chapter 15 JavaScript Strigs 1 Strigs as Objects so far, your iteractive Web pages have maipulated strigs i simple ways use text box to iput

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

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

Counting the Number of Minimum Roman Dominating Functions of a Graph

Counting the Number of Minimum Roman Dominating Functions of a Graph Coutig the Number of Miimum Roma Domiatig Fuctios of a Graph SHI ZHENG ad KOH KHEE MENG, Natioal Uiversity of Sigapore We provide two algorithms coutig the umber of miimum Roma domiatig fuctios of a graph

More information

Operating System Concepts. Operating System Concepts

Operating System Concepts. Operating System Concepts Chapter 4: Mass-Storage Systems Logical Disk Structure Logical Disk Structure Disk Schedulig Disk Maagemet RAID Structure Disk drives are addressed as large -dimesioal arrays of logical blocks, where the

More information

GPUMP: a Multiple-Precision Integer Library for GPUs

GPUMP: a Multiple-Precision Integer Library for GPUs GPUMP: a Multiple-Precisio Iteger Library for GPUs Kaiyog Zhao ad Xiaowe Chu Departmet of Computer Sciece, Hog Kog Baptist Uiversity Hog Kog, P. R. Chia Email: {kyzhao, chxw}@comp.hkbu.edu.hk Abstract

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

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

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

EE260: Digital Design, Spring /16/18. n Example: m 0 (=x 1 x 2 ) is adjacent to m 1 (=x 1 x 2 ) and m 2 (=x 1 x 2 ) but NOT m 3 (=x 1 x 2 )

EE260: Digital Design, Spring /16/18. n Example: m 0 (=x 1 x 2 ) is adjacent to m 1 (=x 1 x 2 ) and m 2 (=x 1 x 2 ) but NOT m 3 (=x 1 x 2 ) EE26: Digital Desig, Sprig 28 3/6/8 EE 26: Itroductio to Digital Desig Combiatioal Datapath Yao Zheg Departmet of Electrical Egieerig Uiversity of Hawaiʻi at Māoa Combiatioal Logic Blocks Multiplexer Ecoders/Decoders

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

CS61C : Machine Structures

CS61C : Machine Structures CS 61C L24 VM II (1) ist.eecs.berkele.edu/~cs61c/su5 CS61C : Machie Structures Lecture #24: VM II Address Mappig: Virtual Address: VPN offset 25-8-2 Ad Carle idex ito page table located i phsical memor

More information

Evaluation scheme for Tracking in AMI

Evaluation scheme for Tracking in AMI A M I C o m m u i c a t i o A U G M E N T E D M U L T I - P A R T Y I N T E R A C T I O N http://www.amiproject.org/ Evaluatio scheme for Trackig i AMI S. Schreiber a D. Gatica-Perez b AMI WP4 Trackig:

More information

Chapter 3 Classification of FFT Processor Algorithms

Chapter 3 Classification of FFT Processor Algorithms Chapter Classificatio of FFT Processor Algorithms The computatioal complexity of the Discrete Fourier trasform (DFT) is very high. It requires () 2 complex multiplicatios ad () complex additios [5]. As

More information

Morgan Kaufmann Publishers 26 February, COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface. Chapter 5.

Morgan Kaufmann Publishers 26 February, COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface. Chapter 5. Morga Kaufma Publishers 26 February, 208 COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Iterface 5 th Editio Chapter 5 Virtual Memory Review: The Memory Hierarchy Take advatage of the priciple

More information

COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface. Chapter 4. The Processor. Part A Datapath Design

COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface. Chapter 4. The Processor. Part A Datapath Design COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Iterface 5 th Editio Chapter The Processor Part A path Desig Itroductio CPU performace factors Istructio cout Determied by ISA ad compiler. CPI ad

More information

Abstract. Chapter 4 Computation. Overview 8/13/18. Bjarne Stroustrup Note:

Abstract. Chapter 4 Computation. Overview 8/13/18. Bjarne Stroustrup   Note: Chapter 4 Computatio Bjare Stroustrup www.stroustrup.com/programmig Abstract Today, I ll preset the basics of computatio. I particular, we ll discuss expressios, how to iterate over a series of values

More information

1 Graph Sparsfication

1 Graph Sparsfication CME 305: Discrete Mathematics ad Algorithms 1 Graph Sparsficatio I this sectio we discuss the approximatio of a graph G(V, E) by a sparse graph H(V, F ) o the same vertex set. I particular, we cosider

More information

Extending The Sleuth Kit and its Underlying Model for Pooled Storage File System Forensic Analysis

Extending The Sleuth Kit and its Underlying Model for Pooled Storage File System Forensic Analysis Extedig The Sleuth Kit ad its Uderlyig Model for Pooled File System Foresic Aalysis Frauhofer Istitute for Commuicatio, Iformatio Processig ad Ergoomics Ja-Niclas Hilgert* Marti Lambertz Daiel Plohma ja-iclas.hilgert@fkie.frauhofer.de

More information

quality/quantity peak time/ratio

quality/quantity peak time/ratio Semi-Heap ad Its Applicatios i Touramet Rakig Jie Wu Departmet of omputer Sciece ad Egieerig Florida Atlatic Uiversity oca Rato, FL 3343 jie@cse.fau.edu September, 00 . Itroductio ad Motivatio. relimiaries

More information

9.1. Sequences and Series. Sequences. What you should learn. Why you should learn it. Definition of Sequence

9.1. Sequences and Series. Sequences. What you should learn. Why you should learn it. Definition of Sequence _9.qxd // : AM Page Chapter 9 Sequeces, Series, ad Probability 9. Sequeces ad Series What you should lear Use sequece otatio to write the terms of sequeces. Use factorial otatio. Use summatio otatio to

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

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

Algorithm Design Techniques. Divide and conquer Problem

Algorithm Design Techniques. Divide and conquer Problem Algorithm Desig Techiques Divide ad coquer Problem Divide ad Coquer Algorithms Divide ad Coquer algorithm desig works o the priciple of dividig the give problem ito smaller sub problems which are similar

More information

MAXIMUM MATCHINGS IN COMPLETE MULTIPARTITE GRAPHS

MAXIMUM MATCHINGS IN COMPLETE MULTIPARTITE GRAPHS Fura Uiversity Electroic Joural of Udergraduate Matheatics Volue 00, 1996 6-16 MAXIMUM MATCHINGS IN COMPLETE MULTIPARTITE GRAPHS DAVID SITTON Abstract. How ay edges ca there be i a axiu atchig i a coplete

More information

Computer Architecture ELEC3441

Computer Architecture ELEC3441 CPU-Memory Bottleeck Computer Architecture ELEC44 CPU Memory Lecture 8 Cache Dr. Hayde Kwok-Hay So Departmet of Electrical ad Electroic Egieerig Performace of high-speed computers is usually limited by

More information