PCJ-BLAST massively parallel sequence alignment using NCBI Blast and PCJ Java library

Size: px
Start display at page:

Download "PCJ-BLAST massively parallel sequence alignment using NCBI Blast and PCJ Java library"

Transcription

1 PCJ-BLAST mssively prllel sequece ligmet usig NCBI Blst d PCJ Jv librry Piotr Bł Mrek Nowicki Dvit Bzhlv bl@icm.edu.pl ICM Uiversity of Wrsw frmir@mt.umk.pl ICM Uiversity of Wrsw N. Copericus Uiversity dvit.bzhlv@ki.se Krolisk Istituet

2 Blst Sequece ligmet is essetil for NGS There is umber of softwre pckges for sequece ligmet bsed o vrious similrity serch methods BLAST Bsic Locl Aligmet Serch Tool (1991) The heruistic lgorithm it uses is much fster th other pproches The serch time c be log (dys or weeks) for lrge dtsets NCBI blst is the most widely used implemettio There is strog iterest i usig lrge computer systems to ru blst Blst ruig o cloud or grid Prllel versios of blst ruig o HPC systems 2

3 Fst iput (2 reds out of 1 milio) >C _2.0 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAACACTTTGGGAGGCCAAGATGGGAAGATCTTTTGAGG CCAGGCGTTCAAGACCAGTCTGGGCAATATGGAGAGACCT GTCTCTACAAAAAAAATTAGCCAGACCTAGTGGCTGGCTGA GGCAGGAGGATCATCTGAGCTCAGGAGATTGAGAT >C _2.0 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAATTTTAAGTTTTTCCTTATAAGGGAAATAAGCTTATTTCT TTTAGAAGCAGAAACTGCAAATGGGGGTGTATGGAATTCTTT TTTTTTTTTTTTTTTTTGCGACAAGGTCTCACTGTGTTGCCCA GACTGGAGTGCAGTGGTGCAATCATAGCT 3

4 Time [s] NCBI blst performce (XC40 sigle ode) 1000 Time of processig 48 sequeces t oce usig 1 istce of differet versio of NCBI BLAST with differet umber of BLAST threds Number of BLAST threds cbi-blst cbi-blst cbi-blst cbi-blst _gcc_5.3 4

5 Blst processig time of reds chges 800 Processig time [s]

6 Prllel blst implemettios mpiblast uses old versio (2012) of blst prllel_blst.py limited to sigle ode, regulr split of iput Prcel BLAST (bsed o NCBI blst ) costly! The BlueGee implemettio limited to IBM BGQ systems pioblast prllel versio which uses MPIIO memory problems while referece dtbse is lrge SprkBLAST Apche Sprk implemettio ruig o AWS cloud (PhD thesis 2016) 6

7 Pcj-blst Prllel versio developed usig PCJ (Prllel Computig i Jv librry developed t ICM) Jv code is resposible for redig fst iput d execute NCBI-blst o set of sequeces (reds) The NCBI blst (curretly ) is executed with the -um_threds optio For 28 core odes: 4 PCJ threds with um_threds=7 The solutio c be executed o y multiode system with Jv 8 istlled The I/O performce is importt thousds of blst istces reds blst dtbse (52GB) cocurretly lustr filesystem performs worse th fs 7

8 Pcj-blst Reds iput sequece (fst) lie by lie Blocks of lies (reds) re used s iput for blst query Pcj-blst c strt hudreds of blst istces NCBI blst is used pcj-blst ot bouded to prticulr versio Oe or more NCBI blst istces re ru o the hrdwre ode Output from ech ode (text or XML) is gthered Output is postprocessed d is stored i sigle file Postprocessig is prllelized Pcj-blst c be ru o HPC systems, clusters Requires Jv 8 d NCBI blst istlled 8

9 pcj-blst 9

10 Multiple NCBI blst ruig o sigle ode (X86 cluster) 10

11 I/O performce (x86 sigle file red) 11

12 I/O performce (XC40 sigle file red) 12

13 pcj-blst sclbility (x86 cluster) 13

14 pcj-blst sclbility (Cry XC40) 14

15 PGAS lguges Idepedet threds Locl d shred (globl) vribles Globl vribles visible to ll threds Oe-sided commuictio Commuictio detils hidde to progrmmer Mi opertios: Sychroiztio (brrier) get put 15

16 PCJ Librry Jv librry pcj.icm.edu.pl Desiged bsed o PGAS (Prtitioed Globl Address Spce) prdigm Simple d esy to use Does ot itroduce extesios to the Jv lguge o ew compilers or pre-processor Does ot require dditiol librries Works with Jv 1.8, 1.9 Versio for Jv 1.7 vilble Good performce Good sclbility (lredy beyod 50k+ cores) 16

17 PCJ thred 0 PCJ thred 1 PCJ thred 2 PCJ thred 3 PCJ thred 4 PCJ thred 5 PCJ thred 6 PCJ thred 7 PCJ memory lyout Physicl ode Physicl ode JV M JV M Shred vribles Locl vribles CPU CPU CPU CPU CPU CPU CPU CPU 17

18 PCJ thred 0 PCJ thred 1 PCJ thred 2 PCJ thred 3 PCJ thred 4 PCJ thred 5 PCJ thred 6 PCJ thred 7 PCJ memory lyout d commuictio Physicl ode Physicl ode JV M JV M Shred vribles Locl vribles CPU CPU CPU CPU CPU CPU CPU CPU 18

19 PCJ Prllel Computtios i Jv Mi fuctiolity: Sychroiztio Get dt from other thred (get) Sed dt to other thred (put) Additiol fuctiolity: Brodcst Moitorig of the vrible chge (useful with put()) Prllel I/O Groups of threds 19

20 PCJ Hello world import org.pcj.* public clss PcjHelloWorld implemets StrtPoit public void mi() { System.out.pritl("Hello!"); } } public sttic void mi(strig[] rgs) { PCJ.deploy(PcjHelloWorld.clss, } ew NodesDescriptio("odes.txt")); 20

21 PCJ mi eum Shred {, rry } // Defie storge if (PCJ.myId()==0) c =(double) PCJ.get(3, Shred.); if (PCJ.myId()==0) PCJ.put(5.0, 3, Shred.); if (PCJ.myId()==0) PCJ.put(5.0, 3, Shred.rry, p); if (PCJ.myId()==0) PCJ.brodcst(5.0, Shred.); public sttic void PCJ.brrier(); public sttic itpcj.thredcout() public sttic itpcj.myid() 21 16/05/2017 Piotr Bł

22 PCJ red dt eum Shred { } double ; // Defie storge double l; if (PCJ.myId()==0) { Scer s = ew Scer(System.i); l = s.extdouble(); PCJ.brodcst(l., Shred.); } else { PCJ.witfor(Shred.); } PCJ.brier() 22 16/05/2017 Piotr Bł

23 PCJ Gther usig (PcjGther.clss) eum Shred { } double PcjFuture L[] = ew PcjFuture[PCJ.thredCout()]; double sum = 0.0; if (PCJ.myId() == 0) { for (it p = 0; p < PCJ.thredCout(); p++) { L[p] = PCJ.sycGet (p, Shred.); } for (it p = 0; p < PCJ.thredCout(); p++) { sum = sum + (double) L[p].get(); } } 23 16/05/2017 Piotr Bł

24 Grph500 kerel 2 (BFS) Cry XC40 24

25 Cofigurtios per secod [1/s] Neurl etwork optimiztio usig GA (coectom of C. Elgs) Eergy , Cofigurtios/Time Eergy 0,5 0,4 0,3 1 0, Number of threds 0,2 0,1 0 25

26 PCJ vs Apche Hdoop ICM) 26 Pi Estimte (blue), BFS (orge), WordCout (red)

27 PCJ-BLAST mssively prllel sequece ligmet usig NCBI Blst d PCJ Jv librry PCJ: pcj.icm.edu.pl Piotr Bł Mrek Nowicki Dvit Bzhlv bl@icm.edu.pl ICM Uiversity of Wrsw frmir@mt.umk.pl ICM Uiversity of Wrsw N. Copericus Uiversity dvit.bzhlv@ki.se Krolisk Istituet

pcj-blast - highly parallel similarity search implementation

pcj-blast - highly parallel similarity search implementation pcj-blast - highly parallel similarity search implementation Piotr Bała bala@icm.edu.pl ICM University of Warsaw Marek Nowicki faramir@mat.umk.pl ICM University of Warsaw N. Copernicus Univeristy Davit

More information

Performance evaluation of parallel computing and Big Data processing with Java and PCJ library

Performance evaluation of parallel computing and Big Data processing with Java and PCJ library Performce evlutio of prllel computig d Big Dt processig with Jv d PCJ librry Mrek Nowicki Fculty of Mthemtics d Computer Sciece Nicolus Copericus Uiversity Toruń, Pold frmir@mt.umk.pl Łuksz Górski, Piotr

More information

EE213A - EE298-2 Lecture 11

EE213A - EE298-2 Lecture 11 EE23A EE292 Lecture Time multiplexig eferece: F. Ctthoor (prt III) Igrid Verbuwhede Deprtmet of Electricl Egieerig Uiversity of Clifori Los Ageles igrid@ee.ucl.edu Motivtio DSP represettio & modelig to

More information

CS280 HW1 Solution Set Spring2002. now, we need to get rid of the n term. We know that:

CS280 HW1 Solution Set Spring2002. now, we need to get rid of the n term. We know that: CS80 HW Solutio Set Sprig00 Solutios by: Shddi Doghmi -) -) 4 * 4 4 4 ) 4 b-) ) ) ) * ) ) ) 0 ) c-) ) ) ) ) ) ow we eed to get rid of the term. We ow tht: ) ) ) ) substitute ito the recursive epressio:

More information

Modeling Reusable Concurrent Passive Entity Objects in Colored Petri Nets

Modeling Reusable Concurrent Passive Entity Objects in Colored Petri Nets Modelig Reusble Cocurret Pssive Etity Objects i Colored Petri Nets Rowld Pitts d Hss Gom George Mso Uiversity, Firfx, Virgii, USA {rpitts,hgom}@gmu.edu Abstrct. Cocurret softwre systems re growig icresigly

More information

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

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

More information

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

Embedded Systems Design: A Unified Hardware/Software Introduction. Outline. Chapter 2: Custom single-purpose processors.

Embedded Systems Design: A Unified Hardware/Software Introduction. Outline. Chapter 2: Custom single-purpose processors. Hrdwre/Softwre Itroductio Chpter Custom sigle-purpose processors Itroductio Combitiol logic Sequetil logic Outlie Custom sigle-purpose processor desig RT-level custom sigle-purpose processor desig Hrdwre/Softwre

More information

Primitive Pythagorean triples and generalized Fibonacci sequences

Primitive Pythagorean triples and generalized Fibonacci sequences Notes o Number Theory d Discrete Mthemtics Prit ISSN 30 53, Olie ISSN 37 875 Vol 3, 07, No, 5 Primitive Pythgore triples d geerlized ibocci sequeces J V Leyedekkers d A G Sho, 3 culty of Sciece, The Uiversity

More information

High-Performance Floating Point Divide

High-Performance Floating Point Divide High-Performce Flotig Poit Divide Albert A. Liddicot d Michel J. Fly Computer Systems Lbortory Stford Uiversity, Stford, CA 945 liddicot@stford.edu d fly@umuhum.stford.edu Abstrct I moder processors flotig

More information

Performance evaluation of parallel computing and Big Data processing with Java and PCJ

Performance evaluation of parallel computing and Big Data processing with Java and PCJ Performance evaluation of parallel computing and Big Data processing with Java and PCJ dr Marek Nowicki 2, dr Łukasz Górski 1, prof. Piotr Bała 1 bala@icm.edu.pl 1 ICM University of Warsaw, Warsaw, Poland

More information

. (b) Evaluate the sum given by. Exercise #1: A sequence is defined by the equation a n 2n

. (b) Evaluate the sum given by. Exercise #1: A sequence is defined by the equation a n 2n Nme: 453 Dte: SEQUENCES ALGEBRA WITH TRIGONOMETRY Sequeces, or ordered list of umbers, re extremely importt i mthemtics, both theoreticl d pplied A sequece is formlly defied s fuctio tht hs s its domi

More information

Transforming Irregular Algorithms for Heterogeneous Computing - Case Studies in Bioinformatics

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

More information

EE123 Digital Signal Processing

EE123 Digital Signal Processing Last Time EE Digital Sigal Processig Lecture 7 Block Covolutio, Overlap ad Add, FFT Discrete Fourier Trasform Properties of the Liear covolutio through circular Today Liear covolutio with Overlap ad add

More information

Two-Dimensional Motion Estimation (Part II: Advanced Techniques) Yao Wang Polytechnic University, Brooklyn, NY

Two-Dimensional Motion Estimation (Part II: Advanced Techniques) Yao Wang Polytechnic University, Brooklyn, NY Two-Dimesiol Motio Estimtio (Prt II: Advced Techiques) Yo Wg Polytechic Uiversity, Brookly, NY11201 http://eeweb.poly.edu/~yo Outlie Problems with EBMA Multiresolutio motio estimtio Hierrchicl block mtchig

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

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

External Memory. External Memory. Computational Models. Computational Models

External Memory. External Memory. Computational Models. Computational Models Exterl emory Exterl emory Computtiol model Shortet pth i implicit grid grph lgorithm I/O lgorithm Cche-oliviou lgorithm Computtiol model Shortet pth i implicit grid grph lgorithm I/O lgorithm Cche-oliviou

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

Two-Dimensional Motion Estimation (Part III: Advanced Techniques) Yao Wang Polytechnic University, Brooklyn, NY11201

Two-Dimensional Motion Estimation (Part III: Advanced Techniques) Yao Wang Polytechnic University, Brooklyn, NY11201 Two-Dimesiol Motio Estimtio (Prt III: Advced Techiques) Yo Wg Polytechic Uiversity, Brookly, NY11201 yo@visio.poly.edu Yo Wg, 2002 2-D Motio Estimtio Outlie Deformble block mtchig lgorithm (DBMA) Node-bsed

More information

Chapter 4 The Datapath

Chapter 4 The Datapath The Ageda Chapter 4 The Datapath Based o slides McGraw-Hill Additioal material 24/25/26 Lewis/Marti Additioal material 28 Roth Additioal material 2 Taylor Additioal material 2 Farmer Tae the elemets that

More information

Regular Expression Matching with Multi-Strings and Intervals. Philip Bille Mikkel Thorup

Regular Expression Matching with Multi-Strings and Intervals. Philip Bille Mikkel Thorup Regulr Expression Mtching with Multi-Strings nd Intervls Philip Bille Mikkel Thorup Outline Definition Applictions Previous work Two new problems: Multi-strings nd chrcter clss intervls Algorithms Thompson

More information

QFrag: Distributed Graph Search via Subgraph Isomorphism

QFrag: Distributed Graph Search via Subgraph Isomorphism Mrco Serfini, Ginmrco De Frncisci Morles, nd Georgos Signos Qtr Computing Reserch Institute - HBKU HBKU Reserch Complex 1 Doh, Qtr {mserfini,gmorles,gsignos}@hbku.edu.q ABSTRACT This pper introduces QFrg,

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

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

Caches I. CSE 351 Spring Instructor: Ruth Anderson

Caches I. CSE 351 Spring Instructor: Ruth Anderson L16: Cches I Cches I CSE 351 Spring 2017 Instructor: Ruth Anderson Teching Assistnts: Dyln Johnson Kevin Bi Linxing Preston Jing Cody Ohlsen Yufng Sun Joshu Curtis L16: Cches I Administrivi Homework 3,

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

Gauss-Seidel Method. An iterative method. Basic Procedure:

Gauss-Seidel Method. An iterative method. Basic Procedure: Guss-Siedel Method Guss-Seidel Method A itertive method. Bsic Procedure: -Algebriclly solve ech lier equtio for i -Assume iitil guess solutio rry -Solve for ech i d repet -Use bsolute reltive pproimte

More information

Optimization of a precise integration method for seismic modeling based on graphic processing unit

Optimization of a precise integration method for seismic modeling based on graphic processing unit Erthq Sci ()3: 387 393 387 Doi:.7/s589--736- Optimiztio of precise itegrtio method for seismic modelig bsed o grphic processig uit Jigyu Li Geyg Tg d Tiyue Hu, School of Erth d Spce Scieces, Pekig Uiversity,

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

Caches I. CSE 351 Autumn Instructor: Justin Hsia

Caches I. CSE 351 Autumn Instructor: Justin Hsia L01: Intro, L01: L16: Combintionl Introduction Cches I Logic CSE369, CSE351, Autumn 2016 Cches I CSE 351 Autumn 2016 Instructor: Justin Hsi Teching Assistnts: Chris M Hunter Zhn John Kltenbch Kevin Bi

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

Switching Hardware. Spring 2018 CS 438 Staff, University of Illinois 1

Switching Hardware. Spring 2018 CS 438 Staff, University of Illinois 1 Switchig Hardware Sprig 208 CS 438 Staff, Uiversity of Illiois Where are we? Uderstad Differet ways to move through a etwork (forwardig) Read sigs at each switch (datagram) Follow a kow path (virtual circuit)

More information

Our second algorithm. Comp 135 Machine Learning Computer Science Tufts University. Decision Trees. Decision Trees. Decision Trees.

Our second algorithm. Comp 135 Machine Learning Computer Science Tufts University. Decision Trees. Decision Trees. Decision Trees. Comp 135 Machie Learig Computer Sciece Tufts Uiversity Fall 2017 Roi Khardo Some of these slides were adapted from previous slides by Carla Brodley Our secod algorithm Let s look at a simple dataset for

More information

Implementing Consistency -- Paxos. Some slides from Michael Freedman

Implementing Consistency -- Paxos. Some slides from Michael Freedman Implemetig Cosistecy -- Paxos Some slides from Michael Freedma What do cliets see? Distributed stores use replicatio Fault tolerace ad scalability Does replicatio ecessitate icosistecy? Harder to program,

More information

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

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

More information

Random Graphs and Complex Networks T

Random Graphs and Complex Networks T Radom Graphs ad Complex Networks T-79.7003 Charalampos E. Tsourakakis Aalto Uiversity Lecture 3 7 September 013 Aoucemet Homework 1 is out, due i two weeks from ow. Exercises: Probabilistic iequalities

More information

Outline and Reading. Analysis of Algorithms. Running Time. Experimental Studies. Limitations of Experiments. Theoretical Analysis

Outline and Reading. Analysis of Algorithms. Running Time. Experimental Studies. Limitations of Experiments. Theoretical Analysis Outlie ad Readig Aalysis of Algorithms Iput Algorithm Output Ruig time ( 3.) Pseudo-code ( 3.2) Coutig primitive operatios ( 3.3-3.) Asymptotic otatio ( 3.6) Asymptotic aalysis ( 3.7) Case study Aalysis

More information

Logic Spring Final Review

Logic Spring Final Review Idirect Argumet: Cotrdictios d Cotrpositio. Prove the followig by cotrdictio d by cotrpositio. Give two seprte proofs. The egtive of y irrtiol umber is irrtiol. b. For ll iteger, if ² is odd the is odd.

More information

Multilayer Perceptrons

Multilayer Perceptrons Multilyer Perceptros The Essece of Neurl Networks XOR Problem Multilyer Perceptros Seerl lyers of itercoected euros: Sesory iput) lyer Output lyer Oe or more hidde lyers Geerliztio of sigle lyer perceptros

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

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

Threads and Concurrency in Java: Part 1

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

More information

Threads and Concurrency in Java: Part 1

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

More information

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

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

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

3n

3n Prctice Set 6 Sequeces d Series Clcultor Required Objectives Alyze ptters i sequeces to determie subsequet terms. Fid the first four terms of sequece give equtio for. Fid expressio for give sequece. Expd

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

Classes and Objects. Again: Distance between points within the first quadrant. José Valente de Oliveira 4-1

Classes and Objects. Again: Distance between points within the first quadrant. José Valente de Oliveira 4-1 Classes ad Objects jvo@ualg.pt José Valete de Oliveira 4-1 Agai: Distace betwee poits withi the first quadrat Sample iput Sample output 1 1 3 4 2 jvo@ualg.pt José Valete de Oliveira 4-2 1 The simplest

More information

Computational Geometry

Computational Geometry Computatioal Geometry Chapter 4 Liear programmig Duality Smallest eclosig disk O the Ageda Liear Programmig Slides courtesy of Craig Gotsma 4. 4. Liear Programmig - Example Defie: (amout amout cosumed

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

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

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

More information

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

It consists of two cold rooms, each with their own evaporator but sharing the same cooling flui d R134a system ( compressor, condenser...).

It consists of two cold rooms, each with their own evaporator but sharing the same cooling flui d R134a system ( compressor, condenser...). This system llows study of refrigertion systems implementtion of rmodyn mic clcultions pplied to refrigertion Its uniqueness is tht it is fully controllble vi Internet directly from web browser like Internet

More information

Parabolic Path to a Best Best-Fit Line:

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

More information

Outline CS 412/413. Function calls. Stack layout. Tiling a call. Two translations

Outline CS 412/413. Function calls. Stack layout. Tiling a call. Two translations CS 412/413 Introduction to Compilers nd Trnsltors Cornell University Andrew Myers Outline Implementing function clls Implementing functions Optimizing wy the pointer Dynmiclly-llocted structures strings

More information

Data Flow on a Queue Machine. Bruno R. Preiss. Copyright (c) 1987 by Bruno R. Preiss, P.Eng. All rights reserved.

Data Flow on a Queue Machine. Bruno R. Preiss. Copyright (c) 1987 by Bruno R. Preiss, P.Eng. All rights reserved. Dt Flow on Queue Mchine Bruno R. Preiss 2 Outline Genesis of dt-flow rchitectures Sttic vs. dynmic dt-flow rchitectures Pseudo-sttic dt-flow execution model Some dt-flow mchines Simple queue mchine Prioritized

More information

Automata Processor. Tobias Markus Computer Architecture Group, University of Heidelberg

Automata Processor. Tobias Markus Computer Architecture Group, University of Heidelberg 1 Automt Processor Tobis Mrkus Computer Architecture Group, University of Heidelberg Abstrct This pper gives brief overview over nondeterministic utomt nd the Automt Processor n rchitecture implemented

More information

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

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

More information

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

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

More information

UNIVERSITY OF MORATUWA

UNIVERSITY OF MORATUWA UNIVERSITY OF MORATUWA FACULTY OF ENGINEERING DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING B.Sc. Egieerig 2014 Itake Semester 2 Examiatio CS2052 COMPUTER ARCHITECTURE Time allowed: 2 Hours Jauary 2016

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

MapReduce and Hadoop. Debapriyo Majumdar Data Mining Fall 2014 Indian Statistical Institute Kolkata. November 10, 2014

MapReduce and Hadoop. Debapriyo Majumdar Data Mining Fall 2014 Indian Statistical Institute Kolkata. November 10, 2014 MapReduce ad Hadoop Debapriyo Majumdar Data Miig Fall 2014 Idia Statistical Istitute Kolkata November 10, 2014 Let s keep the itro short Moder data miig: process immese amout of data quickly Exploit parallelism

More information

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

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

More information

Threads and Concurrency in Java: Part 2

Threads and Concurrency in Java: Part 2 Threads ad Cocurrecy i Java: Part 2 1 Waitig Sychroized methods itroduce oe kid of coordiatio betwee threads. Sometimes we eed a thread to wait util a specific coditio has arise. 2003--09 T. S. Norvell

More information

Today. Search Problems. Uninformed Search Methods. Depth-First Search Breadth-First Search Uniform-Cost Search

Today. Search Problems. Uninformed Search Methods. Depth-First Search Breadth-First Search Uniform-Cost Search Uninformed Serch [These slides were creted by Dn Klein nd Pieter Abbeel for CS188 Intro to AI t UC Berkeley. All CS188 mterils re vilble t http://i.berkeley.edu.] Tody Serch Problems Uninformed Serch Methods

More information

Neural Networks A Model of Boolean Functions

Neural Networks A Model of Boolean Functions Neural Networks A Model of Boolea Fuctios Berd Steibach, Roma Kohut Freiberg Uiversity of Miig ad Techology Istitute of Computer Sciece D-09596 Freiberg, Germay e-mails: steib@iformatik.tu-freiberg.de

More information

State-space feedback 6 challenges of pole placement

State-space feedback 6 challenges of pole placement State-space feedbac 6 challeges of pole placemet J Rossiter Itroductio The earlier videos itroduced the cocept of state feedbac ad demostrated that it moves the poles. x u x Kx Bu It was show that whe

More information

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

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

More information

condition w i B i S maximum u i

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

More information

Lecture 6. Lecturer: Ronitt Rubinfeld Scribes: Chen Ziv, Eliav Buchnik, Ophir Arie, Jonathan Gradstein

Lecture 6. Lecturer: Ronitt Rubinfeld Scribes: Chen Ziv, Eliav Buchnik, Ophir Arie, Jonathan Gradstein 068.670 Subliear Time Algorithms November, 0 Lecture 6 Lecturer: Roitt Rubifeld Scribes: Che Ziv, Eliav Buchik, Ophir Arie, Joatha Gradstei Lesso overview. Usig the oracle reductio framework for approximatig

More information

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

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

More information

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 20 Itroductio to Trasactio Processig Cocepts ad Theory Copyright 2016 Ramez Elmasri ad Shamkat B. Navathe Itroductio Trasactio Describes local

More information

Objectives (today and tomorrow) CSE401: Lexical Analysis. Lexical analysis (scanning) Separation of lexing & parsing

Objectives (today and tomorrow) CSE401: Lexical Analysis. Lexical analysis (scanning) Separation of lexing & parsing Objectives (tody d tomorrow) CSE401: Lexicl Alysis Lrry Ruzzo Sprig 2004 Defie overll theory d prcticl structure of lexicl lysis Briefly recp regulr lguges, expressios, fiite stte mchies, d their reltioships

More information

IS-IS in Detail. ISP Workshops

IS-IS in Detail. ISP Workshops IS-IS i Detail ISP Workshops These materials are licesed uder the Creative Commos Attributio-NoCommercial 4.0 Iteratioal licese (http://creativecommos.org/liceses/by-c/4.0/) Last updated 27 th November

More information

CSCI 446: Artificial Intelligence

CSCI 446: Artificial Intelligence CSCI 446: Artificil Intelligence Serch Instructor: Michele Vn Dyne [These slides were creted by Dn Klein nd Pieter Abbeel for CS188 Intro to AI t UC Berkeley. All CS188 mterils re vilble t http://i.berkeley.edu.]

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

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

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

More information

n Explore virtualization concepts n Become familiar with cloud concepts

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

More information

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

Minimum Spanning Trees

Minimum Spanning Trees Presetatio for use with the textbook, lgorithm esig ad pplicatios, by M. T. Goodrich ad R. Tamassia, Wiley, 0 Miimum Spaig Trees 0 Goodrich ad Tamassia Miimum Spaig Trees pplicatio: oectig a Network Suppose

More information

THE COPAR SERVICE: COMBINING OPTIMISM AND PESSIMISM IN ACCESSING REPLICAS

THE COPAR SERVICE: COMBINING OPTIMISM AND PESSIMISM IN ACCESSING REPLICAS Proceedigs of the Third IASTED Iteratioal Coferece Commuicatios, Iteret ad Iformatio Techology November 22-24, 2004, St. Thomas, US Virgi Islads THE COPAR SERVICE: COMBINING OPTIMISM AND PESSIMISM IN ACCESSING

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

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

DATA STRUCTURES. amortized analysis binomial heaps Fibonacci heaps union-find. Data structures. Appetizer. Appetizer

DATA STRUCTURES. amortized analysis binomial heaps Fibonacci heaps union-find. Data structures. Appetizer. Appetizer Data structures DATA STRUCTURES Static problems. Give a iput, produce a output. Ex. Sortig, FFT, edit distace, shortest paths, MST, max-flow,... amortized aalysis biomial heaps Fiboacci heaps uio-fid Dyamic

More information

CSEP 573 Artificial Intelligence Winter 2016

CSEP 573 Artificial Intelligence Winter 2016 CSEP 573 Artificil Intelligence Winter 2016 Luke Zettlemoyer Problem Spces nd Serch slides from Dn Klein, Sturt Russell, Andrew Moore, Dn Weld, Pieter Abbeel, Ali Frhdi Outline Agents tht Pln Ahed Serch

More information

Performance Analysis of Multiclass FIFO: Motivation, Difficulty and a Network Calculus Approach

Performance Analysis of Multiclass FIFO: Motivation, Difficulty and a Network Calculus Approach Performace Aalysis of Multiclass FIFO: Motivatio, Difficulty ad a Network alculus Approach Yumig Jiag Norwegia Uiversity of Sciece ad Techology (NTNU) 1 19 March 2014, 2d Workshop o Network alculus, Bamberg,

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

Minimum Spanning Trees. Application: Connecting a Network

Minimum Spanning Trees. Application: Connecting a Network Miimum Spaig Tree // : Presetatio for use with the textbook, lgorithm esig ad pplicatios, by M. T. oodrich ad R. Tamassia, Wiley, Miimum Spaig Trees oodrich ad Tamassia Miimum Spaig Trees pplicatio: oectig

More information

Analysis of Algorithms

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

More information

BST Sequence of Operations

BST Sequence of Operations Splay Trees Problems with BSTs Because the shape of a BST is determied by the order that data is iserted, we ru the risk of trees that are essetially lists 12 21 20 32 24 37 15 40 55 56 77 2 BST Sequece

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

Architectural styles for software systems The client-server style

Architectural styles for software systems The client-server style Architectural styles for software systems The cliet-server style Prof. Paolo Ciacarii Software Architecture CdL M Iformatica Uiversità di Bologa Ageda Cliet server style CS two tiers CS three tiers CS

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

Homework 1 Solutions MA 522 Fall 2017

Homework 1 Solutions MA 522 Fall 2017 Homework 1 Solutios MA 5 Fall 017 1. Cosider the searchig problem: Iput A sequece of umbers A = [a 1,..., a ] ad a value v. Output A idex i such that v = A[i] or the special value NIL if v does ot appear

More information

Exact Minimum Lower Bound Algorithm for Traveling Salesman Problem

Exact Minimum Lower Bound Algorithm for Traveling Salesman Problem Exact Miimum Lower Boud Algorithm for Travelig Salesma Problem Mohamed Eleiche GeoTiba Systems mohamed.eleiche@gmail.com Abstract The miimum-travel-cost algorithm is a dyamic programmig algorithm to compute

More information

IMP: Superposer Integrated Morphometrics Package Superposition Tool

IMP: Superposer Integrated Morphometrics Package Superposition Tool IMP: Superposer Itegrated Morphometrics Package Superpositio Tool Programmig by: David Lieber ( 03) Caisius College 200 Mai St. Buffalo, NY 4208 Cocept by: H. David Sheets, Dept. of Physics, Caisius College

More information

CMSC 331 First Midterm Exam

CMSC 331 First Midterm Exam 0 00/ 1 20/ 2 05/ 3 15/ 4 15/ 5 15/ 6 20/ 7 30/ 8 30/ 150/ 331 First Midterm Exm 7 October 2003 CMC 331 First Midterm Exm Nme: mple Answers tudent ID#: You will hve seventy-five (75) minutes to complete

More information

520 Principles of Programming Languages. Memory Management. Memory Management... 35: Garbage Collection

520 Principles of Programming Languages. Memory Management. Memory Management... 35: Garbage Collection Dynmic Memory Mngement 50 Principles of Progrmming Lnguges 35: Grbge Collection Christin Collberg collberg@cs.rizon.edu Deprtment of Computer Science University of Arizon The run-time system linked in

More information