23
S. Reda EN2912C Fall ‘ 08 EN2912C: Future Directions in Computing Lecture01: Introduction Prof. Sherief Reda Division of Engineering Brown University Fall 2008

EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

S. Reda EN2912C Fall ‘ 08

EN2912C: Future Directions in Computing�Lecture01: Introduction�

Prof. Sherief Reda�Division of Engineering�

Brown University�Fall 2008

Page 2: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

S. Reda EN2912C Fall ‘ 08

Lecture outline

•  Introduction to technology scaling and integrated circuits •  Introduction to computational complexity •  Class objectives •  Topics covered in the class •  Class organization

Page 3: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

Technology scaling

Moore’s Law. The number of transistors in an integrated circuit doubles every 18 - 24 months.

Quad core from Intel: ~600 million transistors in 286

mm2

If a pond lily doubles everyday and it takes 30 days to completely cover a pond, on what day will the pond be 1/2 covered?

• For how long will this trend continue?

Page 4: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

Introduction to MOS-based IC technology

An integrated circuit integrates millions of semiconductor switches (transistors) and wires in a small area (few mm2 → few cm2).

CMOS IC is the state-of-the-art technology for computing

Page 5: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

The transistor is a switch

J. Bardeen, W. Brattain and W. Shockley

Page 6: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

How can switches and wires perform computations?

•  Switches are used perform simple logic gates (and, or, not). •  Logic gates can be interconnected with wires to perform any

computable function

gates

circuit

G. Boole

C. Shannon

Page 7: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

How does an IC look like from the inside?

transistors

wires

R. Noyce J. Kilby

Page 8: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

S. Reda, Brown University

The five paradigms of exponential growth of computing

[From R. Kurzweil]

What is the next paradigm?

Page 9: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

What kind of future technology will substitute current supercomputers by a laptop?

Google data center in Iowa under construction

Univac 1952 [ 1k flops] Price $1.5 million

[38 gigaflops]

[ATI Radeon HD 4870 X2 2.4 tera flops]

IBM road runner 2008 1.7 petaflops

$133 million ~ 20000 cell/Opteron CPUs

6000 square foot

peta- P 1015 250

exa- E 1018 * 260

zetta- Z 1021 * 270

yotta- Y 1024 * 280

Possible & cheap by year ????

Page 10: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

Why do we need better computers/computing paradigms?

Protein folding Weather simulations

Lots of computational demanding applications…

TSP problem CAD problems

Page 11: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

S. Reda, Brown University

Futuristic applications

•  Can one day the human brain be simulated on one integrated chip? •  Imagine your brain surviving as a software. •  List does not end, but we can classify applications according to

their computational demand!

Page 12: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

S. Reda, Brown University

Introduction to P and NP problems

[Figure from Wikipedia]

•  NP: consists of all those decision problems whose positive solutions can be verified in polynomial time given the right information, or equivalently, whose solution can be found in polynomial time on a non-deterministic machine.

•  NP-hard problems are those to which any problem in NP can be reduced in polynomial time.

•  NP-complete: NP-hard problems which are in NP.

Page 13: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

S. Reda, Brown University

Notable P problems •  Matrix multiplication O(n2.807) and O(n2.376) •  Linear Programming •  Maximum weighted matching O(V2log(V) + VE)

Notable NP problems •  Integer factorization. Important part in many crypto

algorithms. No algorithm can factor in polynomial time. For a number N of b bits, complexity is

Page 14: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

S. Reda, Brown University

NP-hard problems

•  NP-complete problems have no known fast solutions to them; that is, the time required to solve the problem using any currently known algorithm increases very quickly as the size of the problem grows.

•  Examples of NP-hard problems: Travelling Salesman Problem and Boolean Satisfiability

•  Example: Formula with n = 100 variables. There are 1.2e30 possible assignment. If each assignment takes 1ns then it will take us way more than age of universe is (4.1e17 s) to finish the computations.

•  What will be the impact of new computing technologies on the computational complexity of problems?

Page 15: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

S. Reda EN2912C Fall ‘ 08

Main topics covered in the class

•  Fundamental physical limits to technology scaling

•  Near-Term Computing Technologies

•  New computing paradigms:

•  Quantum computing

•  Biochemical computing

Page 16: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

Objectives of class •  Understand the physical limits of computation.

•  Survey technologies that will likely dominate computing in the next 20-30 years.

•  Understand computing hierarchy from applications, algorithms to architectures, circuits and devices. Assuming technology X is available, how can we use it to design better computers and algorithms than we have today?

•  Focus on computational concepts that are applicable to many technologies.

Page 17: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

S. Reda EN2912C Fall ‘ 08

1. Fundamental Limits to Technology Scaling

1.  Switching energy limitations 2.  Switching time limitations 3.  Thermal limitations 4.  Noise limitations 5.  Technology limitations 6.  Thermodynamics of computation and reversible

computing

Computers are physical systems. The laws of physics dictate their capabilities

[Maxwell’s Demon. Image from Wikipedia]

Page 18: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

[source: Welser IBM]

Example of paradigm shifts in integrated circuit technology due to physical constraints

Page 19: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

S. Reda EN2912C Fall ‘ 08

2. Near-Term Computing Technologies

•  Nanotube/Graphene devices

•  Single-electron devices

•  Computing with lights: Photonic networks

•  Computing in the 3rd dimension: 3D ICs

[from future-fab.com]

Page 20: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

S. Reda EN2912C Fall ‘ 08

3. Long-Term Computing Technologies:�Quantum computing

•  Qubits

•  Foundations of quantum computing

•  Quantum circuit & algorithm

•  Deutsch algorithm

•  Grover’s algorithm

•  Schor’s algorithm

•  Quantum error correction

•  Physical implementations of quantum computers

Page 21: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

S. Reda EN2912C Fall ‘ 08

4. Long-Term Computing Technologies: �DNA-based (Biochemical) computing

•  Brief introduction to molecular biology

•  Molecular DNA-based computation of combinatorial problems

•  Molecular Turing machines

•  Universal Computation via self assembly of DNA

•  In-vivo autonomous molecular computing

Page 22: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

S. Reda EN2912C Fall ‘ 08

Background required for the class

mathematics

biology computer science

engineering

physics chemistry

Future Computing Techniques

Page 23: EN2912C: Future Directions in Computing Lecture01 ...scale.engin.brown.edu/classes/EN2912C/lecture01.pdf · • Understand computing hierarchy from applications, algorithms to architectures,

S. Reda EN2912C Fall ‘ 08

Class organization

•  Class participation 10%

•  Paper surveys and HWs 40%

•  Class project 50%

Suggested references