1
00:00:00,025 --> 00:00:03,726
Welcome to the encore offering of Computer
Architecture.

2
00:00:03,726 --> 00:00:06,260
I'm David Wentzlaff, I'm a professor

3
00:00:06,260 --> 00:00:08,850
at the Princeton Department of Electrical
Engineering.

4
00:00:08,850 --> 00:00:11,620
And my background is building mini core
and

5
00:00:11,620 --> 00:00:16,210
multi core microprocessors both in
academia and in industry.

6
00:00:16,210 --> 00:00:17,920
And for example, this is one of the

7
00:00:17,920 --> 00:00:21,100
microprocessors that I built while I was
in industry.

8
00:00:21,100 --> 00:00:25,100
And this is actually a 64 core multi-core
microprocessor.

9
00:00:25,100 --> 00:00:28,980
And that's actually put onto something
like this board here.

10
00:00:28,980 --> 00:00:33,890
And you can see actually that that chip is
under this heat sink on this board here.

11
00:00:35,220 --> 00:00:37,210
And in this course, you're going to be
learning how to

12
00:00:37,210 --> 00:00:41,660
build processors with, sort of complexity
on the order of this.

13
00:00:41,660 --> 00:00:46,360
We're not, in this course, trying to teach
you how to build basic processors.

14
00:00:46,360 --> 00:00:50,750
We will overview basic processors and
basic in order pipeline processors,

15
00:00:50,750 --> 00:00:54,070
but instead, in this course, we'll go into
much more detail about how to build

16
00:00:54,070 --> 00:00:57,010
out of order sequential processors, how do

17
00:00:57,010 --> 00:00:59,890
you build more advanced things, like
advanced caches?

18
00:00:59,890 --> 00:01:02,620
How do you go about building vector
processors?

19
00:01:02,620 --> 00:01:03,610
How do you exploit different

20
00:01:03,610 --> 00:01:06,469
types of parallelism, like instructional
parallelism?

21
00:01:06,469 --> 00:01:08,090
Thread level parallelism?

22
00:01:08,090 --> 00:01:11,429
Process level parallelism?
Vector parallelism, etc.?

23
00:01:11,429 --> 00:01:16,000
We'll also be going into detail about how
to build cache coherent systems.

24
00:01:16,000 --> 00:01:17,500
And at the end of the course, we'll be

25
00:01:17,500 --> 00:01:20,750
talking about how to build multi-core and
many-core microprocessors.

26
00:01:20,750 --> 00:01:24,090
And I wanted to point out that this course
is an advanced computer architecture

27
00:01:24,090 --> 00:01:26,990
course, so we'll be going into much more
detail, and we're going to be learning

28
00:01:26,990 --> 00:01:29,660
how to build the inner working components,

29
00:01:29,660 --> 00:01:31,610
for instance all the different structures
and

30
00:01:31,610 --> 00:01:32,810
all the different algorithms you need in

31
00:01:32,810 --> 00:01:36,020
order to build these advanced modern-day
microprocessors.

32
00:01:36,020 --> 00:01:37,650
And we won't be spending as much time
looking at

33
00:01:37,650 --> 00:01:41,430
how to build processors let's say from 20
or 30

34
00:01:41,430 --> 00:01:42,430
years ago.

35
00:01:42,430 --> 00:01:44,570
So in this on core offering, we're
going to

36
00:01:44,570 --> 00:01:47,010
be extending where we were for our first
offering.

37
00:01:47,010 --> 00:01:50,530
And in our first offering we had over
100,000 students registered.

38
00:01:50,530 --> 00:01:51,960
And this was really successful.

39
00:01:51,960 --> 00:01:53,555
We were very encouraged by this.

40
00:01:53,555 --> 00:01:56,480
And we want this offering to be just as
successful.

41
00:01:56,480 --> 00:01:58,830
So please, tell your friends.

42
00:01:58,830 --> 00:02:01,719
If you're sitting here at the beginning of
this class, watching this video, and

43
00:02:01,719 --> 00:02:06,510
saying I know of a friend who might
actually be helped by this course.

44
00:02:06,510 --> 00:02:07,070
Let them know.

45
00:02:07,070 --> 00:02:08,900
If they're interested in the field, let
them know.

46
00:02:08,900 --> 00:02:11,290
Also if you're taking a computer
architecture

47
00:02:11,290 --> 00:02:13,850
course at another university, and you
want to

48
00:02:13,850 --> 00:02:17,520
use a supplemental materials, please sign
up and tell your friends to sign up.

49
00:02:17,520 --> 00:02:20,190
We try to make this course also useful for

50
00:02:20,190 --> 00:02:23,130
people who are currently taking a course
at other Universities.

51
00:02:24,410 --> 00:02:27,840
So let's stop and take a look at the
philosophy of this course.

52
00:02:27,840 --> 00:02:32,010
So in this course we're trying to have a
high quality course

53
00:02:32,010 --> 00:02:34,540
similar to what we have at Princeton.

54
00:02:34,540 --> 00:02:37,310
And this course is going to be rigorous,
so we're going to use good

55
00:02:37,310 --> 00:02:41,678
text books, have hard problems, have a
hard mid-term and a hard final.

56
00:02:41,678 --> 00:02:44,710
Now the trade-off here is that because
this course is going to be

57
00:02:44,710 --> 00:02:47,790
so rigorous you're going to learn a lot
and it's going to be very rewarding.

58
00:02:47,790 --> 00:02:51,350
But unlike, you know, other courses where
it

59
00:02:51,350 --> 00:02:53,670
might just be a survey level course, this

60
00:02:53,670 --> 00:02:55,472
is going to go into the details, and the

61
00:02:55,472 --> 00:02:57,180
trade off there is you're going to learn
and

62
00:02:57,180 --> 00:03:00,880
be able to apply this information in the
future of your life.

63
00:03:00,880 --> 00:03:04,700
I wanted to, while we were talking about
rigor and sort of what goes about

64
00:03:04,700 --> 00:03:09,090
into a course, I want to talk about the
two recommended textbooks for this course.

65
00:03:09,090 --> 00:03:12,160
So the first recommended textbook is this
one here.

66
00:03:12,160 --> 00:03:14,225
It's called Patterson and Hennessy.

67
00:03:14,225 --> 00:03:16,820
you see that the two authors are Patterson
and Hennessey and

68
00:03:16,820 --> 00:03:22,360
the title of the book is Computer
Architecture A Quantitative Approach.

69
00:03:22,360 --> 00:03:25,920
We're going to be using the fifth edition
of this book, but

70
00:03:25,920 --> 00:03:28,360
for those of you who, and I highly
recommend the fifth edition.

71
00:03:28,360 --> 00:03:31,140
But for those of you who are not able to
acquire the

72
00:03:31,140 --> 00:03:34,420
fifth edition or it's too expensive you're
going, you can also go

73
00:03:34,420 --> 00:03:37,070
about and try to get the fourth edition of
the book, which

74
00:03:37,070 --> 00:03:41,930
has we'll, we'll be posting equivalent
pages out of the fourth edition.

75
00:03:41,930 --> 00:03:43,280
If they are valuable.

76
00:03:43,280 --> 00:03:44,990
So there's some topics which are covered
only in

77
00:03:44,990 --> 00:03:49,140
the fifth edition, but not in the fourth
edition.

78
00:03:49,140 --> 00:03:51,720
also I wanted to say we will also be
posting

79
00:03:51,720 --> 00:03:55,250
if there's a particular question that we
assign from a textbook.

80
00:03:55,250 --> 00:03:58,680
We'll be paraphrasing or, or copying the
entire question on there.

81
00:03:58,680 --> 00:04:01,680
We've had permission from the publisher to
do that.

82
00:04:01,680 --> 00:04:03,180
The second book for this course we're
going to be

83
00:04:03,180 --> 00:04:09,000
using is called Modern Processor Design
Fundamentals of Super-scalar Processors.

84
00:04:09,000 --> 00:04:11,190
And we'll be talking about this as or

85
00:04:11,190 --> 00:04:14,620
we'll be mentioning this and we coined
this Shennon-Leposty

86
00:04:14,620 --> 00:04:17,650
book because these are the two authors of
this textbook.

87
00:04:17,650 --> 00:04:19,770
I did want to point out that this version
here

88
00:04:19,770 --> 00:04:23,920
which has a blue cover and is hardcover
has recently fallen

89
00:04:23,920 --> 00:04:27,150
out of print as McGraw-Hill, who is the
publisher, but it

90
00:04:27,150 --> 00:04:31,470
is being reissued by Wyvern Press in a
cheaper, paperback edition.

91
00:04:31,470 --> 00:04:34,550
the paperback edition is going to have the
white cover and will be released very

92
00:04:34,550 --> 00:04:36,730
soon and we'll post more details about
that

93
00:04:36,730 --> 00:04:39,260
on the course website when it becomes
available.

94
00:04:42,390 --> 00:04:44,610
For those of you who are joining in the
middle of

95
00:04:44,610 --> 00:04:47,690
this course, we want to encourage you to,
to jump right in.

96
00:04:48,840 --> 00:04:51,230
the mid term and the final we will have
open for

97
00:04:51,230 --> 00:04:54,110
long periods to take the exams and also to
grade the exams.

98
00:04:55,370 --> 00:04:57,290
But if you are just coming in the middle
and

99
00:04:57,290 --> 00:04:59,470
you're like say joining like a week before
the midterm or

100
00:04:59,470 --> 00:05:02,720
after the midterm we'll be posting the
answers to those

101
00:05:02,720 --> 00:05:08,160
but we unfortunately can't have like
infinite numbers of midterms and

102
00:05:08,160 --> 00:05:10,400
finals with full grading turned on.

103
00:05:10,400 --> 00:05:12,360
So you're more than welcome to come join
the course.

104
00:05:12,360 --> 00:05:13,310
Use it as a self study.

105
00:05:13,310 --> 00:05:18,830
And we'll also be including after the
course

106
00:05:18,830 --> 00:05:20,580
completes, we'll be leaving it open for
self study.

107
00:05:20,580 --> 00:05:23,720
And for instance if you missed the midterm
but you make it

108
00:05:23,720 --> 00:05:28,090
to this course for the final feel free to
take the final.

109
00:05:28,090 --> 00:05:30,540
so, while this is the encore offering of
the course, I

110
00:05:30,540 --> 00:05:33,650
wanted to talk a little bit about how
we've improved this course

111
00:05:33,650 --> 00:05:35,280
since the first offering.

112
00:05:35,280 --> 00:05:38,790
So, we'll actually we've re-taped several
of the lectures,

113
00:05:38,790 --> 00:05:42,660
and we've fixed many different errata in
the slides.

114
00:05:42,660 --> 00:05:46,030
And while I was speaking about errata, I
wanted to encourage you if you find

115
00:05:46,030 --> 00:05:48,230
an error, somewhere in the course
material,

116
00:05:48,230 --> 00:05:51,340
please log in and use the course forums.

117
00:05:51,340 --> 00:05:54,730
Go to the course material errors forum,
and look through and

118
00:05:54,730 --> 00:05:57,510
see, make sure that the error has not
already been posted.

119
00:05:57,510 --> 00:05:58,780
But if it hasn't, please let

120
00:05:58,780 --> 00:05:59,050
us know.

121
00:05:59,050 --> 00:06:03,000
We really want to try to make this as best
as possible, this course.

122
00:06:03,000 --> 00:06:05,640
So please go in there and post the
problems, and

123
00:06:05,640 --> 00:06:07,360
we'll try to get 'em fixed as soon as
possible.

124
00:06:08,890 --> 00:06:11,120
while I'm on the topic of forums, I also
wanted to

125
00:06:11,120 --> 00:06:16,730
talk about, language and region specific
meet up groups, or study groups.

126
00:06:16,730 --> 00:06:19,950
We have a location on our forums where
people can meet up and try

127
00:06:19,950 --> 00:06:23,530
to post in there if they are from a
specific region or specific language.

128
00:06:23,530 --> 00:06:24,240
I unfortunately

129
00:06:24,240 --> 00:06:25,020
only speak English.

130
00:06:25,020 --> 00:06:27,545
So I'm not going to be able to answer your
questions in another language.

131
00:06:27,545 --> 00:06:30,510
But, your fellow students might be able to
help.

132
00:06:30,510 --> 00:06:33,710
And it might actually help if you will,
you know, are able

133
00:06:33,710 --> 00:06:38,130
to discuss the different problems in the
course, in a different, language.

134
00:06:38,130 --> 00:06:40,230
So, look onto that website.

135
00:06:40,230 --> 00:06:43,140
and look under the forum in that specific,
sub portion of

136
00:06:43,140 --> 00:06:46,110
the forum to post and try to form meet up
groups.

137
00:06:46,110 --> 00:06:49,040
In our first offering, we actually had.
Several, actually,

138
00:06:49,040 --> 00:06:51,050
physical meet up groups in different
countries.

139
00:06:51,050 --> 00:06:53,880
And we had language specific discussions
that were

140
00:06:53,880 --> 00:06:56,440
quite in depth about problems, of this
course.

141
00:06:56,440 --> 00:06:57,990
And it, from what we've heard, it

142
00:06:57,990 --> 00:07:00,930
really help different, students from
around the world.

143
00:07:02,410 --> 00:07:06,220
Also, one of the things I wanted to talk
about is surveys.

144
00:07:06,220 --> 00:07:09,020
And this is a difference from our first
time, offering this course.

145
00:07:09,020 --> 00:07:12,590
This time around, we're actually going to
be sending you surveys.

146
00:07:12,590 --> 00:07:13,930
and at a regular basis.

147
00:07:13,930 --> 00:07:16,920
So we want to be in the course we want to
probably work for

148
00:07:16,920 --> 00:07:19,585
the mid term one right after the mid term
and a couple at the end.

149
00:07:19,585 --> 00:07:24,260
And these of course are optional you don't
have to go and fill these out.

150
00:07:24,260 --> 00:07:26,410
But what we're trying to do is we're
trying to understand

151
00:07:26,410 --> 00:07:29,410
where the students who are taking our
course are coming from.

152
00:07:29,410 --> 00:07:33,000
Both in location but also background and
preparation.

153
00:07:33,000 --> 00:07:36,550
And one of the reasons we're doing this is
to better tune the course for the future.

154
00:07:36,550 --> 00:07:38,335
And make the course much better in the
future.

155
00:07:38,335 --> 00:07:39,320
But also,

156
00:07:39,320 --> 00:07:41,560
we're trying to research, and actively
figure out

157
00:07:41,560 --> 00:07:44,670
how to better teach computer architecture
in the future.

158
00:07:44,670 --> 00:07:46,540
And also just about how to teach in a

159
00:07:46,540 --> 00:07:49,150
massively open online course environment
better in the future.

160
00:07:50,620 --> 00:07:52,710
Finally, I wanted to talk about.

161
00:07:52,710 --> 00:07:54,470
Princeton Electrical Engineering
Department.

162
00:07:54,470 --> 00:07:57,620
And all the very strong computer
engineering and

163
00:07:57,620 --> 00:08:00,890
computer architecture faculty members at
Princeton electrical engineering.

164
00:08:00,890 --> 00:08:04,180
So if you're going and taking this course,
and you're really enjoying the course.

165
00:08:04,180 --> 00:08:05,190
And you're learning.

166
00:08:05,190 --> 00:08:08,090
And you're, you say, I want to continue
doing this in the future.

167
00:08:08,090 --> 00:08:12,320
And if you're, for instance, a senior in
undergraduate.

168
00:08:12,320 --> 00:08:14,600
Please apply to Princeton Electrical
Engineering.

169
00:08:14,600 --> 00:08:16,330
Come and, learn.

170
00:08:16,330 --> 00:08:20,140
And figure out how to build better and
better microprocessors in the future.

171
00:08:20,140 --> 00:08:22,740
We currently have, five faculty member.

172
00:08:22,740 --> 00:08:24,660
Both in the electrical engineering

173
00:08:24,660 --> 00:08:25,486
department, and the computer science
department.

174
00:08:25,486 --> 00:08:28,260
Who focus on, computer architecture.

175
00:08:28,260 --> 00:08:30,770
So we have.
Tens of graduate students and

176
00:08:30,770 --> 00:08:34,343
also, as I said, five computer
architecture

177
00:08:34,343 --> 00:08:37,120
faculties and computer engineering is
located in

178
00:08:37,120 --> 00:08:39,710
the electrical engineering department, so
please come

179
00:08:39,710 --> 00:08:43,570
and apply to the electrical engineering
department.

180
00:08:43,570 --> 00:08:47,450
We also have circuits professors and a
bunch of software professors over

181
00:08:47,450 --> 00:08:51,390
in the computer science department, and we
are a top ranked school.

182
00:08:51,390 --> 00:08:55,890
Our submission deadline for application
process is December 15th.

183
00:08:55,890 --> 00:08:58,710
Thank you, and I look forward to having a
very successful course with you.

