SlideShare una empresa de Scribd logo
1 de 8
Descargar para leer sin conexión
Midterm Review

     • Last Time
          » Web Indexing and Matrix Inversion
          » How to Make Page Rank go fast…
     • Today
          » Midterm Review
     • Reminders/Announcements
          » Midterm Thursday, April 28 (In class)
          » Please come on time; We’ll start on time




CSE 160 Chien, Spring 2005                             Lecture #9, Slide 1




                             Coverage

     • Lectures: Overheads, Discussions
     • Readings: Textbooks, a few other artices
     • Homeworks: Parallelism, Synchronization, Java,
       Performance
     • Sections: Deeper Understanding




CSE 160 Chien, Spring 2005                             Lecture #9, Slide 2
Readings

     • Concurrent Programming in Java: Design Principles
       and Patterns, Second Edition, 1999
     • Lea, Chapter 4.4
     • One or two of the following: Javasoft Thread Tutorial
       OR Arnold/Gosling, The Java Programming
       Language, Chapter 9 OR 1996 Thread Programming
       Articles, Part 1 and Part 2
     • Lea, Chapter 2, 1.2, 4.2

     • => Not the optional readings occasionally mentioned
       in class
CSE 160 Chien, Spring 2005                                    Lecture #9, Slide 3




                  What is Parallelism?

     • Importance of parallelism
          » Foundation of Performance
          » Has been in the past (pipelining, superscalar)
          » Continue in the future (multithreading, multi-core, multi-node)
     • Technology
          »   Hardware Drivers for Increased Parallelism
          »   Smaller Transistors, slow increase in clock rates
          »   Speed of light limitations
          »   Difficulty of more “implicit parallelism”
          »   Multi-core is coming; all machines are parallel
          »   10,000 – 100,000 node machines today, Millions in the
              future!

CSE 160 Chien, Spring 2005                                    Lecture #9, Slide 4
What is Parallelism? (cont.)

     • Applications
          » Many large-scale applications have exploding needs for
            computation
          » Major sources
               – Deeper and more complex analysis: Example: detailed Modeling,
                 Image processing, rendering
               – Massive Data: point of sale, video observation, sensor networks
               – Massive Activity: inventory and sale, web activities (massive human),
                 computer-computer (frequent flyer!)
     • Scale up/scale forward
          » Scale up for large-scale performance
          » Scale forward for continued rapid increases (as expected due to
            Moore’s law)


CSE 160 Chien, Spring 2005                                               Lecture #9, Slide 5




                    Parallelism in Java

     • Threads
          » Basis for Parallelism in Java – each an independently executable
            locus of control
          » Derivation from Thread Class, Define Runnable Interface
          » Relating Parallelism to Sequential Classes and Programs
     • Synchronization
          » Synchronized Blocks and Methods
          » Threads and Locks, “Don’t break sequential code”
          » Making Data Structures “concurrency safe” and tension with flexible
            parallelization (a la Jacobi iteration)
          » Deadlocks: Set of threads waiting for locks which will never be
            satisfied
          » Livelock: Set of threads chasing each other, never will stop


CSE 160 Chien, Spring 2005                                               Lecture #9, Slide 6
Parallelism in Java (cont.)

     • Thread Coordination and Scheduling
          »   Wait(), Yield(), Notify(), NotifyAll()
          »   Why you would want to use them
          »   How to use them
          »   Pitfalls in Using them (correctness)
          »   Costs of Using them
     • Advantages of Java
          » Integrated Model of Threading, Parallelism, Synchronization
          » Nice, clean, portable interfaces to threading, locks,
            parallelism, etc. (this CAN be ugly)
          » Reasonable type integration; no need for lots of casts, etc.


CSE 160 Chien, Spring 2005                                   Lecture #9, Slide 7




        Architecture and Hardware

     • Implicit vs. Explicit parallelism
          » Pipelining and Superscalar
          » Multithreading (including SMT), Multiple Processors, and
            Multiple-Nodes
     • Multiprocessors/threads (Shared Memory)
          »   Parallelism against a shared memory (like Opterons)
          »   Locks and Synchronization
          »   Caches and Locality; relative performance
          »   Limited Scalability




CSE 160 Chien, Spring 2005                                   Lecture #9, Slide 8
Architecture and Hardware
                        (cont.)

     • Multi-Node/Cluster (Distributed Memory)
          » Local SMP? Sometimes
          » Message Passing
          » Massive Scalability
     • Range of Systems
          » Small scale, large scale
          » Multi-core coming in large numbers




CSE 160 Chien, Spring 2005                                  Lecture #9, Slide 9




                             Applications

     • Three applications
          »   Relevant Application Definition
          »   Data Sets
          »   Algorithms
          »   Practical Aspects of Parallelism
     • Parallel Sorting
          » Shared Address Space Algorithms
          » Heroic Sorting: Minute Sort, Terabyte Sort, Penny Sort
               – Initial Exposure to “Benchmarks”
          » Scalable Algorithms: Bucket Sort and Challenges
          » Realities of Implementation
               – What is easy, what is hard

CSE 160 Chien, Spring 2005                                 Lecture #9, Slide 10
Applications (cont.)

     • Jacobi Iteration: Partial Differential Equation Solver
          »   Widespread Use in Modeling: fluids, air, crashes, etc.
          »   Floating Point and Linear Systems
          »   Simple, Regular Structure
          »   Parallelism Structure is often regular; Lots of Parallelism!
          »   Threads can ensure correct execution by convention; not individual
              object locking -> much simpler, more flexible programs
     • Web Search/Indexing
          »   Practical Constraints of Web: Huge, Never Static!
          »   Basic Indexing for Word Counts
          »   Efficient and Scalable Retrieval of Matching Pages
          »   PageRank Algorithm
          »   Composing Responses to Page Ranked Requests


CSE 160 Chien, Spring 2005                                         Lecture #9, Slide 11




                             Exam Format

     • Short Questions (~50 %)
          » Coverage of All Course Topics to Date (Parallelism, Java,
            Machines, Applications)
          » Write a sentence or two
          » Demonstrate Understanding and Depth in an Area

     • Examples (guaranteed to NOT be on the exam!)
          » “Explain the notion that Java threads hold locks, and give an
            example of how this affects programming.”
          » “Define Implicit Parallelism and Explicit Parallelism from a
            Programming Perspective”
          » “What level of parallelism is present in current-day
            microprocessors, and how is it likely to change in the future?”


CSE 160 Chien, Spring 2005                                         Lecture #9, Slide 12
Exam Format (cont.)

     • Two Longer Questions (~50 %)
          » Understand a Java Program
          » Modify Code
          » Write Code

     • Illuminate the concepts and ideas that we have
       covered
     • Homeworks problems are a fertile area for
       preparation here



CSE 160 Chien, Spring 2005                       Lecture #9, Slide 13




       TA Midterm Review Section

     • Sagnik Nandy will hold a Review and answer
       questions about course material
          »   Readings
          »   Homeworks
          »   Lectures
          »   Sections


     • Wednesday April 27, 2-4pm, Location 4218 APM




CSE 160 Chien, Spring 2005                       Lecture #9, Slide 14
Summary

     • Midterm has comprehensive Coverage of Course
       Material to this point
     • Elements
          » Lectures, Homeworks, Readings, Sections
     • Topics
          »   Parallelism
          »   Java, Threads, Synchronization
          »   Parallel Machines
          »   Applications



CSE 160 Chien, Spring 2005                            Lecture #9, Slide 15




                             Questions?

Más contenido relacionado

Similar a Hi

Concurrency Programming in Java - 01 - Introduction to Concurrency Programming
Concurrency Programming in Java - 01 - Introduction to Concurrency ProgrammingConcurrency Programming in Java - 01 - Introduction to Concurrency Programming
Concurrency Programming in Java - 01 - Introduction to Concurrency ProgrammingSachintha Gunasena
 
C# Async/Await Explained
C# Async/Await ExplainedC# Async/Await Explained
C# Async/Await ExplainedJeremy Likness
 
Static analysis of java enterprise applications
Static analysis of java enterprise applicationsStatic analysis of java enterprise applications
Static analysis of java enterprise applicationsAnastasiοs Antoniadis
 
The Economies of Scaling Software
The Economies of Scaling SoftwareThe Economies of Scaling Software
The Economies of Scaling SoftwareAbdelmonaim Remani
 
Working With Concurrency In Java 8
Working With Concurrency In Java 8Working With Concurrency In Java 8
Working With Concurrency In Java 8Heartin Jacob
 
Scala in practice
Scala in practiceScala in practice
Scala in practiceTomer Gabel
 
Divide and conquer in the cloud
Divide and conquer in the cloudDivide and conquer in the cloud
Divide and conquer in the cloudJustin Swanhart
 
Stream Computing (The Engineer's Perspective)
Stream Computing (The Engineer's Perspective)Stream Computing (The Engineer's Perspective)
Stream Computing (The Engineer's Perspective)Ilya Ganelin
 
Modern Java Concurrency (OSCON 2012)
Modern Java Concurrency (OSCON 2012)Modern Java Concurrency (OSCON 2012)
Modern Java Concurrency (OSCON 2012)Martijn Verburg
 
Arc 300-3 ade miller-en
Arc 300-3 ade miller-enArc 300-3 ade miller-en
Arc 300-3 ade miller-enlonegunman
 
Lecture 1
Lecture 1Lecture 1
Lecture 1Mr SMAK
 
Promise of a better future by Rahul Goma Phulore and Pooja Akshantal, Thought...
Promise of a better future by Rahul Goma Phulore and Pooja Akshantal, Thought...Promise of a better future by Rahul Goma Phulore and Pooja Akshantal, Thought...
Promise of a better future by Rahul Goma Phulore and Pooja Akshantal, Thought...Thoughtworks
 
Parallel Computing in .NET
Parallel Computing in .NETParallel Computing in .NET
Parallel Computing in .NETmeghantaylor
 
Building Large Scale Machine Learning Applications with Pipelines-(Evan Spark...
Building Large Scale Machine Learning Applications with Pipelines-(Evan Spark...Building Large Scale Machine Learning Applications with Pipelines-(Evan Spark...
Building Large Scale Machine Learning Applications with Pipelines-(Evan Spark...Spark Summit
 
Seminar on Parallel and Concurrent Programming
Seminar on Parallel and Concurrent ProgrammingSeminar on Parallel and Concurrent Programming
Seminar on Parallel and Concurrent ProgrammingStefan Marr
 
Mining big data streams with APACHE SAMOA by Albert Bifet
Mining big data streams with APACHE SAMOA by Albert BifetMining big data streams with APACHE SAMOA by Albert Bifet
Mining big data streams with APACHE SAMOA by Albert BifetJ On The Beach
 
Rainbows, Unicorns, and other Fairy Tales in the Land of Serverless Dreams
Rainbows, Unicorns, and other Fairy Tales in the Land of Serverless DreamsRainbows, Unicorns, and other Fairy Tales in the Land of Serverless Dreams
Rainbows, Unicorns, and other Fairy Tales in the Land of Serverless DreamsJosh Carlisle
 
T4T Training day - NodeJS
T4T Training day - NodeJST4T Training day - NodeJS
T4T Training day - NodeJSTim Sommer
 
Java 8 selected updates
Java 8 selected updatesJava 8 selected updates
Java 8 selected updatesVinay H G
 
Mining Big Data Streams with APACHE SAMOA
Mining Big Data Streams with APACHE SAMOAMining Big Data Streams with APACHE SAMOA
Mining Big Data Streams with APACHE SAMOAAlbert Bifet
 

Similar a Hi (20)

Concurrency Programming in Java - 01 - Introduction to Concurrency Programming
Concurrency Programming in Java - 01 - Introduction to Concurrency ProgrammingConcurrency Programming in Java - 01 - Introduction to Concurrency Programming
Concurrency Programming in Java - 01 - Introduction to Concurrency Programming
 
C# Async/Await Explained
C# Async/Await ExplainedC# Async/Await Explained
C# Async/Await Explained
 
Static analysis of java enterprise applications
Static analysis of java enterprise applicationsStatic analysis of java enterprise applications
Static analysis of java enterprise applications
 
The Economies of Scaling Software
The Economies of Scaling SoftwareThe Economies of Scaling Software
The Economies of Scaling Software
 
Working With Concurrency In Java 8
Working With Concurrency In Java 8Working With Concurrency In Java 8
Working With Concurrency In Java 8
 
Scala in practice
Scala in practiceScala in practice
Scala in practice
 
Divide and conquer in the cloud
Divide and conquer in the cloudDivide and conquer in the cloud
Divide and conquer in the cloud
 
Stream Computing (The Engineer's Perspective)
Stream Computing (The Engineer's Perspective)Stream Computing (The Engineer's Perspective)
Stream Computing (The Engineer's Perspective)
 
Modern Java Concurrency (OSCON 2012)
Modern Java Concurrency (OSCON 2012)Modern Java Concurrency (OSCON 2012)
Modern Java Concurrency (OSCON 2012)
 
Arc 300-3 ade miller-en
Arc 300-3 ade miller-enArc 300-3 ade miller-en
Arc 300-3 ade miller-en
 
Lecture 1
Lecture 1Lecture 1
Lecture 1
 
Promise of a better future by Rahul Goma Phulore and Pooja Akshantal, Thought...
Promise of a better future by Rahul Goma Phulore and Pooja Akshantal, Thought...Promise of a better future by Rahul Goma Phulore and Pooja Akshantal, Thought...
Promise of a better future by Rahul Goma Phulore and Pooja Akshantal, Thought...
 
Parallel Computing in .NET
Parallel Computing in .NETParallel Computing in .NET
Parallel Computing in .NET
 
Building Large Scale Machine Learning Applications with Pipelines-(Evan Spark...
Building Large Scale Machine Learning Applications with Pipelines-(Evan Spark...Building Large Scale Machine Learning Applications with Pipelines-(Evan Spark...
Building Large Scale Machine Learning Applications with Pipelines-(Evan Spark...
 
Seminar on Parallel and Concurrent Programming
Seminar on Parallel and Concurrent ProgrammingSeminar on Parallel and Concurrent Programming
Seminar on Parallel and Concurrent Programming
 
Mining big data streams with APACHE SAMOA by Albert Bifet
Mining big data streams with APACHE SAMOA by Albert BifetMining big data streams with APACHE SAMOA by Albert Bifet
Mining big data streams with APACHE SAMOA by Albert Bifet
 
Rainbows, Unicorns, and other Fairy Tales in the Land of Serverless Dreams
Rainbows, Unicorns, and other Fairy Tales in the Land of Serverless DreamsRainbows, Unicorns, and other Fairy Tales in the Land of Serverless Dreams
Rainbows, Unicorns, and other Fairy Tales in the Land of Serverless Dreams
 
T4T Training day - NodeJS
T4T Training day - NodeJST4T Training day - NodeJS
T4T Training day - NodeJS
 
Java 8 selected updates
Java 8 selected updatesJava 8 selected updates
Java 8 selected updates
 
Mining Big Data Streams with APACHE SAMOA
Mining Big Data Streams with APACHE SAMOAMining Big Data Streams with APACHE SAMOA
Mining Big Data Streams with APACHE SAMOA
 

Último

↑Top Model (Kolkata) Call Girls Howrah ⟟ 8250192130 ⟟ High Class Call Girl In...
↑Top Model (Kolkata) Call Girls Howrah ⟟ 8250192130 ⟟ High Class Call Girl In...↑Top Model (Kolkata) Call Girls Howrah ⟟ 8250192130 ⟟ High Class Call Girl In...
↑Top Model (Kolkata) Call Girls Howrah ⟟ 8250192130 ⟟ High Class Call Girl In...noor ahmed
 
Top Rated Kolkata Call Girls Khardah ⟟ 6297143586 ⟟ Call Me For Genuine Sex S...
Top Rated Kolkata Call Girls Khardah ⟟ 6297143586 ⟟ Call Me For Genuine Sex S...Top Rated Kolkata Call Girls Khardah ⟟ 6297143586 ⟟ Call Me For Genuine Sex S...
Top Rated Kolkata Call Girls Khardah ⟟ 6297143586 ⟟ Call Me For Genuine Sex S...ritikasharma
 
Call Girls In Goa 9316020077 Goa Call Girl By Indian Call Girls Goa
Call Girls In Goa  9316020077 Goa  Call Girl By Indian Call Girls GoaCall Girls In Goa  9316020077 Goa  Call Girl By Indian Call Girls Goa
Call Girls In Goa 9316020077 Goa Call Girl By Indian Call Girls Goasexy call girls service in goa
 
Call Girls Agency In Goa 💚 9316020077 💚 Call Girl Goa By Russian Call Girl ...
Call Girls  Agency In Goa  💚 9316020077 💚 Call Girl Goa By Russian Call Girl ...Call Girls  Agency In Goa  💚 9316020077 💚 Call Girl Goa By Russian Call Girl ...
Call Girls Agency In Goa 💚 9316020077 💚 Call Girl Goa By Russian Call Girl ...russian goa call girl and escorts service
 
Call Girl Nashik Saloni 7001305949 Independent Escort Service Nashik
Call Girl Nashik Saloni 7001305949 Independent Escort Service NashikCall Girl Nashik Saloni 7001305949 Independent Escort Service Nashik
Call Girl Nashik Saloni 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
Low Rate Young Call Girls in Surajpur Greater Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Surajpur Greater Noida ✔️☆9289244007✔️☆ Female E...Low Rate Young Call Girls in Surajpur Greater Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Surajpur Greater Noida ✔️☆9289244007✔️☆ Female E...SofiyaSharma5
 
Top Rated Pune Call Girls Pimpri Chinchwad ⟟ 6297143586 ⟟ Call Me For Genuin...
Top Rated  Pune Call Girls Pimpri Chinchwad ⟟ 6297143586 ⟟ Call Me For Genuin...Top Rated  Pune Call Girls Pimpri Chinchwad ⟟ 6297143586 ⟟ Call Me For Genuin...
Top Rated Pune Call Girls Pimpri Chinchwad ⟟ 6297143586 ⟟ Call Me For Genuin...Call Girls in Nagpur High Profile
 
Independent Joka Escorts ✔ 8250192130 ✔ Full Night With Room Online Booking 2...
Independent Joka Escorts ✔ 8250192130 ✔ Full Night With Room Online Booking 2...Independent Joka Escorts ✔ 8250192130 ✔ Full Night With Room Online Booking 2...
Independent Joka Escorts ✔ 8250192130 ✔ Full Night With Room Online Booking 2...noor ahmed
 
Call Girl Nagpur Roshni Call 7001035870 Meet With Nagpur Escorts
Call Girl Nagpur Roshni Call 7001035870 Meet With Nagpur EscortsCall Girl Nagpur Roshni Call 7001035870 Meet With Nagpur Escorts
Call Girl Nagpur Roshni Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
College Call Girls New Alipore - For 7001035870 Cheap & Best with original Ph...
College Call Girls New Alipore - For 7001035870 Cheap & Best with original Ph...College Call Girls New Alipore - For 7001035870 Cheap & Best with original Ph...
College Call Girls New Alipore - For 7001035870 Cheap & Best with original Ph...anamikaraghav4
 
Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...
Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...
Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...ritikasharma
 
↑Top Model (Kolkata) Call Girls Rajpur ⟟ 8250192130 ⟟ High Class Call Girl In...
↑Top Model (Kolkata) Call Girls Rajpur ⟟ 8250192130 ⟟ High Class Call Girl In...↑Top Model (Kolkata) Call Girls Rajpur ⟟ 8250192130 ⟟ High Class Call Girl In...
↑Top Model (Kolkata) Call Girls Rajpur ⟟ 8250192130 ⟟ High Class Call Girl In...noor ahmed
 
Almora call girls 📞 8617697112 At Low Cost Cash Payment Booking
Almora call girls 📞 8617697112 At Low Cost Cash Payment BookingAlmora call girls 📞 8617697112 At Low Cost Cash Payment Booking
Almora call girls 📞 8617697112 At Low Cost Cash Payment BookingNitya salvi
 
👙 Kolkata Call Girls Shyam Bazar 💫💫7001035870 Model escorts Service
👙  Kolkata Call Girls Shyam Bazar 💫💫7001035870 Model escorts Service👙  Kolkata Call Girls Shyam Bazar 💫💫7001035870 Model escorts Service
👙 Kolkata Call Girls Shyam Bazar 💫💫7001035870 Model escorts Serviceanamikaraghav4
 
Science City Kolkata ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sex...
Science City Kolkata ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sex...Science City Kolkata ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sex...
Science City Kolkata ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sex...rahim quresi
 
VIP Call Girls Nagpur Megha Call 7001035870 Meet With Nagpur Escorts
VIP Call Girls Nagpur Megha Call 7001035870 Meet With Nagpur EscortsVIP Call Girls Nagpur Megha Call 7001035870 Meet With Nagpur Escorts
VIP Call Girls Nagpur Megha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
𓀤Call On 6297143586 𓀤 Sonagachi Call Girls In All Kolkata 24/7 Provide Call W...
𓀤Call On 6297143586 𓀤 Sonagachi Call Girls In All Kolkata 24/7 Provide Call W...𓀤Call On 6297143586 𓀤 Sonagachi Call Girls In All Kolkata 24/7 Provide Call W...
𓀤Call On 6297143586 𓀤 Sonagachi Call Girls In All Kolkata 24/7 Provide Call W...rahim quresi
 

Último (20)

↑Top Model (Kolkata) Call Girls Howrah ⟟ 8250192130 ⟟ High Class Call Girl In...
↑Top Model (Kolkata) Call Girls Howrah ⟟ 8250192130 ⟟ High Class Call Girl In...↑Top Model (Kolkata) Call Girls Howrah ⟟ 8250192130 ⟟ High Class Call Girl In...
↑Top Model (Kolkata) Call Girls Howrah ⟟ 8250192130 ⟟ High Class Call Girl In...
 
Top Rated Kolkata Call Girls Khardah ⟟ 6297143586 ⟟ Call Me For Genuine Sex S...
Top Rated Kolkata Call Girls Khardah ⟟ 6297143586 ⟟ Call Me For Genuine Sex S...Top Rated Kolkata Call Girls Khardah ⟟ 6297143586 ⟟ Call Me For Genuine Sex S...
Top Rated Kolkata Call Girls Khardah ⟟ 6297143586 ⟟ Call Me For Genuine Sex S...
 
Call Girls In Goa 9316020077 Goa Call Girl By Indian Call Girls Goa
Call Girls In Goa  9316020077 Goa  Call Girl By Indian Call Girls GoaCall Girls In Goa  9316020077 Goa  Call Girl By Indian Call Girls Goa
Call Girls In Goa 9316020077 Goa Call Girl By Indian Call Girls Goa
 
Goa Call "Girls Service 9316020077 Call "Girls in Goa
Goa Call "Girls  Service   9316020077 Call "Girls in GoaGoa Call "Girls  Service   9316020077 Call "Girls in Goa
Goa Call "Girls Service 9316020077 Call "Girls in Goa
 
Call Girls Agency In Goa 💚 9316020077 💚 Call Girl Goa By Russian Call Girl ...
Call Girls  Agency In Goa  💚 9316020077 💚 Call Girl Goa By Russian Call Girl ...Call Girls  Agency In Goa  💚 9316020077 💚 Call Girl Goa By Russian Call Girl ...
Call Girls Agency In Goa 💚 9316020077 💚 Call Girl Goa By Russian Call Girl ...
 
Call Girl Nashik Saloni 7001305949 Independent Escort Service Nashik
Call Girl Nashik Saloni 7001305949 Independent Escort Service NashikCall Girl Nashik Saloni 7001305949 Independent Escort Service Nashik
Call Girl Nashik Saloni 7001305949 Independent Escort Service Nashik
 
Low Rate Young Call Girls in Surajpur Greater Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Surajpur Greater Noida ✔️☆9289244007✔️☆ Female E...Low Rate Young Call Girls in Surajpur Greater Noida ✔️☆9289244007✔️☆ Female E...
Low Rate Young Call Girls in Surajpur Greater Noida ✔️☆9289244007✔️☆ Female E...
 
Top Rated Pune Call Girls Pimpri Chinchwad ⟟ 6297143586 ⟟ Call Me For Genuin...
Top Rated  Pune Call Girls Pimpri Chinchwad ⟟ 6297143586 ⟟ Call Me For Genuin...Top Rated  Pune Call Girls Pimpri Chinchwad ⟟ 6297143586 ⟟ Call Me For Genuin...
Top Rated Pune Call Girls Pimpri Chinchwad ⟟ 6297143586 ⟟ Call Me For Genuin...
 
Independent Joka Escorts ✔ 8250192130 ✔ Full Night With Room Online Booking 2...
Independent Joka Escorts ✔ 8250192130 ✔ Full Night With Room Online Booking 2...Independent Joka Escorts ✔ 8250192130 ✔ Full Night With Room Online Booking 2...
Independent Joka Escorts ✔ 8250192130 ✔ Full Night With Room Online Booking 2...
 
Call Girl Nagpur Roshni Call 7001035870 Meet With Nagpur Escorts
Call Girl Nagpur Roshni Call 7001035870 Meet With Nagpur EscortsCall Girl Nagpur Roshni Call 7001035870 Meet With Nagpur Escorts
Call Girl Nagpur Roshni Call 7001035870 Meet With Nagpur Escorts
 
College Call Girls New Alipore - For 7001035870 Cheap & Best with original Ph...
College Call Girls New Alipore - For 7001035870 Cheap & Best with original Ph...College Call Girls New Alipore - For 7001035870 Cheap & Best with original Ph...
College Call Girls New Alipore - For 7001035870 Cheap & Best with original Ph...
 
Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...
Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...
Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...
 
↑Top Model (Kolkata) Call Girls Rajpur ⟟ 8250192130 ⟟ High Class Call Girl In...
↑Top Model (Kolkata) Call Girls Rajpur ⟟ 8250192130 ⟟ High Class Call Girl In...↑Top Model (Kolkata) Call Girls Rajpur ⟟ 8250192130 ⟟ High Class Call Girl In...
↑Top Model (Kolkata) Call Girls Rajpur ⟟ 8250192130 ⟟ High Class Call Girl In...
 
Almora call girls 📞 8617697112 At Low Cost Cash Payment Booking
Almora call girls 📞 8617697112 At Low Cost Cash Payment BookingAlmora call girls 📞 8617697112 At Low Cost Cash Payment Booking
Almora call girls 📞 8617697112 At Low Cost Cash Payment Booking
 
👙 Kolkata Call Girls Shyam Bazar 💫💫7001035870 Model escorts Service
👙  Kolkata Call Girls Shyam Bazar 💫💫7001035870 Model escorts Service👙  Kolkata Call Girls Shyam Bazar 💫💫7001035870 Model escorts Service
👙 Kolkata Call Girls Shyam Bazar 💫💫7001035870 Model escorts Service
 
Desi Bhabhi Call Girls In Goa 💃 730 02 72 001💃desi Bhabhi Escort Goa
Desi Bhabhi Call Girls  In Goa  💃 730 02 72 001💃desi Bhabhi Escort GoaDesi Bhabhi Call Girls  In Goa  💃 730 02 72 001💃desi Bhabhi Escort Goa
Desi Bhabhi Call Girls In Goa 💃 730 02 72 001💃desi Bhabhi Escort Goa
 
Call Girls South Avenue Delhi WhatsApp Number 9711199171
Call Girls South Avenue Delhi WhatsApp Number 9711199171Call Girls South Avenue Delhi WhatsApp Number 9711199171
Call Girls South Avenue Delhi WhatsApp Number 9711199171
 
Science City Kolkata ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sex...
Science City Kolkata ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sex...Science City Kolkata ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sex...
Science City Kolkata ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sex...
 
VIP Call Girls Nagpur Megha Call 7001035870 Meet With Nagpur Escorts
VIP Call Girls Nagpur Megha Call 7001035870 Meet With Nagpur EscortsVIP Call Girls Nagpur Megha Call 7001035870 Meet With Nagpur Escorts
VIP Call Girls Nagpur Megha Call 7001035870 Meet With Nagpur Escorts
 
𓀤Call On 6297143586 𓀤 Sonagachi Call Girls In All Kolkata 24/7 Provide Call W...
𓀤Call On 6297143586 𓀤 Sonagachi Call Girls In All Kolkata 24/7 Provide Call W...𓀤Call On 6297143586 𓀤 Sonagachi Call Girls In All Kolkata 24/7 Provide Call W...
𓀤Call On 6297143586 𓀤 Sonagachi Call Girls In All Kolkata 24/7 Provide Call W...
 

Hi

  • 1. Midterm Review • Last Time » Web Indexing and Matrix Inversion » How to Make Page Rank go fast… • Today » Midterm Review • Reminders/Announcements » Midterm Thursday, April 28 (In class) » Please come on time; We’ll start on time CSE 160 Chien, Spring 2005 Lecture #9, Slide 1 Coverage • Lectures: Overheads, Discussions • Readings: Textbooks, a few other artices • Homeworks: Parallelism, Synchronization, Java, Performance • Sections: Deeper Understanding CSE 160 Chien, Spring 2005 Lecture #9, Slide 2
  • 2. Readings • Concurrent Programming in Java: Design Principles and Patterns, Second Edition, 1999 • Lea, Chapter 4.4 • One or two of the following: Javasoft Thread Tutorial OR Arnold/Gosling, The Java Programming Language, Chapter 9 OR 1996 Thread Programming Articles, Part 1 and Part 2 • Lea, Chapter 2, 1.2, 4.2 • => Not the optional readings occasionally mentioned in class CSE 160 Chien, Spring 2005 Lecture #9, Slide 3 What is Parallelism? • Importance of parallelism » Foundation of Performance » Has been in the past (pipelining, superscalar) » Continue in the future (multithreading, multi-core, multi-node) • Technology » Hardware Drivers for Increased Parallelism » Smaller Transistors, slow increase in clock rates » Speed of light limitations » Difficulty of more “implicit parallelism” » Multi-core is coming; all machines are parallel » 10,000 – 100,000 node machines today, Millions in the future! CSE 160 Chien, Spring 2005 Lecture #9, Slide 4
  • 3. What is Parallelism? (cont.) • Applications » Many large-scale applications have exploding needs for computation » Major sources – Deeper and more complex analysis: Example: detailed Modeling, Image processing, rendering – Massive Data: point of sale, video observation, sensor networks – Massive Activity: inventory and sale, web activities (massive human), computer-computer (frequent flyer!) • Scale up/scale forward » Scale up for large-scale performance » Scale forward for continued rapid increases (as expected due to Moore’s law) CSE 160 Chien, Spring 2005 Lecture #9, Slide 5 Parallelism in Java • Threads » Basis for Parallelism in Java – each an independently executable locus of control » Derivation from Thread Class, Define Runnable Interface » Relating Parallelism to Sequential Classes and Programs • Synchronization » Synchronized Blocks and Methods » Threads and Locks, “Don’t break sequential code” » Making Data Structures “concurrency safe” and tension with flexible parallelization (a la Jacobi iteration) » Deadlocks: Set of threads waiting for locks which will never be satisfied » Livelock: Set of threads chasing each other, never will stop CSE 160 Chien, Spring 2005 Lecture #9, Slide 6
  • 4. Parallelism in Java (cont.) • Thread Coordination and Scheduling » Wait(), Yield(), Notify(), NotifyAll() » Why you would want to use them » How to use them » Pitfalls in Using them (correctness) » Costs of Using them • Advantages of Java » Integrated Model of Threading, Parallelism, Synchronization » Nice, clean, portable interfaces to threading, locks, parallelism, etc. (this CAN be ugly) » Reasonable type integration; no need for lots of casts, etc. CSE 160 Chien, Spring 2005 Lecture #9, Slide 7 Architecture and Hardware • Implicit vs. Explicit parallelism » Pipelining and Superscalar » Multithreading (including SMT), Multiple Processors, and Multiple-Nodes • Multiprocessors/threads (Shared Memory) » Parallelism against a shared memory (like Opterons) » Locks and Synchronization » Caches and Locality; relative performance » Limited Scalability CSE 160 Chien, Spring 2005 Lecture #9, Slide 8
  • 5. Architecture and Hardware (cont.) • Multi-Node/Cluster (Distributed Memory) » Local SMP? Sometimes » Message Passing » Massive Scalability • Range of Systems » Small scale, large scale » Multi-core coming in large numbers CSE 160 Chien, Spring 2005 Lecture #9, Slide 9 Applications • Three applications » Relevant Application Definition » Data Sets » Algorithms » Practical Aspects of Parallelism • Parallel Sorting » Shared Address Space Algorithms » Heroic Sorting: Minute Sort, Terabyte Sort, Penny Sort – Initial Exposure to “Benchmarks” » Scalable Algorithms: Bucket Sort and Challenges » Realities of Implementation – What is easy, what is hard CSE 160 Chien, Spring 2005 Lecture #9, Slide 10
  • 6. Applications (cont.) • Jacobi Iteration: Partial Differential Equation Solver » Widespread Use in Modeling: fluids, air, crashes, etc. » Floating Point and Linear Systems » Simple, Regular Structure » Parallelism Structure is often regular; Lots of Parallelism! » Threads can ensure correct execution by convention; not individual object locking -> much simpler, more flexible programs • Web Search/Indexing » Practical Constraints of Web: Huge, Never Static! » Basic Indexing for Word Counts » Efficient and Scalable Retrieval of Matching Pages » PageRank Algorithm » Composing Responses to Page Ranked Requests CSE 160 Chien, Spring 2005 Lecture #9, Slide 11 Exam Format • Short Questions (~50 %) » Coverage of All Course Topics to Date (Parallelism, Java, Machines, Applications) » Write a sentence or two » Demonstrate Understanding and Depth in an Area • Examples (guaranteed to NOT be on the exam!) » “Explain the notion that Java threads hold locks, and give an example of how this affects programming.” » “Define Implicit Parallelism and Explicit Parallelism from a Programming Perspective” » “What level of parallelism is present in current-day microprocessors, and how is it likely to change in the future?” CSE 160 Chien, Spring 2005 Lecture #9, Slide 12
  • 7. Exam Format (cont.) • Two Longer Questions (~50 %) » Understand a Java Program » Modify Code » Write Code • Illuminate the concepts and ideas that we have covered • Homeworks problems are a fertile area for preparation here CSE 160 Chien, Spring 2005 Lecture #9, Slide 13 TA Midterm Review Section • Sagnik Nandy will hold a Review and answer questions about course material » Readings » Homeworks » Lectures » Sections • Wednesday April 27, 2-4pm, Location 4218 APM CSE 160 Chien, Spring 2005 Lecture #9, Slide 14
  • 8. Summary • Midterm has comprehensive Coverage of Course Material to this point • Elements » Lectures, Homeworks, Readings, Sections • Topics » Parallelism » Java, Threads, Synchronization » Parallel Machines » Applications CSE 160 Chien, Spring 2005 Lecture #9, Slide 15 Questions?