CS210_305_01 - CIS Personal Web Pages

advertisement
CS.201
Computer Systems and Architecture
(Semester 1)
<http://spider.science.strath.ac.uk/spider/spider/sho
wClass.php?class=cs210>
and
CS.305
Computer Architecture
<local.cis.strath.ac.uk/teaching/ug/classes/CS.305>
Introduction
Duncan Smeed
Administrivia
Resources
Syllabus
Essential Reading
Lecture Notes
One-Minute Papers
Tutorials
Assessments
Pre-requisites
Recommended Reading/References
Exam Stats
Introduction
CS210_305_01/2
Resources
Web pages
Forum
E-mail
Introduction
CS210_305_01/3
Resources – Web pages [CS210]
 Official home page - SPIDER:
<http://spider.science.strath.ac.uk/spider/spider/
showClass.php?class=CS210>
 Major update announcements & class information:
<http://spider.science.strath.ac.uk/spider/spider/
showContent.php?class=CS210&category=info>
and in the CS210 Forum:
<https://local.cis.strath.ac.uk/forums/viewforum.p
hp?f=111>
Introduction
CS210_305_01/4
Resources – Web pages [CS305]
 Official home page:
<local.cis.strath.ac.uk/teaching/ug/classes/CS.305/>
 Primarily used for everything bar the assignment submission
system (see SPIDER below)
 Major update announcements:
<local.cis.strath.ac.uk/teaching/ug/classes/CS.305/news.
html>
and in the CS305 Forum:
<https://local.cis.strath.ac.uk/forums/viewforum.p
hp?f=96>
 SPIDER:
<spider.science.strath.ac.uk/spider/spider/showClass.p
hp?class=CS305>
 Really only used for assignment submissions
 Will contain links to the ‘official’ web pages
Introduction
CS210_305_01/5
Resources – Forum [CS210]
Official Forum
<https://local.cis.strath.ac.uk/forums/viewforum.p
hp?f=111>
 Integral part of class delivery content
• May contain examinable material
 Usual place for announcements, Q&A, etc.
Note: Please strive to keep the signal/noise
(S/N) ratio high!
Introduction
CS210_305_01/6
Resources – Forum [CS305]
Official Forum
<https://local.cis.strath.ac.uk/forums/viewforum.p
hp?f=96>
 Integral part of class delivery content?
• May contain examinable material
 Usual place for announcements, Q&A, etc.
Note: Please strive to keep the signal/noise
(S/N) ratio high!
Introduction
CS210_305_01/7
Resources – E-mail
 The official forums are the preferred(!?) method of einteraction…
… However, if you must use e-mail to contact me about
the class then please be aware of my…
… Filters and Spam Traps, so
 Please use the label [CS210] or [CS305] as part of the subject
line
 Best to use your official University or Departmental account
Introduction
CS210_305_01/8
Aim [CS210]
 To enable the student to develop a deeper understanding of typical
computer architectures and their instruction sets and the complex
tradeoffs between CPU clock speed, cache size, bus organization,
number of core processors, etc., that influence their design and
have a fundamental impact on their performance. The class will
also further the student’s knowledge of the need for, and the
design and implementation of, those other vital components of a
modern computer, namely memory and storage hierarchies,
operating systems and communication networks. The interactions
between many of these components will be investigated by means
of significant practical work that consolidates the lecture content in
the context of: (i) (instruction set) architecture, (ii) performance
evaluation, (iii) device interfacing, (iv) communications and (v)
operating system capabilities. Software developed in appropriate
programming languages will form the basis of much of the
practical work thus enabling the student to enhance their software
design and implementation skills in this domain.
[<www.strath.ac.uk/cis/localteaching/localug/cs210/>]
Introduction
CS210_305_01/9
Learning Outcomes [CS210]
 On completion of the class, a student should be able:
 Understand the key concepts that are likely to be included in
the design of any modern computer system.
 Understand and to evaluate the impact that programming
languages, their compilers and underlying operating systems
have on the design of computer systems.
 Understand and to apply the basic metrics and techniques by
which new and existing computer systems may be evaluated.
 Apply programming techniques made possible by languages
such as C to understand execution characteristics and
performance issues arising therefrom.
 Understand and to evaluate the impact that I/O devices and
networks, their interconnection and underlying data
operations have on the design of computer systems.
 …
Introduction
CS210_305_01/10
Learning Outcomes [CS210] (Cont’d)
 …
 Display knowledge of the fundamental techniques used in
operating systems and other systems software.
 Understand threading and concurrency mechanisms.
 Appreciate the need for memory management and to display
knowledge of concepts and techniques involved in virtual
memory management.
 Appreciate the resource requirements of multimedia
applications and the design, implementation, and operation
of high-performance computer/communication/operating
systems developed to meet these requirements.
Introduction
CS210_305_01/11
Syllabus [CS210]
 Introduction: historical overview; economic trends;
underlying technologies.
 Computer Performance: the metrics of performance; popular
performance metrics; comparing and summarising
performance.
 Instruction Set Design: Alternatives and Principles:
classifying instruction set architectures; operations in the
instruction set; type and size of operands; instruction
representations.
 Processor Implementation Techniques: processor datapath
and steps of execution; hardwired control; microprogrammed
control; interrupts; pipeline and superscalar
implementations.
 Memory Systems: principle of locality, principles of memory
hierarchy, caches, main memory, virtual memory.
 …
Introduction
CS210_305_01/12
Syllabus [CS210] (Cont’d)
 …
 Input/Output: I/O performance measures, types and
characteristics of I/O devices, buses: connecting I/O devices
to processor and memory, interfacing I/O devices to memory,
processor, and operating system.
 Networks: ISO 7-layer reference model in general and its
instantiation in TCP/IP; overview of Physical and Data Link
layer concepts; Internetworking and routing; transport layer
services.
 Operating Systems: basic concepts and structure
(concurrency, process and processor, system calls); virtual
machines.
Introduction
CS210_305_01/13
Aim [CS305]
 To help the student develop an understanding of the
nature and characteristics of the organisation and
design of the modern computer systems.
[<www.strath.ac.uk/cis/localteaching/localug/cs305/>]
Introduction
CS210_305_01/14
Learning Outcomes [CS305]
 On completion of the class, a student should be able:
 to understand the key concepts that are likely to be included
in the design of any modern computer system
 to understand and to apply the basic metrics by which new
and existing computer systems may be evaluated
 to understand and to evaluate the impact that languages,
their compilers and underlying operating systems have on
the design of computer systems
 to understand and to evaluate the impact that peripherals,
their interconnection and underlying data operations have on
the design of computer systems
 to demonstrate the techniques needed to conduct the design
of a computer
 to examine different computer implementations and assess
their strengths and weaknesses
Introduction
CS210_305_01/15
Syllabus [CS305]
 Introduction: historical overview, economic trends,
underlying technologies.
 Computer Performance: the metrics of performance, popular
performance metrics, comparing and summarising
performance.
 Instruction Set Design: Alternatives and Principles:
classifying instruction set architectures, operations in the
instruction set, type and size of operands, instruction
representations.
 Arithmetic Logic Unit: arithmetic and logic operations,
arithmetic and logic operands, constructing an arithmetic
logic unit.
 Basic Processor Implementation Techniques: processor
datapath, basic steps of execution, hardwired control,
microprogrammed control, interrupts.
 …
Introduction
CS210_305_01/16
Syllabus [CS305] (Cont’d)
 …
 Pipelining: pipelined datapaths, pipelined control, pipeline
hazards, pipeline implementations, taking advantage of more
instruction-level parallelism.
 Memory Systems: principle of locality, principles of memory
hierarchy, caches, main memory, virtual memory.
 Input/Output: I/O performance measures, types and
characteristics of I/O devices, buses: connecting I/O devices
to processor and memory, interfacing I/O devices to memory,
processor, and operating system.
Introduction
CS210_305_01/17
Essential Reading – Semester 1
 Essential Reading
<http://tinyurl.com/PandH4th>
Computer Organization and Design: The
Hardware/Software Interface, Fourth Edition
David Patterson, University of California, Berkeley
John Hennessy, Stanford University
 More textbook details at:
<local.cis.strath.ac.uk/teaching/ug/classes/CS.305/a
bout/textbook.html>
Introduction
CS210_305_01/18
Lecture Notes - Semester 1
 Distribution policy (on-line)
CS210:
<spider.science.strath.ac.uk/spider/spider/showContent.php
?class=CS210&category=lecture_slides>
CS305:
<local.cis.strath.ac.uk/teaching/ug/classes/CS.305/d
ownloads/>
 Occasionally handouts of complex slides/diagrams will
be distributed in (advance of) a lecture
 Slides only part of the story!
 Attending the lectures is highly recommended*
 Having (access to) the textbook is essential
* Note: It is now departmental policy to record attendance at
lectures, practicals and tutorials.
Introduction
CS210_305_01/19
One-Minute Papers
 This will be my 6th year of using OMPs to support the
teaching of my classes
 Handed out at the start of each lecture
 If I forget then please remind me!
 Collected in at the end of each lecture
 Please don’t forget to hand in your OMP!
 (Usually) Returned at a subsequent tutorial/practical
 E.g. used to kick-start a tutorial’s Q&A?
 OMP Bonus Scheme!
 Worth up to an additional 10% of the coursework contribution.
E.g. 10% * 20% => 2% of the overall assessment.
 Each OMP is given a mark between 1 and 3
① Neither of the questions answered
② Only one of the questions (sensibly!?)
③ Both questions answered (sensibly!?)
Introduction
CS210_305_01/20
One-Minute Paper… Questions
 There are two OMP questions:
Q1 What was the most important point made in the lecture today?
Q2 What are you still most unsure of as a result of the lecture?
 Please answer these questions as honestly as possible
 They are an invaluable, and immediate, source of feedback
 Answers to Q2 will help focus later lectures/tutorials on
common issues
 There may be a third question – typically a MCQ for
eliciting feedback. For instance:
Introduction
CS210_305_01/21
Practicals [CS210] – Semester 1
 Details/Links:
TBA
 Guidelines:
TBA
 Start Week 3* – Allocations announced in Week 2 –
Day/Time/Room:
 Mon/11:00-12:00/L12.01 (Kelvin Lab)
 Mon/13:00-14:00/L12.01 (Kelvin Lab)
 Tue/12:00-13:00/L12.01 (Kelvin Lab)
 There’s work to be done before, and in, each practical!
* CS210 students are encouraged to attend any lab in week 2
Introduction
CS210_305_01/22
Tutorials [CS305]
 Details/Links:
<local.cis.strath.ac.uk/teaching/ug/classes/CS.305/tut
orials/>
 Guidelines:
<local.cis.strath.ac.uk/teaching/ug/classes/CS.305/tut
orials/guidelines.html>
 Start Week 3 – Allocations announced in Week 2 –
Day/Time/Room:




Thu/11:00-12:00/GH450
Thu/12:00-13:00/Col430
Fri/12:00-13:00/Col430 (Weeks 3 & 4)
Mon/12:00-13:00/M212 (Weeks 5 onwards)
 There’s work to be done before, and in, each tutorial! E.g.
<local.cis.strath.ac.uk/teaching/ug/classes/CS.305/tut
orials/t01.html>
Introduction
CS210_305_01/23
Tutorials [CS305] (Cont’d)
 Encourage Learning with In-Tutorial Exercises
 Exercises attempted before/during/after tutorials are a vital
aspect of engaging with the class content.
 Most of the exercises will be derived from the end-of-chapter
exercises of the textbook.
 The more exercises attempted the better the level of
knowledge and understanding will be.
 Given the number of exercises that are set and the
importance of these, it is recommended that students
organise themselves into small self-help groups.
 I call these self-help groups “ELITE Teams” ;-)
Introduction
CS210_305_01/24
ELITE Teams [CS305]
 Composition
 Self-determined by the students
 Up to 4 students in each team
 Members of a team should be in the same tutorial group
 Organisation
 ELITE Teams are encouraged to meet on an ad-hoc, weekly,
basis outside the scheduled times for the CS305
lectures/tutorials. The time available in a tutorial will not be
enough!
 Members of the team are encouraged to share the workload
of answering the In-Tutorial Exercises. How this is done is up
to each team. There are several approaches…
 Justification & Motivation
 ELITE Team members will be able to discuss and answer
more questions/exercises than they could as individuals.
Introduction
CS210_305_01/25
Assessments
CS210 Exam in May 2011: 70%
CS305 Exam in Jan 2011: 80%
Coursework in Semester 1:
CS210(??%) & CS305 (20%):





Assessed Coursework Exercise #1
Assessed Coursework Exercise #2
Assessed Coursework Exercise Group Project
Class Test #1
Class Test #2
 Bonuses: ?%
 OMP Bonus Scheme!
 Bonus questions in ACEs?
Introduction
CS210_305_01/26
Assessed Coursework Exercises (ACEs)
 Assessed Coursework Exercise #1 (ACE #1)




Type: Individual Exercise
Weight: 100/? [CS210], 100/300 [CS305]
Set:
Monday, 11th October - Week 3
Due:
09:00 Monday, 8th November – Week 7
 Assessed Coursework Exercise #2 (ACE #2)




Type: Individual Exercise
Weight: 100/? [CS210], 100/300 [CS305]
Set:
Monday, 8th November - Week 7
Due:
09:00 Monday, 6th December - Week 11
Introduction
CS210_305_01/27
ACE Group Project - Semester 1
 Assessed Coursework Exercise Group Project




Type: Group Exercise
Weight: 100/? [CS210], 100/300 [CS305]
Set:
Monday, 15th November - Week 8
Due:
Friday, 17th December - Week 12
 ACE Groups
 Composition: Possibly the same as an ELITE Team for CS305
students. TBD for CS210 students.
 Operation:
TBD
Introduction
CS210_305_01/28
Class Tests - Semester 1
 Class Test #1 (CT #1)
 Type: In-lecture, 25 question, 20-minute, MCQ
 Weight: 50/? [CS210], 50/300 [CS305]*
 Set:
Thursday, 11th November - Week 7
 Class Test #2 (CT #2)
 Type: In-lecture, 25 question, 20-minute, MCQ
 Weight: 50/? [CS210], 50/300 [CS305]*
 Set:
Thursday, 9th December - Week 11
* The total mark from the assessments is 300 and is calculated from
the best mix of ACE #1, ACE #2, CT #1 and CT #2 marks added to
the ACE Group Project mark. I.e. the combined mark for CT #1 and
CT #2 may be used to compensate for the poorest #ACE mark if
this gives a better total. The Group Project mark cannot be
compensated.
Introduction
CS210_305_01/29
Feedback Mechanisms
 Marked work and/or marking schemes
 As appropriate
 Sample solutions
 Online and/or covered in lectures/tutorials/practicals
 Forum Q&As
 But remember this is not a ‘distance learning’ class!
 One-Minute Papers
 Help focus later lectures/tutorials/practicals on common
issues
 Class Tests
 Correct answers given in the lecture following the class test
 Tutorials/Practicals
 Worked exercises and solutions to (some) exercises
Introduction
CS210_305_01/30
Pre-requisites [CS210]
Note recommended pre-requisites for CS210:
 CS106 Computer Systems and Organisation or
CS107 Fundamentals of Computer Systems
Introduction
CS210_305_01/31
Pre-requisites [CS305]
Note recommended pre-requisites for the
class:
 52 139 Computer Organisation
 52 223 Low Level Programming
Introduction
CS210_305_01/32
Lectures [CS210]
Tue 14:00-15:00, K325 & Thu 14:00-15:00, R667
 Weeks 1-4:
 Bringing CS210 students up to speed on 52.223-related
material
 Weeks 5-12: Co-taught with CS305 cohort in CS210
lecture slots
Introduction
CS210_305_01/33
Lectures [CS305]
 Weeks 1-4:
Mon 12:00-13:00, M212 & Fri 11:00-12:00, McC3
 Bringing CS305 students up to speed on CS106/107-related
material
 Weeks 5-12: Co-taught with CS210 cohort in CS210
lecture slots:
Tue 14:00-15:00, K325 & Thu 14:00-15:00, R667
Introduction
CS210_305_01/34
Recommended Reading/References
1. Computer Organization and Design: The
Hardware/Software Interface, Fourth Edition
by David Patterson & John Hennessy
<http://tinyurl.com/PandH4th>
2. CS107 Lecture Notes (2009-2010)
Available (restricted access) from:
<spider.science.strath.ac.uk/spider/spider/showClass
.php?class=CS107&category=lecture_slides>
3. 52.139 (Duncan's version) Lecture Notes
Available (restricted access) from:
<local.cis.strath.ac.uk/teaching/ug/classes/CS.305/d
ownloads/>
4. 52.223 Lecture Notes
Available (restricted access) from:
<local.cis.strath.ac.uk/teaching/ug/classes/52.223/d
ownloads/>
Introduction
CS210_305_01/35
Exam Stats [CS305]
 Out of curiousity I have analysed the exam results
from the first diet CS305 exams for past cohorts.
 In particular, I was curious to see if the attendances at
lectures and tutorials were a good predictor of
performance in the exam. So, here are the raw stats
so you can draw your own conclusions.
 Key:




Introduction
#l = number of lectures
#s = number of students
#t = number of tutorials
#p = number of students passing the first diet exam
CS210_305_01/36
Exam Stats [CS305] – AY 2006/2007 - Details
 By lecture attendance






#l
23
21-22
16-20
9-15
<9
#s
13
20
23
8
9
#p
13
19
17
4
3
Mean
69.3
65.1
60.0
44.7
34.3
Std.Dev
17.2
14.5
21.4
15.9
22.0
Mean
67.8
53.8
41.1
Std.Dev
16.2
19.0
21.9
 By tutorial attendance




Introduction
#t
8-9
5-7
<5
#s
28
28
17
#p
27
21
7
CS210_305_01/37
Exam Stats [CS305] – AY 2007/2008 - Details
 By lecture attendance






#l
23
21-22
16-20
9-15
<9
#s
16
16
21
16
2
#p
16
14
17
5
1
Mean
64.5
47.0
48.0
32.6
27.0
Std.Dev
12.8
10.8
12.8
13.2
24.0
Mean
56.3
48.8
41.6
31.0
Std.Dev
16.0
13.2
14.9
12.9
 By tutorial attendance





Introduction
#t
9
8
5-7
<5
#s
25
19
21
5
#p
22
17
13
1
CS210_305_01/38
Exam Stats [CS305] – AY 2008/2009 - Details
 By lecture attendance






#l
22
20-21
15-19
10-14
<10
#s
7
23
23
5
5
#p
6
20
21
5
2
Mean
57.6
60.3
55.6
62.6
51.5
Std.Dev
13.9
16.1
15.6
12.2
9.5
Mean
64.8
59.5
54.9
58.1
46.2
Std.Dev
13.5
16.9
13.2
14.6
12.6
 By tutorial attendance






Introduction
#t
10
9
8
5-7
<5
#s
12
17
14
12
8
#p
12
15
12
11
4
CS210_305_01/39
Exam Stats [CS305] – AY 2009/2010 - Details
 By lecture attendance






#l
22
20-21
15-19
10-14
<10
#s
6
19
28
3
3
#p
6
16
24
1
1
Mean
68.5
57.1
50.2
34.7
14.5
Std.Dev
10.3
14.7
15.1
19.2
16.9
Mean
56.4
54.1
50.6
44.9
Std.Dev
17.4
13.8
17.8
18.1
 By tutorial attendance





Introduction
#t
9
8
5-7
<5
#s
18
13
20
8
#p
15
10
17
4
CS210_305_01/40
Exam Stats [CS305] – Summaries
 AY2006/2007 – 73 Students:
 Number of students that passed at first attempt: 56
 Number of students absent from exam: 4
 Average exam mark: 57.1%, Std. dev. of exam marks: 20.8
 AY2007/2008 – 74 Students
 Number of students that passed at first attempt: 53
 Number of students absent from exam: 4
 Average exam mark: 47.6%, Std. dev. of exam marks: 17.2
 AY2008/2009 – 63 Students:
 Number of students that passed at first attempt: 54
 Number of students absent from exam: 3
 Average exam mark: 58.1%, Std. dev. of exam marks: 15.4
 AY2009/2010 – 63 Students:
 Number of students that passed at first attempt: 48
 Number of students absent from exam: 4
 Average exam mark: 52.4%, Std. dev. of exam marks: 17.3
Introduction
CS210_305_01/41
One more thing…
Introduction
CS210_305_01/42
Download