ThreadsCombined - YHL Parallelism 1 Parallelism Tuesday,...

Info iconThis preview shows pages 1–11. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: YHL Parallelism 1 Parallelism Tuesday, November 29, 2011 YHL Parallelism 2 Parallelism parallel: several activities occurring simultaneously Parallelism is natural phenomena is our daily lives Many students take notes in a class. Multiple cars wait for a traffic light. Several lines of people order fast food (and eat). A student uses several washers in a laundry room. Several players try to catch a basketball. A hundred customers order books on-line. Tuesday, November 29, 2011 YHL Parallelism 5 Sequential Programming Model One statement executes first, then the next statement. within a statement, a partial (or full, in the case of Java) order exists on the execution of operations Control structures ( if , for , while , function call, ...) can change the order of execution of statements. Within a small segment (inside an if , for , while , function call, ...), statements appear as if they are executed sequentially, one by one. The sequential programming model is appropriate when a computer has only one processor or core. This is still the way programmers think of segments of code executing (sequential consistency) Tuesday, November 29, 2011 YHL Parallelism 6 A parallel computer on your desktop Tuesday, November 29, 2011 YHL Parallelism 7 Parallel Programming Models Shared memory multi-threading is one of the most popular, but not the only available programming model Shared memory programming can take several forms Client Server Master/worker Pipe-line Distributed memory message passing another popular form of parallelism Stream, flow languages, bulk/synchronous, and other models also exist Tuesday, November 29, 2011 YHL Parallelism 8 Client Server web browser (client) web server client sends request, server responds The client and the server may (in fact, very likely) be mulit- thread individually. client server request response request response time Tuesday, November 29, 2011 YHL Parallelism 9 Pipeline factory assembly line buffet line stage 1 stage 2 stage 3 Tuesday, November 29, 2011 YHL Parallelism 10 Latency and Throughput car 1 car 2 car 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 Throughput: the rate at which work is done (1 car/unit time in this case) Latency: the time it takes for a task (building a car int his case) to finish (3 units of time) Time Tuesday, November 29, 2011 YHL Parallelism 11 Enablers of parallelism multiple processing units The appearance of parallelism can be achieved with one processing unit and time multiplexing multiple datum items to operate on independence of the datum items Tuesday, November 29, 2011 YHL Parallelism 12 Multi-Threaded parallelism This is the most common form of parallelism in many personal devices and business servers....
View Full Document

This note was uploaded on 02/19/2012 for the course ECE 462 taught by Professor Samuelmidkiff during the Fall '11 term at Purdue University-West Lafayette.

Page1 / 232

ThreadsCombined - YHL Parallelism 1 Parallelism Tuesday,...

This preview shows document pages 1 - 11. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online