How do Computers Compute so Fast? Michael Shah Follow me on - - PowerPoint PPT Presentation

how do computers compute so fast
SMART_READER_LITE
LIVE PREVIEW

How do Computers Compute so Fast? Michael Shah Follow me on - - PowerPoint PPT Presentation

How do Computers Compute so Fast? Michael Shah Follow me on Twitter: @MichaelShah Michaeldshah.net (coming soon) goandcode.com Pop Quiz (opportunity) What is the fastest route from the Asgard to Fenway Park? longer than blinking an


slide-1
SLIDE 1

How do Computers Compute so Fast?

Michael Shah Follow me on Twitter: @MichaelShah Michaeldshah.net (coming soon) goandcode.com

slide-2
SLIDE 2

Pop Quiz (“opportunity”)

What is the fastest route from the Asgard to Fenway Park?

slide-3
SLIDE 3
slide-4
SLIDE 4
slide-5
SLIDE 5

longer than blinking an eye (~0.1 seconds)

slide-6
SLIDE 6

Twice as long as a baseball pitch (~0.55 seconds)

slide-7
SLIDE 7

Time it takes for a single heartbeat (~1 second)

slide-8
SLIDE 8

But How? And Why?

slide-9
SLIDE 9

Search is the most important problem of today

Depiction of the Library of Alexandria

slide-10
SLIDE 10

The Why - “Why should you care” The how - “How does Search work Fast”

slide-11
SLIDE 11

Why should you care?

Picture of you here!

slide-12
SLIDE 12

Reason #1 - TIme

slide-13
SLIDE 13

The internet is big - Filter when searching

Use <.pdf to find pdfs Use quotations “” to find exact phrases Use “-” to omit results Use “and” to search for two terms

slide-14
SLIDE 14

Reason # 2 - Understanding Search, helps you understand your brain

slide-15
SLIDE 15

Another “Opportunity” Quiz - Associations

What do you immediately think

  • f when I say the word “red”
slide-16
SLIDE 16

Computer Science Term - Map (or Hashmap)

Red Heart Rose Love Red Sox :)

slide-17
SLIDE 17

How?

slide-18
SLIDE 18

Google* -- Builds Associations too-- and that’s cool!

In order to make search run fast 1. Information is indexed (associations are made) 2. Information is filtered and ranked

*Bing, Yahoo, and every other good search engine.

slide-19
SLIDE 19

Pop Quiz #3 - Which water craft is faster?

slide-20
SLIDE 20

On the right side!

slide-21
SLIDE 21

Parallelism

slide-22
SLIDE 22

More than 1 computer

slide-23
SLIDE 23

Remember, the Internet is big!

slide-24
SLIDE 24

Burj Khalifa!

slide-25
SLIDE 25

Problems we can solve in Parallel = Increased Speed

What we like about the ‘search’ problem, is that it scales. Want more speed? Add more computers. (If a big problem cannot be solved in parallel, still maybe parts of it can!)

slide-26
SLIDE 26

How to find a needle in a haystack Fast?

slide-27
SLIDE 27

Add more Eyes (Or more needles)

slide-28
SLIDE 28

Concurrency - Slightly different from Parallelism

Definition: Multiple things can happen at once, the order matters, and sometimes things have to wait. Computer Science Definition: In computer science, concurrency is the property of program,

algorithm, or problem decomposability into order-independent or partially-ordered components or units.

slide-29
SLIDE 29

Concurrency -- as heard in music

slide-30
SLIDE 30

Good Concurrency = Good Conversation

slide-31
SLIDE 31

Computers Talking Concurrently

Equivalent to Problems in Your Daily Life

slide-32
SLIDE 32

Challenge # 1 - Consistency

slide-33
SLIDE 33

Barrier Synchronization

slide-34
SLIDE 34
slide-35
SLIDE 35

Wait, What? -- Stay on topic will ya

Interruptions are bad!

slide-36
SLIDE 36

Challenge # 2 - Context Switching

Interruptions are bad! Context switching is expensive!

slide-37
SLIDE 37

Challenge # 3 - Over Synchronization

slide-38
SLIDE 38

Over Synchronization - Slows down progress

slide-39
SLIDE 39

Remember, this presentation is about you!

slide-40
SLIDE 40

Go ahead buy the 2+ Processors(cores)

slide-41
SLIDE 41

Evidence - Select Task Manager

slide-42
SLIDE 42

Question, how many processors do you (a human) have?

slide-43
SLIDE 43

Lesson Learned -- Building associations

slide-44
SLIDE 44

Lesson Learned -- You are not an entire orchestra

slide-45
SLIDE 45

Think about what is scalable in your daily life

Where is the bottleneck? Can throwing more people at the problem make it faster?

slide-46
SLIDE 46

So where is this leading us? -- Future of Tech

slide-47
SLIDE 47

So where is this leading us? -- Future of Tech

slide-48
SLIDE 48

My Ph.D. Research*

*Hunting for Post-doc and Faculty positions in < 1 year

slide-49
SLIDE 49

Thank you for attending: “Pinte de la Science”

(^Pint of Science in French)

slide-50
SLIDE 50

How do Computers Compute so Fast?

Michael Shah Follow me on Twitter: @MichaelShah michaeldshah.net (coming soon) goandcode.com

slide-51
SLIDE 51

https://en.wikipedia.org/wiki/Google_platform (Check out bioinformatics post) http://stackoverflow. com/questions/132359/how-can-google-be-so-fast

slide-52
SLIDE 52

Resources

https://en.wikipedia.org/wiki/Google_platform

slide-53
SLIDE 53

Google Search Result

slide-54
SLIDE 54

That’s pretty tall

slide-55
SLIDE 55

A lot of results ... in a very little time!

slide-56
SLIDE 56
slide-57
SLIDE 57

Lessons learned

Is it easier to have a thousand different tasks, or one task a thousand times? Computers scale well for simple tasks (just like you) Remember, not to overcomplicate things however! A computer with the power of a calculator sent the first men to the

  • moon. Stay focused!
slide-58
SLIDE 58