This Unit: Dynamic Scheduling. Can Hardware Overcome These Limits? Scheduling: Compiler or Hardware. The Problem With In-Order Pipelines

Size: px
Start display at page:

Download "This Unit: Dynamic Scheduling. Can Hardware Overcome These Limits? Scheduling: Compiler or Hardware. The Problem With In-Order Pipelines"

Transcription

1 This Uit: Damic Schedulig CSE 0 Computer Sstems Architecture Damic Schedulig Slides origiall developed b Drew Hilto (IBM) ad Milo Marti (Uiversit of Peslvaia) App App App Sstem software Mem CPU I/O Code schedulig To reduce pipelie stalls To icrease ILP (is level parallelism) Two approaches to schedulig Last Uit: Static schedulig b the compiler This Uit: Damic schedulig b the hardware Schedulig: Compiler or Hardware Compiler + Potetiall large schedulig scope (full program) + Simple hardware fast clock, short pipelie, ad low power Low brach predictio accurac (profilig?) Little iformatio o memor depedeces (profilig?) Ca t damicall respod to cache misses Pai to speculate ad recover from mis-speculatio (h/w support?) Hardware + High brach predictio accurac + Damic iformatio about memor depedeces + Ca respod to cache misses + Eas to speculate ad recover from mis-speculatio Fiite bufferig resources fudametall limit schedulig scope Schedulig machier adds pipelie stages ad cosumes power Ca Hardware Overcome These Limits? Damicall-scheduled processors Also called out-of-order processors Hardware re-schedules iss withi a slidig widow of VoNeuma iss As with pipeliig ad superscalar, ISA uchaged Same hardware/software iterface, appearace of i-order Icreases schedulig scope Does loop urollig trasparetl Uses brach predictio to uroll braches Examples: Petium Pro/II/III (-wide), Core (-wide), Alpha (-wide), MIPS R0000 (-wide), Power (-wide) Basic overview of approach The Problem With I-Order Pipelies 9 0 addf f0,f f F D E+ E+ E+ W mulf f,f f F d* d* D E*E*E*E*E*W subf f0,f f F p* p* D E+ E+ E+ W What s happeig i ccle? mulf stalls due to data depedece OK, this is a fudametal problem subf stalls due to pipelie hazard Wh? subf ca t proceed ito D because mulf is there That is the ol reaso, ad it is t a fudametal oe Maitaiig i-order writes to reg. file (both write f) Wh ca t subf go ito D i ccle ad E+ i ccle? A Word About Data Hazards Real is sequeces pass values via registers/memor Three kids of data depedeces (where s the fourth?) Read-after-write (RAW) True-depedece R E G M E M add r,r r sub r,r r or r,r r st r [r] ld[r] r Write-after-read (WAR) Ati-depedece add r,r r sub r,r r or r,r r ld[r] r st r [r] Write-after-write (WAW) Output-depedece add r,r r sub r,r r or r,r r st r [r] st r [r] Ol oe depedece betwee a two iss (RAW has priorit) Focus o RAW depedeces WAR ad WAW: less commo, just bad amig luck Elimiated b usig ew register ames, (ca t reame memor!)

2 Fid the RAW, WAR, ad WAW depedeces add r r, r sub r r, r ad r r, r xor r0 r, r or r r0, r mult r r0, r Raw iss: Code Example True Depedecies add r,r r sub r,r r mul r,r r div r, r False Depedecies add r,r r sub r,r r mul r,r r div r, r True (real) & False (artificial) depedecies Divide is idepedet of subtract ad multipl iss Ca execute i parallel with subtract Ma registers re-used Just as i static schedulig, the register ames get i the wa How does the hardware get aroud this? Approach: (step #) reame registers, (step #) schedule 9 Step #: Register Reamig To elimiate register coflicts/hazards Architected vs. Phsical registers level of idirectio Names: r,r,r Locatios: p,p,p,p,p,p, Origial mappig: r p, r p, r p, p are available MapTable FreeList r r r p p p p,p,p, p p p p p p p p p p p p,p, p, add r,r,r sub r,r,r mul r,r,r div r,,r add p,p,p sub p,p,p mul p,p,p div p,, Reamig: coceptuall write each register oce + Removes false depedeces +Leaves true depedeces itact! Whe to reuse a phsical register? After overwritig is doe I$ B P Step #: Damic Schedulig D add p,p,p sub p,p,p mul p,p,p div p,, is buffer regfile Read Table P P P P P P Yes Yes add p,p,p Yes Yes Yes sub p,p,p ad div p,, Yes Yes Yes Yes Yes mul p,p,p Yes Yes Yes Yes Yes Yes Istructios fetch/decoded/reamed ito Istructio Buffer AKA istructio widow or istructio scheduler Istructios (coceptuall) check read bits ever ccle Execute whe read S D$ 0 Out-of-order Pipelie Buffer of istructios Fetch Decode Reame Dispatch Issue Reg-read Execute Writeback Commit I-order frot ed Out-of-order executio REGISTER RENAMING

3 Register Reamig Algorithm Data structures: maptable[architectural_reg] phsical_reg Free list: get/put free register Algorithm: at decode for each istructio: is.phs_iput = maptable[is.arch_iput] is.phs_iput = maptable[is.arch_iput] is.phs_to_free = maptable[arch_output] ew_reg = get_free_phs_reg() is.phs_output = ew_reg maptable[arch_output] = ew_reg At commit Oce all older istructios have committed, free register put_free_phs_reg(is.phs_to_free) xor r, r r sub r, r r addi r, r r r r r r p p p p p p p0 xor r, r r sub r, r r addi r, r xor p, p xor r, r r sub r, r r addi r, r xor p, p p r p r p r p r p p p0 r p r p r p r p p p0 xor r, r r sub r, r r addi r, r xor p, p p xor r, r r sub r, r r addi r, r xor p, p p add p, p r p r p r p r p p0 r p r p r p r p p0 9

4 xor r, r r sub r, r r addi r, r xor p, p p xor r, r r sub r, r r addi r, r xor p, p p r p r p r p r p p0 r p r p r p r p0 0 xor r, r r sub r, r r addi r, r xor p, p p sub p, p xor r, r r sub r, r r addi r, r xor p, p p sub p, p r p r p r p r p0 r p r p r p r p0 xor r, r r sub r, r r addi r, r xor p, p p sub p, p xor r, r r sub r, r r addi r, r xor p, p p sub p, p addi, r p r p r r p0 r p r p r r p0

5 xor r, r r sub r, r r addi r, r xor p, p p sub p, p addi, xor r, r r sub r, r r addi r, r xor p, p p sub p, p addi, r p r p r r p0 r r p r r p0 Out-of-order Pipelie Buffer of istructios Fetch Decode Reame Dispatch Issue Reg-read Execute Writeback Commit DYNAMIC SCHEDULING Have uique register ames Now put ito ooo executio structures 9 Dispatch Reamed istructios ito ooo structures Re-order buffer (ROB) Holds all istructios util the commit Issue Queue U-executed istructios Cetral piece of schedulig logic Cotet Addressable Memor (CAM) (more later) Issue Queue Holds u-executed istructios Tracks read iputs Phsical register ames + read bit AND to tell if read Is Ip R Ip R Dst Age Read? 0

6 Dispatch Steps Allocate IQ slot Full? Stall Read read bits of iputs Table -bit per preg Clear read bit of output i table Istructio has ot produced value et Write data i IQ slot xor p, p p sub p, p addi, Dispatch Example Issue Queue Is Ip R Ip R Dst Age Read bits p p p p p p Dispatch Example Dispatch Example xor p, p p sub p, p addi, Read bits p p xor p, p p sub p, p addi, Read bits p p Issue Queue Is Ip R Ip R Dst Age xor p p p 0 p p p p Issue Queue Is Ip R Ip R Dst Age xor p p p 0 add p p p p p p Dispatch Example Dispatch Example xor p, p p sub p, p addi, Read bits p p xor p, p p sub p, p addi, Read bits p p Issue Queue Is Ip R Ip R Dst Age xor p p p 0 add p p sub p p p p p p Issue Queue Is Ip R Ip R Dst Age xor p p p 0 add p p sub p p addi --- p p p p

7 Executio (ooo) stages Select read istructios Sed for executio Wakeup depedets Out-of-order pipelie Issue Reg-read Execute Writeback Damic Schedulig/Issue Algorithm Data structures: Read table[phs_reg] es/o queue) (part of issue Algorithm at schedule stage (prior to read registers): foreach istructio: if table[is.phs_iput] read && table[is.phs_iput] read the is is read select the oldest read istructio table[is.phs_output] = read 9 Issue = Select + Wakeup Select N oldest, read istructios N=, xor N=, xor ad sub Note: ma have executio resource costraits: i.e., load/store/fp Is Ip R Ip R Dst Age xor p p p 0 add p p sub p p addi --- Read! Read! Issue = Select + Wakeup Wakeup depedet istructios CAM search for Dst i iputs Set read Also update read-bit table for future istructios Is Ip R Ip R Dst Age xor p p p 0 add p p sub p p addi --- Read bits p p p p p p 0 Select/Wakeup oe ccle Depedets go back to back Next ccle: add/addi are read: Issue Is Ip R Ip R Dst Age add p p addi --- Register Read Whe do istructios read the register file? Optio #: after select, right before execute (Not doe at decode) Read phsical register (reamed) Or get value via bpassig (based o phsical register ame) This is Petium, MIPS R0k, Alpha stle Phsical register file ma be large Multi-ccle read Optio #: as part of issue, keep values i Issue Queue Petium Pro, Core, Core i

8 OOO executio (-wide) OOO executio (-wide) xor RDY add sub RDY addi p p p p 9 p p xor add RDY sub addi RDY xor p, p p sub p, p p p p p 9 p p OOO executio (-wide) OOO executio (-wide) xor add sub addi add p, p addi, p p p p 9 p p xor, p sub xor add sub addi p p p p 9 p p add _, 9 addi _, p 0 OOO executio (-wide) OOO executio (-wide) p p xor add sub addi p p p 9 p p 0 0 xor add sub addi p p p 9 p p

9 Note similarit to i-order OOO executio (-wide) p p p p 9 p p Multi-ccle operatios Multi-ccle ops (load, fp, multipl, etc.) Wakeup deferred a few ccles Structural hazard? Cache misses? Speculative wake-up (assume hit) Cacel exec of depedets Re-issue later Details: complicated, ot importat Re-order Buffer (ROB) All istructios i order Two purposes Mispredictio recover I-order commit Maitai appearace of i-order executio Freeig of phsical registers RENAMING REVISITED Reamig revisited Overwritte register Freed at commit Restore i map table o recover Brach mis-predictio recover Also must be read at reame xor r,r r add r,r r sub r,r r addi r, r r p r p r p r p p p0 9

10 xor r,r r xor p, p [p] add r,r r sub r,r r addi r, r xor r,r r xor p, p p [p] add r,r r sub r,r r addi r, r r p r p r p r p p p0 r p r p r p r p p0 0 xor r,r r xor p, p p [p] add r,r r add p, p [p] sub r,r r addi r, r xor r,r r xor p, p p [p] add r,r r [p] sub r,r r addi r, r r p r p r p r p p0 r p r p r p r p0 xor r,r r xor p, p p [p] add r,r r sub r,r r sub p, p [p] [p] addi r, r xor r,r r xor p, p p [p] add r,r r sub r,r r sub p, p [p] [p] addi r, r r p r p r p r p0 r p r p r r p0

11 xor r,r r xor p, p p [p] add r,r r sub r,r r addi r, r sub p, p addi, [p] [p] [p] xor r,r r xor p, p p [p] add r,r r sub r,r r addi r, r sub p, p addi, [p] [p] [p] r p r p r r p0 r r p r r p0 ROB ROB etr holds all ifo for recover/commit Logical register ames Phsical register ames Istructio tpes Dispatch: isert at tail Full? Stall Commit: remove from head Not completed? Stall Recover Completel remove wrog path istructios Flush from IQ Remove from ROB Restore map table to before mispredictio Free destiatio registers 9 Recover example bz r loop bz p, loop [ ] xor r, r r xor p, p p [p] sub r, r r addi r, r sub p, p addi, [p] [p] [p] Recover example bz r loop bz p, loop [ ] xor r, r r xor p, p p [p] sub r, r r addi r, r sub p, p addi, [p] [p] [p] r r p r r p0 r p r p r r p0 0

12 Recover example bz r loop bz p, loop [ ] xor r, r r xor p, p p [p] sub r, r r sub p, p [p] [p] Recover example bz r loop bz p, loop [ ] xor r, r r xor p, p p [p] [p] r p r p r p r p0 r p r p r p r p p0 bz r loop xor r, r r Recover example bz p, loop xor p, p p [ ] [p] Recover example bz r loop bz p, loop [ ] r p r p r p r p p p0 r p r p r p r p p p0 What about stores Stores: Write D$, ot registers Ca we reame memor? Recover i the cache? No (at least ot easil) Cache writes urecoverable Stores: ol whe certai Commit Commit xor r, r r xor p, p p [p] sub r, r r addi r, r sub p, p addi, [p] [p] [p] At commit: istructio becomes architected state I order Ol whe istructios are fiished Free overwritte register (wh?)

13 xor r,r r add r,r r sub r,r r addi r, r Freeig over-writte register xor p, p p sub p, p addi, [p] [p] [p] [p] Commit Example xor r,r r xor p, p p [p] add r,r r sub r,r r addi r, r sub p, p addi, [p] [p] [p] Before xor: r p After xor: r p Iss older tha xor reads p Iss ouger tha xor read p (util ext r-writig istructio) At commit of xor, o older istructios exist No oe else eeds p free it! r r p r r p0 9 Commit Example xor r,r r add r,r r sub r,r r addi r, r xor p, p p sub p, p addi, [p] [p] [p] [p] Commit Example add r,r r sub r,r r addi r, r sub p, p addi, [p] [p] [p] r r r r r p p p0 p r r r r r p p p0 p p 0 Commit Example Commit Example sub r,r r addi r, r sub p, p addi, [p] [p] addi r, r addi, [p] r r r r r p p p0 p p p r r r r r p p p0 p p p p

14 Out of order pipelie diagrams Stadard stle: large ad cumbersome Chage laout slightl Colums = stages (dispatch, issue, etc.) Rows = istructios Cotet of boxes = ccles For our purposes: issue/exec = ccle Igore preg read latec, etc. Load-use, mul, div, ad FP loger Out of order pipelie diagrams Istructio ld [p] p add p, p p xor p, p p ld [] Buffer of istructios Fetch Decode Reame Dispatch Issue Reg-read Execute Writeback Commit Out of order pipelie diagrams Out of order pipelie diagrams Istructio Istructio ld [p] p add p, p p xor p, p p ld [] ld [p] p add p, p p xor p, p p ld [] -wide Ifiite ROB, IQ, Pregs Loads: ccles Ccle : Dispatch xor ad ld Out of order pipelie diagrams Out of order pipelie diagrams Istructio Istructio ld [p] p ld [p] p add p, p p add p, p p xor p, p p xor p, p p ld [] ld [] Ccle : Dispatch xor ad ld st Ld issues -- also ote WB ccle while ou do this (Note: do t issue if WB ports full) Ccle : add ad xor are ot read d load is issue it 9

15 Out of order pipelie diagrams Out of order pipelie diagrams Istructio Istructio ld [p] p ld [p] p add p, p p add p, p p xor p, p p xor p, p p ld [] ld [] Ccle : othig Ccle : add ca issue Ccle : st load ca commit (oldest istructio & fiished) xor ca issue 90 9 Out of order pipelie diagrams Out of order pipelie diagrams Istructio Istructio ld [p] p ld [p] p add p, p p add p, p p xor p, p p xor p, p p ld [] ld [] Ccle : add ca commit (oldest istructio & fiished) Ccle : xor ad ld ca commit (-wide: ca do both at oce) 9 9 Out of order pipelie diagrams Istructio ld [p] p add p, p p xor p, p p ld [] Buffer of istructios HANDLING MEMORY OPS Fetch Decode Reame Dispatch Issue Reg-read Execute Writeback Commit 9 9

16 Damicall Schedulig Memor Ops Compilers must schedule memor ops coservativel Optios for hardware: Hold loads util all prior stores execute (coservative) Execute loads as soo as possible, detect violatios (aggressive) Whe a store executes, it checks if a later loads executed too earl (to same address). If so, flush pipelie Lear violatios over time, selectivel reorder (predictive) Before Wrog(?) ld r,(sp) ld r,(sp) ld r,(sp) ld r,(sp) add r,r,r //stall ld r,0(r) //does rsp? st r,0(sp) add r,r,r ld r,0(r) ld r,(r) //does r+sp? ld r,(r) st r,0(sp) sub r,r,r //stall sub r,r,r st r,(r) st r,(r) 9 Loads ad Stores Istructio fdiv p,p p st p [p] st p [p] ld [] Ccle : Ca ld[] execute? (wh or wh ot?) 9 Loads ad Stores Loads ad Stores Istructio Istructio fdiv p,p p fdiv p,p p st p [p] st p [p] st p [p] st p [p] ld [] ld [] Aliasig (agai) p? p? Suppose p ad p!= Ca ld[] execute? (wh or wh ot?) 9 99 Memor Forwardig Stores write cache at commit Commit is i-order, delaed b all istructios Allows stores to be udoe o brach mis-predictios, etc. Loads read cache Earl executio of loads is critical Forwardig Allow store load commuicatio before store commit Coceptuall like reg. bpassig, but differet implemetatio Wh? Addresses ukow util execute Forwardig: Store Queue Store Queue Holds all i-flight stores CAM: searchable b address Age logic: determie ougest matchig store older tha load Store executio Write Store Queue Address + Data Load executio Search SQ Match? Forward Read D$ address address load positio Store Queue (SQ) age Data cache data i value data out head tail 00 0

17 Load schedulig Store Load Forwardig: Get value from executed (but ot comitted) store to load Load Schedulig: Determie whe load ca execute with regard to older stores Coservative load schedulig: All older stores have executed Some architectures: split store address / store data Ol require kow address Advatage: alwas safe Disadvatage: performace (limits out-of-orderess) ld [r] r ld [r] r add r,r r st r [r] ld [r] r ld [r] r add r,r r st r [r] // loop cotrol here With coservative load schedulig, what ca go out of order? 0 0 ld [p] p ld [p] p ld [p] p ld [p] p add p,p add p,p st [p] st [p] ld [p] ld [p] ld [p] ld [p] add, p add, p st p [p] st p [p] wide, coservative schedulig issue load per ccle loads take ccles to complete Ccle : Dispatch iss #, # wide, coservative schedulig issue load per ccle loads take ccles to complete Ccle : Wh do t we issue #? 0 0 ld [p] p ld [p] p ld [p] p ld [p] p add p,p add p,p st [p] st [p] ld [p] ld [p] ld [p] ld [p] add, p add, p st p [p] st p [p] wide, coservative schedulig issue load per ccle loads take ccles to complete Ccle : Wh do t we issue #? Wh do t we issue #? wide, coservative schedulig issue load per ccle loads take ccles to complete Ccle : Wh do t we issue #? 0 0

18 ld [p] p ld [p] p ld [p] p ld [p] p add p,p add p,p st [p] st [p] ld [p] ld [p] ld [p] ld [p] add, p add, p st p [p] st p [p] wide, coservative schedulig issue load per ccle loads take ccles to complete Ccle : Fiall some actio! wide, coservative schedulig issue load per ccle loads take ccles to complete Ccle : Gettig somewhere ld [p] p ld [p] p ld [p] p ld [p] p add p,p add p,p st [p] st [p] 9 ld [p] ld [p] ld [p] ld [p] 9 add, p add, p st p [p] st p [p] wide, coservative schedulig issue load per ccle loads take ccles to complete Ccle : Etc... wide, coservative schedulig issue load per ccle loads take ccles to complete Ccle 9: Etc... 0 ld [p] p ld [p] p ld [p] p ld [p] p add p,p add p,p st [p] 9 st [p] 9 ld [p] ld [p] ld [p] 9 ld [p] 9 add, p add, p st p [p] st p [p] wide, coservative schedulig issue load per ccle loads take ccles to complete Ccle : Yaw wide, coservative schedulig issue load per ccle loads take ccles to complete Ccle : Stretch

19 ld [p] p ld [p] p ld [p] p ld [p] p add p,p add p,p st [p] 9 st [p] 9 ld [p] ld [p] ld [p] 9 ld [p] 9 add, p add, p st p [p] st p [p] wide, coservative schedulig issue load per ccle loads take ccles to complete Ccle : Zzzzzz wide, coservative schedulig issue load per ccle loads take ccles to complete Ccle : -wide ooo = -wide iorder I am goig to cr. ld [p] p ld [p] p add p,p st [p] 9 ld [p] ld [p] 9 add, p st p [p] Load Speculatio Speculatio requires two thigs.. Detectio of mis-speculatios How ca we do this? Recover from mis-speculatios Squash from offedig load Saw how to squash from braches: same method wide, coservative schedulig issue load per ccle loads take ccles to complete What was # waitig for?? Ca I speculate? Load Queue flush? Detects ld orderig violatios store positio Execute load: write addr to LQ load queue (LQ) Also ote a store forwarded from head address Execute store: search LQ Youger load with same age addr? tail Did t forward from ouger store? Data Cache SQ head tail Store Queue + Load Queue Store Queue: hadles forwardig Writte b stores (@ execute) Searched b loads (@ execute) Read SQ whe ou write to the data cache (@ commit) Load Queue: detects orderig violatios Writte b loads (@ execute) Searched b stores (@ execute) Both together Allows aggressive load schedulig Stores do t costrai load executio 9

20 ld [p] p ld [p] p ld [p] p ld [p] p add p,p add p,p st [p] st [p] ld [p] ld [p] ld [p] ld [p] add, p add, p st p [p] st p [p] wide, aggressive schedulig issue load per ccle loads take ccles to complete Ccle : Speculativel execute # before the store (#). wide, aggressive schedulig issue load per ccle loads take ccles to complete Ccle : Speculativel execute # before the store (#). 0 ld [p] p ld [p] p add p,p st [p] 9 ld [p] 9 ld [p] 0 add, p 9 0 st p [p] 9 0 wide, aggressive schedulig issue load per ccle loads take ccles to complete Fast forward: ccles faster Actuall ooo this time! Aggressive Load Schedulig Allows loads to issue before older stores Icreases out-of-orderess + Whe o coflict, icreases performace - Coflict squash worse performace tha waitig Some loads might forward from stores Alwas aggressive will squash a lot Ca we have our cake AND eat it too? Predictive Load Schedulig Predict which loads must wait for stores Fool me oce, shame o ou fool me twice? Loads default to aggressive Keep table of load PCs that have bee caused squashes Schedule these coservativel + Simple predictor Makes bad loads wait for all older stores: ot great More complex predictors used i practice Predict which stores loads should wait for Out of Order: Widow Size Schedulig scope = ooo widow size Larger = better Costraied b phsical registers (#preg) ROB roughl limited b #preg = ROB size + #logical registers Big register file = hard/slow Costraied b issue queue Limits umber of u-executed istructios CAM = ca t make big (power + area) Costraied b load + store queues Limit umber of loads/stores CAMs Active area of research: scalig widow sizes Usefuless of large widow: limited b brach predictio 9% brach mis-predictio rate: i 0 braches, i 00 iss

21 Out of Order: Beefits Allows speculative re-orderig Loads / stores Brach predictio Schedule ca chage due to cache misses Differet schedule optimal from o cache hit Doe b hardware Compiler ma wat differet schedule for differet hw cofigs Hardware has ol its ow cofiguratio to deal with Static vs. Damic Schedulig If we ca do this i software wh build complex (slow-clock, high-power) hardware? + Performace portabilit Do t wat to recompile for ew machies + More iformatio available Memor addresses, brach directios, cache misses + More registers available Compiler ma ot have eough to schedule well + Speculative memor operatio re-orderig Compiler must be coservative, hardware ca speculate But compiler has a larger scope Compiler does as much as it ca (ot much) Hardware does the rest Out of Order: Top Thigs to Kow Register reamig How to perform it ad how to recover it Commit Precise state (ROB) How/whe registers are freed Issue/Select Wakeup: CAM Choose N oldest read istructios Stores Write at commit Forward to loads via SQ Loads Coservative/aggressive/predictive schedulig Violatio detectio via LQ Summar: Damic Schedulig Damic schedulig Totall i the hardware Also called out-of-order executio (OoO) Fetch ma istructios ito istructio widow Use brach predictio to speculate past (multiple) braches Flush pipelie o brach mispredictio Reame to avoid false depedecies Execute istructios as soo as possible Register depedecies are kow Hadlig memor depedecies more trick Commit istructios i order Athig strage happes pre-commit, just flush the pipelie Curret machies: 00+ istructio schedulig widow 9

Issue = Select + Wakeup. Out-of-order Pipeline. Issue. Issue = Select + Wakeup. OOO execution (2-wide) OOO execution (2-wide)

Issue = Select + Wakeup. Out-of-order Pipeline. Issue. Issue = Select + Wakeup. OOO execution (2-wide) OOO execution (2-wide) Out-of-order Pipeline Buffer of instructions Issue = Select + Wakeup Select N oldest, read instructions N=, xor N=, xor and sub Note: ma have execution resource constraints: i.e., load/store/fp Fetch Decode

More information

This Unit: Scheduling (Static + Dynamic) CIS 501 Computer Architecture. Readings. Review Example

This Unit: Scheduling (Static + Dynamic) CIS 501 Computer Architecture. Readings. Review Example This Unit: Scheduling (Static + Dnamic) CIS 50 Computer Architecture Unit 8: Static and Dnamic Scheduling Application OS Compiler Firmware CPU I/O Memor Digital Circuits Gates & Transistors! Previousl:!

More information

EE 660: Computer Architecture Out-of-Order Processors

EE 660: Computer Architecture Out-of-Order Processors EE 660: Computer Architecture Out-of-Order Processors Yao Zheng Department of Electrical Engineering University of Hawaiʻi at Mānoa Based on the slides of Prof. David entzlaff Agenda I4 Processors I2O2

More information

Chapter 9 Computer Design Basics

Chapter 9 Computer Design Basics Logic ad Computer Desig Fudametals Chapter 9 Computer Desig Basics Part 1 Datapaths Overview Part 1 Datapaths Itroductio Datapath Example Arithmetic Logic Uit (ALU) Shifter Datapath Represetatio Cotrol

More information

CSCI-564 Advanced Computer Architecture

CSCI-564 Advanced Computer Architecture CSCI-564 Advanced Computer Architecture Lecture 8: Handling Exceptions and Interrupts / Superscalar Bo Wu Colorado School of Mines Branch Delay Slots (expose control hazard to software) Change the ISA

More information

Chapter 9 Computer Design Basics

Chapter 9 Computer Design Basics Logic ad Computer Desig Fudametals Chapter 9 Computer Desig asics Part Datapaths Charles Kime & Thomas Kamiski 008 Pearso Educatio, Ic. (Hyperliks are active i View Show mode) Overview Part Datapaths Itroductio

More information

CMP N 301 Computer Architecture. Appendix C

CMP N 301 Computer Architecture. Appendix C CMP N 301 Computer Architecture Appendix C Outline Introduction Pipelining Hazards Pipelining Implementation Exception Handling Advanced Issues (Dynamic Scheduling, Out of order Issue, Superscalar, etc)

More information

Scalable Store-Load Forwarding via Store Queue Index Prediction

Scalable Store-Load Forwarding via Store Queue Index Prediction Scalable Store-Load Forwarding via Store Queue Index Prediction Tingting Sha, Milo M.K. Martin, Amir Roth University of Pennsylvania {shatingt, milom, amir}@cis.upenn.edu addr addr addr (CAM) predictor

More information

NUMERICAL METHODS FOR SOLVING EQUATIONS

NUMERICAL METHODS FOR SOLVING EQUATIONS Mathematics Revisio Guides Numerical Methods for Solvig Equatios Page 1 of 11 M.K. HOME TUITION Mathematics Revisio Guides Level: GCSE Higher Tier NUMERICAL METHODS FOR SOLVING EQUATIONS Versio:. Date:

More information

OPTIMAL ALGORITHMS -- SUPPLEMENTAL NOTES

OPTIMAL ALGORITHMS -- SUPPLEMENTAL NOTES OPTIMAL ALGORITHMS -- SUPPLEMENTAL NOTES Peter M. Maurer Why Hashig is θ(). As i biary search, hashig assumes that keys are stored i a array which is idexed by a iteger. However, hashig attempts to bypass

More information

ICS 233 Computer Architecture & Assembly Language

ICS 233 Computer Architecture & Assembly Language ICS 233 Computer Architecture & Assembly Language Assignment 6 Solution 1. Identify all of the RAW data dependencies in the following code. Which dependencies are data hazards that will be resolved by

More information

Department of Electrical and Computer Engineering University of Wisconsin - Madison. ECE/CS 752 Advanced Computer Architecture I.

Department of Electrical and Computer Engineering University of Wisconsin - Madison. ECE/CS 752 Advanced Computer Architecture I. Last (family) name: Solution First (given) name: Student I.D. #: Department of Electrical and Computer Engineering University of Wisconsin - Madison ECE/CS 752 Advanced Computer Architecture I Midterm

More information

CPSC 3300 Spring 2017 Exam 2

CPSC 3300 Spring 2017 Exam 2 CPSC 3300 Spring 2017 Exam 2 Name: 1. Matching. Write the correct term from the list into each blank. (2 pts. each) structural hazard EPIC forwarding precise exception hardwired load-use data hazard VLIW

More information

Unit 6: Branch Prediction

Unit 6: Branch Prediction CIS 501: Computer Architecture Unit 6: Branch Prediction Slides developed by Joe Devie/, Milo Mar4n & Amir Roth at Upenn with sources that included University of Wisconsin slides by Mark Hill, Guri Sohi,

More information

U8L1: Sec Equations of Lines in R 2

U8L1: Sec Equations of Lines in R 2 MCVU U8L: Sec. 8.9. Equatios of Lies i R Review of Equatios of a Straight Lie (-D) Cosider the lie passig through A (-,) with slope, as show i the diagram below. I poit slope form, the equatio of the lie

More information

6.3 Testing Series With Positive Terms

6.3 Testing Series With Positive Terms 6.3. TESTING SERIES WITH POSITIVE TERMS 307 6.3 Testig Series With Positive Terms 6.3. Review of what is kow up to ow I theory, testig a series a i for covergece amouts to fidig the i= sequece of partial

More information

INTEGRATION BY PARTS (TABLE METHOD)

INTEGRATION BY PARTS (TABLE METHOD) INTEGRATION BY PARTS (TABLE METHOD) Suppose you wat to evaluate cos d usig itegratio by parts. Usig the u dv otatio, we get So, u dv d cos du d v si cos d si si d or si si d We see that it is ecessary

More information

Load. Load. Load 1 0 MUX B. MB select. Bus A. A B n H select S 2:0 C S. G select 4 V C N Z. unit (ALU) G. Zero Detect.

Load. Load. Load 1 0 MUX B. MB select. Bus A. A B n H select S 2:0 C S. G select 4 V C N Z. unit (ALU) G. Zero Detect. 9- Write D data Load eable A address A select B address B select Load R 2 2 Load Load R R2 UX 2 3 UX 2 3 2 3 Decoder D address 2 Costat i Destiatio select 28 Pearso Educatio, Ic.. orris ao & Charles R.

More information

Data Structures and Algorithm. Xiaoqing Zheng

Data Structures and Algorithm. Xiaoqing Zheng Data Structures ad Algorithm Xiaoqig Zheg zhegxq@fudaeduc What are algorithms? A sequece of computatioal steps that trasform the iput ito the output Sortig problem: Iput: A sequece of umbers

More information

Design and Analysis of ALGORITHM (Topic 2)

Design and Analysis of ALGORITHM (Topic 2) DR. Gatot F. Hertoo, MSc. Desig ad Aalysis of ALGORITHM (Topic 2) Algorithms + Data Structures = Programs Lessos Leared 1 Our Machie Model: Assumptios Geeric Radom Access Machie (RAM) Executes operatios

More information

Skip Lists. Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015 S 3 S S 1

Skip Lists. Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015 S 3 S S 1 Presetatio for use with the textbook, Algorithm Desig ad Applicatios, by M. T. Goodrich ad R. Tamassia, Wiley, 2015 Skip Lists S 3 15 15 23 10 15 23 36 Skip Lists 1 What is a Skip List A skip list for

More information

Parallel Vector Algorithms David A. Padua

Parallel Vector Algorithms David A. Padua Parallel Vector Algorithms 1 of 32 Itroductio Next, we study several algorithms where parallelism ca be easily expressed i terms of array operatios. We will use Fortra 90 to represet these algorithms.

More information

Chapter 2: Numerical Methods

Chapter 2: Numerical Methods Chapter : Numerical Methods. Some Numerical Methods for st Order ODEs I this sectio, a summar of essetial features of umerical methods related to solutios of ordiar differetial equatios is give. I geeral,

More information

U8L1: Sec Equations of Lines in R 2

U8L1: Sec Equations of Lines in R 2 MCVU Thursda Ma, Review of Equatios of a Straight Lie (-D) U8L Sec. 8.9. Equatios of Lies i R Cosider the lie passig through A (-,) with slope, as show i the diagram below. I poit slope form, the equatio

More information

CS161 Design and Analysis of Algorithms. Administrative

CS161 Design and Analysis of Algorithms. Administrative CS161 Desig ad Aalysis of Algorithms Da Boeh 1 Admiistrative Lecture 1, April 3, 1 Web page http://theory.staford.edu/~dabo/cs161» Hadouts» Aoucemets» Late breakig ews Gradig ad course requiremets» Midterm/fial/hw»

More information

CSE. 1. In following code. addi. r1, skip1 xor in r2. r3, skip2. counter r4, top. taken): PC1: PC2: PC3: TTTTTT TTTTTT

CSE. 1. In following code. addi. r1, skip1 xor in r2. r3, skip2. counter r4, top. taken): PC1: PC2: PC3: TTTTTT TTTTTT CSE 560 Practice Problem Set 4 Solution 1. In this question, you will examine several different schemes for branch prediction, using the following code sequence for a simple load store ISA with no branch

More information

PH 425 Quantum Measurement and Spin Winter SPINS Lab 1

PH 425 Quantum Measurement and Spin Winter SPINS Lab 1 PH 425 Quatum Measuremet ad Spi Witer 23 SPIS Lab Measure the spi projectio S z alog the z-axis This is the experimet that is ready to go whe you start the program, as show below Each atom is measured

More information

10-701/ Machine Learning Mid-term Exam Solution

10-701/ Machine Learning Mid-term Exam Solution 0-70/5-78 Machie Learig Mid-term Exam Solutio Your Name: Your Adrew ID: True or False (Give oe setece explaatio) (20%). (F) For a cotiuous radom variable x ad its probability distributio fuctio p(x), it

More information

Chapter 18 Summary Sampling Distribution Models

Chapter 18 Summary Sampling Distribution Models Uit 5 Itroductio to Iferece Chapter 18 Summary Samplig Distributio Models What have we leared? Sample proportios ad meas will vary from sample to sample that s samplig error (samplig variability). Samplig

More information

Design and Analysis of Algorithms

Design and Analysis of Algorithms Desig ad Aalysis of Algorithms Probabilistic aalysis ad Radomized algorithms Referece: CLRS Chapter 5 Topics: Hirig problem Idicatio radom variables Radomized algorithms Huo Hogwei 1 The hirig problem

More information

4.3 Growth Rates of Solutions to Recurrences

4.3 Growth Rates of Solutions to Recurrences 4.3. GROWTH RATES OF SOLUTIONS TO RECURRENCES 81 4.3 Growth Rates of Solutios to Recurreces 4.3.1 Divide ad Coquer Algorithms Oe of the most basic ad powerful algorithmic techiques is divide ad coquer.

More information

October 25, 2018 BIM 105 Probability and Statistics for Biomedical Engineers 1

October 25, 2018 BIM 105 Probability and Statistics for Biomedical Engineers 1 October 25, 2018 BIM 105 Probability ad Statistics for Biomedical Egieers 1 Populatio parameters ad Sample Statistics October 25, 2018 BIM 105 Probability ad Statistics for Biomedical Egieers 2 Ifereces

More information

Oblivious Gradient Clock Synchronization

Oblivious Gradient Clock Synchronization Motivatio: Clock Sychroizatio Oblivious Gradiet Clock Sychroizatio Thomas Locher, ETH Zurich Roger Wattehofer, ETH Zurich Clock sychroizatio is a classic, importat problem! May results have bee published

More information

Once we have a sequence of numbers, the next thing to do is to sum them up. Given a sequence (a n ) n=1

Once we have a sequence of numbers, the next thing to do is to sum them up. Given a sequence (a n ) n=1 . Ifiite Series Oce we have a sequece of umbers, the ext thig to do is to sum them up. Give a sequece a be a sequece: ca we give a sesible meaig to the followig expressio? a = a a a a While summig ifiitely

More information

Goals. Discrete control concepts. History. Frederick Taylor: Chapter 5 Gunnar Lindstedt

Goals. Discrete control concepts. History. Frederick Taylor: Chapter 5 Gunnar Lindstedt Goals Discrete cotrol cocepts Chapter 5 Guar Lidstedt Goal: you should Uderstad how idustrial productio is orgaized ad the reasos why Be able to calculate a suitable productio rate ad ivetory for a certai

More information

Lecture 2: April 3, 2013

Lecture 2: April 3, 2013 TTIC/CMSC 350 Mathematical Toolkit Sprig 203 Madhur Tulsiai Lecture 2: April 3, 203 Scribe: Shubhedu Trivedi Coi tosses cotiued We retur to the coi tossig example from the last lecture agai: Example. Give,

More information

CS 332: Algorithms. Linear-Time Sorting. Order statistics. Slide credit: David Luebke (Virginia)

CS 332: Algorithms. Linear-Time Sorting. Order statistics. Slide credit: David Luebke (Virginia) 1 CS 332: Algorithms Liear-Time Sortig. Order statistics. Slide credit: David Luebke (Virgiia) Quicksort: Partitio I Words Partitio(A, p, r): Select a elemet to act as the pivot (which?) Grow two regios,

More information

Theorem: Let A n n. In this case that A does reduce to I, we search for A 1 as the solution matrix X to the matrix equation A X = I i.e.

Theorem: Let A n n. In this case that A does reduce to I, we search for A 1 as the solution matrix X to the matrix equation A X = I i.e. Theorem: Let A be a square matrix The A has a iverse matrix if ad oly if its reduced row echelo form is the idetity I this case the algorithm illustrated o the previous page will always yield the iverse

More information

Advanced Course of Algorithm Design and Analysis

Advanced Course of Algorithm Design and Analysis Differet complexity measures Advaced Course of Algorithm Desig ad Aalysis Asymptotic complexity Big-Oh otatio Properties of O otatio Aalysis of simple algorithms A algorithm may may have differet executio

More information

SECTION 1.5 : SUMMATION NOTATION + WORK WITH SEQUENCES

SECTION 1.5 : SUMMATION NOTATION + WORK WITH SEQUENCES SECTION 1.5 : SUMMATION NOTATION + WORK WITH SEQUENCES Read Sectio 1.5 (pages 5 9) Overview I Sectio 1.5 we lear to work with summatio otatio ad formulas. We will also itroduce a brief overview of sequeces,

More information

1. (2 )Clock rates have grown by a factor of 1000 while power consumed has only grown by a factor of 30. How was this accomplished?

1. (2 )Clock rates have grown by a factor of 1000 while power consumed has only grown by a factor of 30. How was this accomplished? 1. (2 )Clock rates have grown by a factor of 1000 while power consumed has only grown by a factor of 30. How was this accomplished? 2. (2 )What are the two main ways to define performance? 3. (2 )What

More information

EEO 401 Digital Signal Processing Prof. Mark Fowler

EEO 401 Digital Signal Processing Prof. Mark Fowler EEO 40 Digital Sigal Processig Prof. Mark Fowler Note Set #3 Covolutio & Impulse Respose Review Readig Assigmet: Sect. 2.3 of Proakis & Maolakis / Covolutio for LTI D-T systems We are tryig to fid y(t)

More information

Properties and Tests of Zeros of Polynomial Functions

Properties and Tests of Zeros of Polynomial Functions Properties ad Tests of Zeros of Polyomial Fuctios The Remaider ad Factor Theorems: Sythetic divisio ca be used to fid the values of polyomials i a sometimes easier way tha substitutio. This is show by

More information

Statistics 511 Additional Materials

Statistics 511 Additional Materials Cofidece Itervals o mu Statistics 511 Additioal Materials This topic officially moves us from probability to statistics. We begi to discuss makig ifereces about the populatio. Oe way to differetiate probability

More information

Fall 2011 Prof. Hyesoon Kim

Fall 2011 Prof. Hyesoon Kim Fall 2011 Prof. Hyesoon Kim Add: 2 cycles FE_stage add r1, r2, r3 FE L ID L EX L MEM L WB L add add sub r4, r1, r3 sub sub add add mul r5, r2, r3 mul sub sub add add mul sub sub add add mul sub sub add

More information

CSE 4095/5095 Topics in Big Data Analytics Spring 2017; Homework 1 Solutions

CSE 4095/5095 Topics in Big Data Analytics Spring 2017; Homework 1 Solutions CSE 09/09 Topics i ig Data Aalytics Sprig 2017; Homework 1 Solutios Note: Solutios to problems,, ad 6 are due to Marius Nicolae. 1. Cosider the followig algorithm: for i := 1 to α log e do Pick a radom

More information

ECE 3401 Lecture 23. Pipeline Design. State Table for 2-Cycle Instructions. Control Unit. ISA: Instruction Specifications (for reference)

ECE 3401 Lecture 23. Pipeline Design. State Table for 2-Cycle Instructions. Control Unit. ISA: Instruction Specifications (for reference) ECE 3401 Lecture 23 Pipeline Design Control State Register Combinational Control Logic New/ Modified Control Word ISA: Instruction Specifications (for reference) P C P C + 1 I N F I R M [ P C ] E X 0 PC

More information

CHAPTER XI DATAPATH ELEMENTS

CHAPTER XI DATAPATH ELEMENTS CHAPTER XI- CHAPTER XI CHAPTER XI READ REE-DOC ON COURSE WEBPAGE CHAPTER XI-2 INTRODUCTION -INTRODUCTION So far we have discussed may small compoets ad buildig blocks. Oe fial step i our buildig blocks

More information

II. Descriptive Statistics D. Linear Correlation and Regression. 1. Linear Correlation

II. Descriptive Statistics D. Linear Correlation and Regression. 1. Linear Correlation II. Descriptive Statistics D. Liear Correlatio ad Regressio I this sectio Liear Correlatio Cause ad Effect Liear Regressio 1. Liear Correlatio Quatifyig Liear Correlatio The Pearso product-momet correlatio

More information

Infinite Sequences and Series

Infinite Sequences and Series Chapter 6 Ifiite Sequeces ad Series 6.1 Ifiite Sequeces 6.1.1 Elemetary Cocepts Simply speakig, a sequece is a ordered list of umbers writte: {a 1, a 2, a 3,...a, a +1,...} where the elemets a i represet

More information

EE260: Digital Design, Spring n Binary Addition. n Complement forms. n Subtraction. n Multiplication. n Inputs: A 0, B 0. n Boolean equations:

EE260: Digital Design, Spring n Binary Addition. n Complement forms. n Subtraction. n Multiplication. n Inputs: A 0, B 0. n Boolean equations: EE260: Digital Desig, Sprig 2018 EE 260: Itroductio to Digital Desig Arithmetic Biary Additio Complemet forms Subtractio Multiplicatio Overview Yao Zheg Departmet of Electrical Egieerig Uiversity of Hawaiʻi

More information

Recitation 4: Lagrange Multipliers and Integration

Recitation 4: Lagrange Multipliers and Integration Math 1c TA: Padraic Bartlett Recitatio 4: Lagrage Multipliers ad Itegratio Week 4 Caltech 211 1 Radom Questio Hey! So, this radom questio is pretty tightly tied to today s lecture ad the cocept of cotet

More information

IP Reference guide for integer programming formulations.

IP Reference guide for integer programming formulations. IP Referece guide for iteger programmig formulatios. by James B. Orli for 15.053 ad 15.058 This documet is iteded as a compact (or relatively compact) guide to the formulatio of iteger programs. For more

More information

Performance, Power & Energy. ELEC8106/ELEC6102 Spring 2010 Hayden Kwok-Hay So

Performance, Power & Energy. ELEC8106/ELEC6102 Spring 2010 Hayden Kwok-Hay So Performance, Power & Energy ELEC8106/ELEC6102 Spring 2010 Hayden Kwok-Hay So Recall: Goal of this class Performance Reconfiguration Power/ Energy H. So, Sp10 Lecture 3 - ELEC8106/6102 2 PERFORMANCE EVALUATION

More information

Pipelining. Traditional Execution. CS 365 Lecture 12 Prof. Yih Huang. add ld beq CS CS 365 2

Pipelining. Traditional Execution. CS 365 Lecture 12 Prof. Yih Huang. add ld beq CS CS 365 2 Pipelining CS 365 Lecture 12 Prof. Yih Huang CS 365 1 Traditional Execution 1 2 3 4 1 2 3 4 5 1 2 3 add ld beq CS 365 2 1 Pipelined Execution 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5

More information

The Binomial Theorem

The Binomial Theorem The Biomial Theorem Robert Marti Itroductio The Biomial Theorem is used to expad biomials, that is, brackets cosistig of two distict terms The formula for the Biomial Theorem is as follows: (a + b ( k

More information

A sequence of numbers is a function whose domain is the positive integers. We can see that the sequence

A sequence of numbers is a function whose domain is the positive integers. We can see that the sequence Sequeces A sequece of umbers is a fuctio whose domai is the positive itegers. We ca see that the sequece,, 2, 2, 3, 3,... is a fuctio from the positive itegers whe we write the first sequece elemet as

More information

Recursive Computations for Discrete Random Variables

Recursive Computations for Discrete Random Variables Recursive Computatios for Discrete Radom Variables Ofte times, oe sees a problem stated like this: A machie is shut dow for repairs is a radom sample of 100 items selected from the dail output of the machie

More information

Chapter If n is odd, the median is the exact middle number If n is even, the median is the average of the two middle numbers

Chapter If n is odd, the median is the exact middle number If n is even, the median is the average of the two middle numbers Chapter 4 4-1 orth Seattle Commuity College BUS10 Busiess Statistics Chapter 4 Descriptive Statistics Summary Defiitios Cetral tedecy: The extet to which the data values group aroud a cetral value. Variatio:

More information

Computer Architecture ELEC2401 & ELEC3441

Computer Architecture ELEC2401 & ELEC3441 Last Time Pipeline Hazard Computer Architecture ELEC2401 & ELEC3441 Lecture 8 Pipelining (3) Dr. Hayden Kwok-Hay So Department of Electrical and Electronic Engineering Structural Hazard Hazard Control

More information

Problem Set # 5 Solutions

Problem Set # 5 Solutions MIT./8.4/6.898/8.435 Quatum Iformatio Sciece I Fall, 00 Sam Ocko October 5, 00 Problem Set # 5 Solutios. Most uitar trasforms are hard to approimate. (a) We are dealig with boolea fuctios that take bits

More information

t distribution [34] : used to test a mean against an hypothesized value (H 0 : µ = µ 0 ) or the difference

t distribution [34] : used to test a mean against an hypothesized value (H 0 : µ = µ 0 ) or the difference EXST30 Backgroud material Page From the textbook The Statistical Sleuth Mea [0]: I your text the word mea deotes a populatio mea (µ) while the work average deotes a sample average ( ). Variace [0]: The

More information

Problems from 9th edition of Probability and Statistical Inference by Hogg, Tanis and Zimmerman:

Problems from 9th edition of Probability and Statistical Inference by Hogg, Tanis and Zimmerman: Math 224 Fall 2017 Homework 4 Drew Armstrog Problems from 9th editio of Probability ad Statistical Iferece by Hogg, Tais ad Zimmerma: Sectio 2.3, Exercises 16(a,d),18. Sectio 2.4, Exercises 13, 14. Sectio

More information

Inverse Matrix. A meaning that matrix B is an inverse of matrix A.

Inverse Matrix. A meaning that matrix B is an inverse of matrix A. Iverse Matrix Two square matrices A ad B of dimesios are called iverses to oe aother if the followig holds, AB BA I (11) The otio is dual but we ofte write 1 B A meaig that matrix B is a iverse of matrix

More information

Lecture 12: Spiral: Domain Specific HLS. James C. Hoe Department of ECE Carnegie Mellon University

Lecture 12: Spiral: Domain Specific HLS. James C. Hoe Department of ECE Carnegie Mellon University 8 643 Lecture : Spiral: Domai Specific HLS James C. Hoe Departmet of ECE Caregie Mello Uiversity 8 643 F7 L S, James C. Hoe, CMU/ECE/CALCM, 07 Houseeepig Your goal today: see a eample of really highlevel

More information

Run-length & Entropy Coding. Redundancy Removal. Sampling. Quantization. Perform inverse operations at the receiver EEE

Run-length & Entropy Coding. Redundancy Removal. Sampling. Quantization. Perform inverse operations at the receiver EEE Geeral e Image Coder Structure Motio Video (s 1,s 2,t) or (s 1,s 2 ) Natural Image Samplig A form of data compressio; usually lossless, but ca be lossy Redudacy Removal Lossless compressio: predictive

More information

1 Lesson 6: Measure of Variation

1 Lesson 6: Measure of Variation 1 Lesso 6: Measure of Variatio 1.1 The rage As we have see, there are several viable coteders for the best measure of the cetral tedecy of data. The mea, the mode ad the media each have certai advatages

More information

Z ß cos x + si x R du We start with the substitutio u = si(x), so du = cos(x). The itegral becomes but +u we should chage the limits to go with the ew

Z ß cos x + si x R du We start with the substitutio u = si(x), so du = cos(x). The itegral becomes but +u we should chage the limits to go with the ew Problem ( poits) Evaluate the itegrals Z p x 9 x We ca draw a right triagle labeled this way x p x 9 From this we ca read off x = sec, so = sec ta, ad p x 9 = R ta. Puttig those pieces ito the itegralrwe

More information

Exam II Covers. STA 291 Lecture 19. Exam II Next Tuesday 5-7pm Memorial Hall (Same place as exam I) Makeup Exam 7:15pm 9:15pm Location CB 234

Exam II Covers. STA 291 Lecture 19. Exam II Next Tuesday 5-7pm Memorial Hall (Same place as exam I) Makeup Exam 7:15pm 9:15pm Location CB 234 STA 291 Lecture 19 Exam II Next Tuesday 5-7pm Memorial Hall (Same place as exam I) Makeup Exam 7:15pm 9:15pm Locatio CB 234 STA 291 - Lecture 19 1 Exam II Covers Chapter 9 10.1; 10.2; 10.3; 10.4; 10.6

More information

Arithmetic Circuits. (Part I) Randy H. Katz University of California, Berkeley. Spring 2007

Arithmetic Circuits. (Part I) Randy H. Katz University of California, Berkeley. Spring 2007 rithmetic Circuits (Part I) Rady H. Katz Uiversity of Califoria, erkeley prig 27 Lecture #23: rithmetic Circuits- Motivatio rithmetic circuits are excellet examples of comb. logic desig Time vs. pace Trade-offs

More information

ECONOMIC OPERATION OF POWER SYSTEMS

ECONOMIC OPERATION OF POWER SYSTEMS ECOOMC OEATO OF OWE SYSTEMS TOUCTO Oe of the earliest applicatios of o-lie cetralized cotrol was to provide a cetral facility, to operate ecoomically, several geeratig plats supplyig the loads of the system.

More information

Lecture 5: April 17, 2013

Lecture 5: April 17, 2013 TTIC/CMSC 350 Mathematical Toolkit Sprig 203 Madhur Tulsiai Lecture 5: April 7, 203 Scribe: Somaye Hashemifar Cheroff bouds recap We recall the Cheroff/Hoeffdig bouds we derived i the last lecture idepedet

More information

Analysis of Algorithms -Quicksort-

Analysis of Algorithms -Quicksort- Aalysis of Algorithms -- Adreas Ermedahl MRTC (Mälardales Real-Time Research Ceter) adreas.ermedahl@mdh.se Autum 2004 Proposed by C.A.R. Hoare i 962 Worst- case ruig time: Θ( 2 ) Expected ruig time: Θ(

More information

Sequences A sequence of numbers is a function whose domain is the positive integers. We can see that the sequence

Sequences A sequence of numbers is a function whose domain is the positive integers. We can see that the sequence Sequeces A sequece of umbers is a fuctio whose domai is the positive itegers. We ca see that the sequece 1, 1, 2, 2, 3, 3,... is a fuctio from the positive itegers whe we write the first sequece elemet

More information

Introduction to Signals and Systems, Part V: Lecture Summary

Introduction to Signals and Systems, Part V: Lecture Summary EEL33: Discrete-Time Sigals ad Systems Itroductio to Sigals ad Systems, Part V: Lecture Summary Itroductio to Sigals ad Systems, Part V: Lecture Summary So far we have oly looked at examples of o-recursive

More information

Project Two RISC Processor Implementation ECE 485

Project Two RISC Processor Implementation ECE 485 Project Two RISC Processor Implementation ECE 485 Chenqi Bao Peter Chinetti November 6, 2013 Instructor: Professor Borkar 1 Statement of Problem This project requires the design and test of a RISC processor

More information

Root Finding COS 323

Root Finding COS 323 Root Fidig COS 323 Remider Sig up for Piazza Assigmet 0 is posted, due Tue 9/25 Last time.. Floatig poit umbers ad precisio Machie epsilo Sources of error Sesitivity ad coditioig Stability ad accuracy

More information

Computing Confidence Intervals for Sample Data

Computing Confidence Intervals for Sample Data Computig Cofidece Itervals for Sample Data Topics Use of Statistics Sources of errors Accuracy, precisio, resolutio A mathematical model of errors Cofidece itervals For meas For variaces For proportios

More information

(4 pts.) (4 pts.) (4 pts.) b) y(x,t) = 1/(ax 2 +b) This function has no time dependence, so cannot be a wave.

(4 pts.) (4 pts.) (4 pts.) b) y(x,t) = 1/(ax 2 +b) This function has no time dependence, so cannot be a wave. 12. For each of the possible wave forms below, idicate which satisf the wave equatio, ad which represet reasoable waveforms for actual waves o a strig. For those which do represet waves, fid the speed

More information

Chapter 2 Feedback Control Theory Continued

Chapter 2 Feedback Control Theory Continued Chapter Feedback Cotrol Theor Cotiued. Itroductio I the previous chapter, the respose characteristic of simple first ad secod order trasfer fuctios were studied. It was show that first order trasfer fuctio,

More information

is also known as the general term of the sequence

is also known as the general term of the sequence Lesso : Sequeces ad Series Outlie Objectives: I ca determie whether a sequece has a patter. I ca determie whether a sequece ca be geeralized to fid a formula for the geeral term i the sequece. I ca determie

More information

, then cv V. Differential Equations Elements of Lineaer Algebra Name: Consider the differential equation. and y2 cos( kx)

, then cv V. Differential Equations Elements of Lineaer Algebra Name: Consider the differential equation. and y2 cos( kx) Cosider the differetial equatio y '' k y 0 has particular solutios y1 si( kx) ad y cos( kx) I geeral, ay liear combiatio of y1 ad y, cy 1 1 cy where c1, c is also a solutio to the equatio above The reaso

More information

Tennessee Department of Education

Tennessee Department of Education Teessee Departmet of Educatio Task: Comparig Shapes Geometry O a piece of graph paper with a coordiate plae, draw three o-colliear poits ad label them A, B, C. (Do ot use the origi as oe of your poits.)

More information

Microprocessor Power Analysis by Labeled Simulation

Microprocessor Power Analysis by Labeled Simulation Microprocessor Power Analysis by Labeled Simulation Cheng-Ta Hsieh, Kevin Chen and Massoud Pedram University of Southern California Dept. of EE-Systems Los Angeles CA 989 Outline! Introduction! Problem

More information

SNAP Centre Workshop. Basic Algebraic Manipulation

SNAP Centre Workshop. Basic Algebraic Manipulation SNAP Cetre Workshop Basic Algebraic Maipulatio 8 Simplifyig Algebraic Expressios Whe a expressio is writte i the most compact maer possible, it is cosidered to be simplified. Not Simplified: x(x + 4x)

More information

Chapter 10: Power Series

Chapter 10: Power Series Chapter : Power Series 57 Chapter Overview: Power Series The reaso series are part of a Calculus course is that there are fuctios which caot be itegrated. All power series, though, ca be itegrated because

More information

Arithmetic Circuits. (Part I) Randy H. Katz University of California, Berkeley. Spring Time vs. Space Trade-offs. Arithmetic Logic Units

Arithmetic Circuits. (Part I) Randy H. Katz University of California, Berkeley. Spring Time vs. Space Trade-offs. Arithmetic Logic Units rithmetic rcuits (art I) Rady H. Katz Uiversity of Califoria, erkeley otivatio rithmetic circuits are excellet examples of comb. logic desig Time vs. pace Trade-offs Doig thigs fast requires more logic

More information

3. (2) What is the difference between fixed and hybrid instructions?

3. (2) What is the difference between fixed and hybrid instructions? 1. (2 pts) What is a "balanced" pipeline? 2. (2 pts) What are the two main ways to define performance? 3. (2) What is the difference between fixed and hybrid instructions? 4. (2 pts) Clock rates have grown

More information

Roberto s Notes on Series Chapter 2: Convergence tests Section 7. Alternating series

Roberto s Notes on Series Chapter 2: Convergence tests Section 7. Alternating series Roberto s Notes o Series Chapter 2: Covergece tests Sectio 7 Alteratig series What you eed to kow already: All basic covergece tests for evetually positive series. What you ca lear here: A test for series

More information

MATH 262A LECTURE 1: AN INTRODUCTION TO BOOLEAN CIRCUITS AND FORMULAE

MATH 262A LECTURE 1: AN INTRODUCTION TO BOOLEAN CIRCUITS AND FORMULAE MATH 262A LECTURE 1: AN INTRODUCTION TO BOOLEAN CIRCUITS AND FORMULAE SCRIBE: CHRISTIAN WOODS 1. Admiistrivia MATH 262A - Circuit Compleit WF 3:30-5:00, APM B412 Istructor: Dr. Sam Buss, sbuss@math.ucsd.edu

More information

Disjoint set (Union-Find)

Disjoint set (Union-Find) CS124 Lecture 7 Fall 2018 Disjoit set (Uio-Fid) For Kruskal s algorithm for the miimum spaig tree problem, we foud that we eeded a data structure for maitaiig a collectio of disjoit sets. That is, we eed

More information

Chapter 18: Sampling Distribution Models

Chapter 18: Sampling Distribution Models Chater 18: Samlig Distributio Models This is the last bit of theory before we get back to real-world methods. Samlig Distributios: The Big Idea Take a samle ad summarize it with a statistic. Now take aother

More information

P1 Chapter 8 :: Binomial Expansion

P1 Chapter 8 :: Binomial Expansion P Chapter 8 :: Biomial Expasio jfrost@tiffi.kigsto.sch.uk www.drfrostmaths.com @DrFrostMaths Last modified: 6 th August 7 Use of DrFrostMaths for practice Register for free at: www.drfrostmaths.com/homework

More information

Power and Type II Error

Power and Type II Error Statistical Methods I (EXST 7005) Page 57 Power ad Type II Error Sice we do't actually kow the value of the true mea (or we would't be hypothesizig somethig else), we caot kow i practice the type II error

More information

7-1. Chapter 4. Part I. Sampling Distributions and Confidence Intervals

7-1. Chapter 4. Part I. Sampling Distributions and Confidence Intervals 7-1 Chapter 4 Part I. Samplig Distributios ad Cofidece Itervals 1 7- Sectio 1. Samplig Distributio 7-3 Usig Statistics Statistical Iferece: Predict ad forecast values of populatio parameters... Test hypotheses

More information

Lecture 9: Hierarchy Theorems

Lecture 9: Hierarchy Theorems IAS/PCMI Summer Sessio 2000 Clay Mathematics Udergraduate Program Basic Course o Computatioal Complexity Lecture 9: Hierarchy Theorems David Mix Barrigto ad Alexis Maciel July 27, 2000 Most of this lecture

More information

Calculus BC and BCD Drill on Sequences and Series!!! By Susan E. Cantey Walnut Hills H.S. 2006

Calculus BC and BCD Drill on Sequences and Series!!! By Susan E. Cantey Walnut Hills H.S. 2006 Calculus BC ad BCD Drill o Sequeces ad Series!!! By Susa E. Catey Walut Hills H.S. 2006 Sequeces ad Series I m goig to ask you questios about sequeces ad series ad drill you o some thigs that eed to be

More information

Random Models. Tusheng Zhang. February 14, 2013

Random Models. Tusheng Zhang. February 14, 2013 Radom Models Tusheg Zhag February 14, 013 1 Radom Walks Let me describe the model. Radom walks are used to describe the motio of a movig particle (object). Suppose that a particle (object) moves alog the

More information

HOMEWORK 2 SOLUTIONS

HOMEWORK 2 SOLUTIONS HOMEWORK SOLUTIONS CSE 55 RANDOMIZED AND APPROXIMATION ALGORITHMS 1. Questio 1. a) The larger the value of k is, the smaller the expected umber of days util we get all the coupos we eed. I fact if = k

More information

Lecture 10: Universal coding and prediction

Lecture 10: Universal coding and prediction 0-704: Iformatio Processig ad Learig Sprig 0 Lecture 0: Uiversal codig ad predictio Lecturer: Aarti Sigh Scribes: Georg M. Goerg Disclaimer: These otes have ot bee subjected to the usual scrutiy reserved

More information