Return to Video

Digging Holes - Intro to Parallel Programming

  • 0:00 - 0:04
    Good morning, afternoon, or evening wherever you happen to be.
  • 0:04 - 0:08
    This is John, and I'll be presenting Unit 1. So let's get started.
  • 0:08 - 0:12
    Like a lot of American kids, when I was probably 6 years old I tried to dig a hole to China.
  • 0:12 - 0:14
    I know I'm not the only kid who tried this.
  • 0:14 - 0:18
    In general, you can probably conclude that American kids are a, ambitious,
  • 0:18 - 0:20
    and b, not particularly good at geography,
  • 0:20 - 0:22
    at least when they're six years old.
  • 0:22 - 0:25
    Needless to say I was not successful. Why?
  • 0:25 - 0:29
    Besides having the attention span of a gnat, I just couldn't dig a hole fast enough.
  • 0:29 - 0:33
    The question I'd like to pose today is how could you dig a hole faster?
  • 0:33 - 0:38
    I also meant there's 3 ways I could have gone faster. One, dig faster.
  • 0:38 - 0:42
    Instead of, say, removing one shovelful of dirt every 2 seconds
  • 0:42 - 0:45
    maybe with a lot of effort I could have removed 1 shovelful every second.
  • 0:45 - 0:49
    This certainly would help, but I think we can all agree that there's a limit to this speeding up.
  • 0:49 - 0:53
    It's not likely I could go ten times as fast no matter how hard I work.
  • 0:53 - 0:56
    My shovel would probably explode.
  • 0:56 - 0:58
    Two: buy a more productive shovel.
  • 0:58 - 1:03
    Let's say a shovel with two or even three blades instead of one. An interesting approach.
  • 1:03 - 1:05
    Perhaps a better shovel would make me more productive.
  • 1:05 - 1:10
    But again, I think we can agree there's diminishing returns in making shovels better.
  • 1:10 - 1:14
    It's not likely I could use a 10- or 20-bladed shovel.
  • 1:14 - 1:16
    And number 3, hire more diggers.
  • 1:16 - 1:20
    I have a younger sister and a brother. Perhaps I could have persuaded them to help me dig faster.
  • 1:20 - 1:26
    This is probably the approach that would have been most productive overall toward my whole digging project.
  • 1:26 - 1:28
    Of course, adding more diggers comes with it's own problems.
  • 1:28 - 1:31
    How do I manage them? Will they get in each other's way?
  • 1:31 - 1:35
    Will more diggers help me dig my hole deeper instead of just wider?
  • 1:35 - 1:39
    Well, as you probably figured out I am not just talking about digging holes.
  • 1:39 - 1:45
    Each of these three methods for digging holes faster has a parallel in terms of building a faster processor.
  • 1:45 - 1:49
    When I talk about digging faster I'm actually talking about asking
  • 1:49 - 1:54
    our processor should run with the faster clock to spend a shorter amount of time on each step of a
    computation.
  • 1:54 - 1:59
    However, in a modern processor turning up clock speed also increases power consumption
  • 1:59 - 2:03
    and we're the limit as far as power consumption on a chip.
  • 2:03 - 2:05
    When I talk about buying a more productive shovel,
  • 2:05 - 2:10
    I'm actually talking about asking our processor to do more work on each step, on each clock cycle.
  • 2:10 - 2:13
    But like the super shovel, a single processor has also reached
  • 2:13 - 2:16
    diminishing returns on how much work it can do per cycle.
  • 2:16 - 2:20
    To be a little more technical, the most advanced CPUs are at a limit,
  • 2:20 - 2:24
    as far as how much instruction-level parallelism they can extract per clock cycle.
  • 2:24 - 2:27
    And when I talk about hire more diggers,
  • 2:27 - 2:31
    I'm referring to parallel computing in a way that we hope to teach you in this class.
  • 2:31 - 2:37
    Instead of having one fast digger with an awesome shovel, we're going to have many diggers with many shovels.
  • 2:37 - 2:40
    Instead of having one or just a few very powerful processors,
  • 2:40 - 2:44
    we're going to have many, many weaker, less powerful processors.
タイトル:
Digging Holes - Intro to Parallel Programming
概説:

more » « less
Video Language:
English
Team:
Udacity
プロジェクト:
CS344 - Intro to Parallel Programming
Duration:
02:46
Udacity Robot edited 英語(米国) subtitles for 01-03 Digging Holes
Udacity Robot edited 英語(米国) subtitles for 01-03 Digging Holes
Stacy Taylor edited 英語(米国) subtitles for 01-03 Digging Holes
Stacy Taylor edited 英語(米国) subtitles for 01-03 Digging Holes
Cogi-Admin added a translation

English subtitles

改訂 Compare revisions