David Evans CS150: Computer Science University of Virginia Computer Science Class 37: How to Find Aliens (and Factors)

Slides:



Advertisements
Similar presentations
MyGateway. Top Tabs MyGateway Home Students Library
Advertisements

CS4231 Parallel and Distributed Algorithms AY 2006/2007 Semester 2 Lecture 6 Instructor: Haifeng YU.
David Evans CS588: Cryptography University of Virginia Computer Science Lecture 17: Public-Key Protocols.
Managing Incoming Chapter 3 Bit Literacy. Terminology client – program which retrieves s from a mail server, lets you read the mails,
David Evans CS201j: Engineering Software University of Virginia Computer Science Lecture 13: Concurring Concurrently.
David Evans CS200: Computer Science University of Virginia Computer Science Class 27: Modeling Computation.
It’s not enough to be busy, so are the ants. The question is, what are we busy about? -Henry David Thoreau GMAIL AND YOUR BUSINESS!
IT Systems Multiprocessor System EN230-1 Justin Champion C208 –
Race Conditions. Isolated & Non-Isolated Processes Isolated: Do not share state with other processes –The output of process is unaffected by run of other.
David Evans CS588: Security and Privacy University of Virginia Computer Science Lecture 11: Birthday Paradoxes.
Today we will: Have individual and group conferences; Further plan our PSAs during free workshop time. Reminder: Reserve an editing workstation for your.
COMP 110 Introduction to Programming Tabitha Peck M.S. January 9, 2008 MWF 3-3:50 pm Philips 367.
CS150 Introduction to Computer Science 1 Professor: Chadd Williams.
Fall 2007cs4251 Distributed Computing Umar Kalim Dept. of Communication Systems Engineering 31/10/2007.
Concurrency CS 510: Programming Languages David Walker.
CS 300 – Lecture 20 Intro to Computer Architecture / Assembly Language Caches.
CS 300 – Lecture 23 Intro to Computer Architecture / Assembly Language Virtual Memory Pipelining.
David Evans cs302: Theory of Computation University of Virginia Computer Science Lecture 2: Modeling Computers.
COMP 14 – 02: Introduction to Programming Andrew Leaver-Fay August 31, 2005 Monday/Wednesday 3-4:15 pm Peabody 217 Friday 3-3:50pm Peabody 217.
1 OBJ: SWBAT Solve a system of equations by graphing on a coordinate plane.
Distributed Computer Architecture Benjamin Jordan, Kevin Cone, Jason Bradley.
Cs3102: Theory of Computation Class 20: Busy Beavers Spring 2010 University of Virginia David Evans Office hours: I am not able to hold my Thursday morning.
Concurrency Recitation – 2/24 Nisarg Raval Slides by Prof. Landon Cox.
Aug CMSC 104, LECT-021 Machine Architecture and Number Systems Some material in this presentation is borrowed form Adrian Ilie From The UNIVERSITY.
Types of Operating System
Issues in Concurrent Systems. Online Survey The Spring term course/instructor opinion survey will be available during the period Monday, April 17th through.
1 Machine Architecture and Number Systems Topics Major Computer Components Bits, Bytes, and Words The Decimal Number System The Binary Number System Converting.
CS216: Program and Data Representation University of Virginia Computer Science Spring 2006 David Evans Lecture 2: Orders of Growth
A+ Guide to Hardware: Managing, Maintaining, and Troubleshooting, Sixth Edition Chapter 9, Part 9 Satisfying Customer Needs.
Welcome to my conference! February th grade Taneal.
SharePoint document libraries I: Introduction to sharing files Sharjah Higher Colleges of Technology presents:
David Evans CS200: Computer Science University of Virginia Computer Science Class 36: Public-Key Cryptography If you want.
It’s not enough to be busy, so are the ants. The question is, what are we busy about? -Henry David Thoreau GMAIL AND YOUR BUSINESS!
Copyright © Clifford Neuman and Dongho Kim - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE Advanced Operating Systems Lecture.
Catie Welsh January 10, 2011 MWF 1-1:50 pm Sitterson 014.
Lecture 1 Page 1 CS 239, Fall 2010 Distributed Denial of Service Attacks and Defenses CS 239 Advanced Topics in Computer Security Peter Reiher September.
Games Development 2 Concurrent Programming CO3301 Week 9.
Parallel Processing Sharing the load. Inside a Processor Chip in Package Circuits Primarily Crystalline Silicon 1 mm – 25 mm on a side 100 million to.
David Evans CS150: Computer Science University of Virginia Computer Science Class 33: Computing with Photons From The.
CS216: Program and Data Representation University of Virginia Computer Science Spring 2006 David Evans Lecture 23: Review.
Welcome to CS61A Disc. 29/47 :D Dickson Tsai OH: Tu, Th 4-5pm 411 Soda Previous stop: None >>> Today: Working effectively in.
CS216: Program and Data Representation University of Virginia Computer Science Spring 2006 David Evans Lecture 3: Levels of Abstraction
1 CS1100 Fall Instructor: David Gries CS100M: Matlab No prior programming experience One semester of calculus Math & engineering type problems CS100J:
David Evans CS150: Computer Science University of Virginia Computer Science Lecture 36: Modeling Computing.
David Evans CS150: Computer Science University of Virginia Computer Science Class 38: Googling.
Unit 9: Distributing Computing & Networking Kaplan University 1.
Lecture 4 Page 1 CS 111 Online Modularity and Virtualization CS 111 On-Line MS Program Operating Systems Peter Reiher.
David Evans CS200: Computer Science University of Virginia Computer Science Lecture 15: Intractable Problems (Smiley.
Future Tense. Contrasting ‘will’ and future continuous.
David Evans Class 15: P vs. NP (Smiley Puzzles and Curing Cancer) CS150: Computer Science University of Virginia Computer.
CS 425/ECE 428 Distributed Systems Nitin Vaidya. T.A.s – Persia Aziz – Frederick Douglas – Su Du – Yixiao Lin.
CS216: Program and Data Representation University of Virginia Computer Science Spring 2006 David Evans Lecture 8: Crash Course in Computational Complexity.
Concurrent Programming Acknowledgements: Some slides adapted from David Evans, U. Virginia.
1 1.Log in to the computer in front of you –Temp account: 210class / 2.Update your in Cascadia's system –If I need to you I'll use.
David Evans CS150: Computer Science University of Virginia Computer Science Class 32: Computability in Theory and Practice.
Pitfalls: Time Dependent Behaviors CS433 Spring 2001 Laxmikant Kale.
Parallel and Distributed Programming: A Brief Introduction Kenjiro Taura.
Types of Operating System
Locking cs205: engineering software
Machine Architecture and Number Systems
EE 193: Parallel Computing
GMAIL AND YOUR BUSINESS!
Lecture 15: Concurring Concurrently CS201j: Engineering Software
Concurring Concurrently
cs205: engineering software
Mastering Interview Questions
Distributed Computing:
Notes from Last Class Office Hours: GL Accounts?
CS 580u Programming Systems and Tools
Presentation transcript:

David Evans CS150: Computer Science University of Virginia Computer Science Class 37: How to Find Aliens (and Factors)

2 CS150 Fall 2005: Lecture 37: Finding Aliens Finding Aliens Arecibo Antenna, Puerto Rico From

3 CS150 Fall 2005: Lecture 37: Finding Aliens Finding the Aliens for signal in signals: power = findPowerSpectrum (signal) if (isAlien (power)): print “Found an alien!” + signal

4 CS150 Fall 2005: Lecture 37: Finding Aliens Processing Signals Power spectrum Find patterns in signal Eliminate natural and human-made signals Today: –BlueGene, 280Tflops/s ~$200 per Gigaflop No success finding aliens Cray T3E-1200E (~1998) 1 Teraflop/s = Trillion floating point operations/sec

5 CS150 Fall 2005: Lecture 37: Finding Aliens Finding the Aliens Cheaper parfor signal in signals: power = findPowerSpectrum (signal) if (isAlien (power)): print “Found an alien!” + signal Note: python does not actually have parfor, but other languages do. Parallel for: instead of doing each element sequentially in order, we can do each element in parallel on a different machine.

6 CS150 Fall 2005: Lecture 37: Finding Aliens Public Distributed Computing Central Server (setiathome.berkeley.edu) Internet Millions of home PCs

7 CS150 Fall 2005: Lecture 37: Finding Aliens BOINC Client

8 CS150 Fall 2005: Lecture 37: Finding Aliens BOINC Manager

9 CS150 Fall 2005: Lecture 37: Finding Aliens Incentives are Necessary

10 CS150 Fall 2005: Lecture 37: Finding Aliens Incentives are Dangerous People will cheat* How to cheat? –Respond with the “there are no aliens” message without actually doing all the work Chances of getting caught? –0 (Assumes all jobs have no aliens. So far this is true.) * Only applies in real world, not at UVa.

11 CS150 Fall 2005: Lecture 37: Finding Aliens Preventing Cheaters Send the same job to multiple workers –Wastes computing –What if the cheater controls many machines? Instead of response being “no aliens” make clients send a response that proves they did computation Sometimes send out fake jobs that have aliens in them –Clients must find the fake aliens –Need to make sure the fake jobs look just like real jobs –(Airport security scanners work like this also) Doug Szajda and colleagues at University of Richmond work on these problems (see link on notes)

12 CS150 Fall 2005: Lecture 37: Finding Aliens Why is finding aliens so “easy”? Can be broken into many tasks Each task can be done completely independently –No shared memory between the tasks The data to describe a task and response is small compared to the computing jobs are 350KB data download, 1KB upload, 3.9 Trillion operations (several hours on PC) Note: we haven’t yet found any aliens, but its easy to set up the computation...

13 CS150 Fall 2005: Lecture 37: Finding Aliens “Harder” Task Dividing your PS8 project work among your team PS8 Update: you have 1 week left! If you do not have basic functionality working by tomorrow, arrange to meet with me

14 CS150 Fall 2005: Lecture 37: Finding Aliens Scheduling Meetings Alice wants to schedule a meeting with Bob and Colleen BobAliceColleen “When can you meet Friday?” “11am or 3pm” “9am or 11am” “Let’s meet at 11am” Reserves 11am for meeting Reserves 11am for meeting Picks meeting time

15 CS150 Fall 2005: Lecture 37: Finding Aliens Partial Ordering of Events Sequential programs give use a total ordering of events: everything happens in a determined order Concurrency gives us a partial ordering of events: we know some things happen before other things, but not total order Alice asks to schedule meeting before Bob replies Alice asks to schedule meeting before Colleen replies Bob and Colleen both reply before Alice picks meeting time Alice picks meeting time before Bob reserves time on calendar

16 CS150 Fall 2005: Lecture 37: Finding Aliens Race Condition BobAliceColleen “When can you meet Friday?” “9, 11am or 3pm” “9am or 11am” “Let’s meet at 11am” Picks meeting time Doug “When can you meet Friday?” “9, 11am or 3pm” “Let’s meet at 11am” Reserves 11am for Doug “I’m busy then…”

17 CS150 Fall 2005: Lecture 37: Finding Aliens Preventing Race Conditions Use locks to impose ordering constraints After responding to Alice, Bob reserves all the times in his response until he hears back (and then frees the other times)

18 CS150 Fall 2005: Lecture 37: Finding Aliens Locking BobAliceColleen “When can you meet Friday?” “9, 11am or 3pm” “9am or 11am” “Let’s meet at 11am” Picks meeting time Doug “When can you meet Friday?” “3pm” “Let’s meet at 3” Locks calendar

19 CS150 Fall 2005: Lecture 37: Finding Aliens Deadlocks BobAliceColleen “When can you meet Friday?” “9, 11am or 3pm” Doug “When can you meet Friday?” Locks calendar for Alice, can’t respond to Doug “When can you meet Friday?” Locks calendar for Doug, can’t respond to Alice Can’t schedule meeting, no response from Bob Can’t schedule meeting, no response from Colleen

20 CS150 Fall 2005: Lecture 37: Finding Aliens Why multiple processors is hard? Too few ordering constraints: race conditions Too many ordering constraints: deadlocks Hard/impossible to reason modularly –If an object is accessible to multiple threads, need to think about what any of those threads could do at any time! Worry: nearly all standard desktop computers will be multi-processors soon!

21 CS150 Fall 2005: Lecture 37: Finding Aliens Charge The easiest way to solve distributed scheduling problems is to “undistribute” them: –Find your teammates now and make sure you know what you are doing next week Wednesday: Google –Read the paper distributed today Friday: Review –Send me your questions and topic requests Monday: PS8 presentations/demos