420 likes | 556 Views
CS.201 Computer Systems and Architecture (Semester 1) <http://spider.science.strath.ac.uk/spider/spider/showClass.php?class=cs210> and CS.305 Computer Architecture <local.cis.strath.ac.uk/teaching/ug/classes/CS.305>. Introduction Duncan Smeed. Administrivia. Resources Syllabus
E N D
CS.201Computer Systems and Architecture(Semester 1)<http://spider.science.strath.ac.uk/spider/spider/showClass.php?class=cs210>andCS.305Computer 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
Resources • Web pages • Forum • E-mail Introduction
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.php?f=111> Introduction
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.php?f=96> • SPIDER: <spider.science.strath.ac.uk/spider/spider/showClass.php?class=CS305> • Really only used for assignment submissions • Will contain links to the ‘official’ web pages Introduction
Resources – Forum [CS210] • Official Forum <https://local.cis.strath.ac.uk/forums/viewforum.php?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
Resources – Forum [CS305] • Official Forum <https://local.cis.strath.ac.uk/forums/viewforum.php?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
Resources – E-mail • The official forums are the preferred(!?) method of e-interaction… … 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
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
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
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
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
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
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
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
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
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
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/about/textbook.html> Introduction
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/downloads/> • 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
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
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
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
Tutorials [CS305] • Details/Links: <local.cis.strath.ac.uk/teaching/ug/classes/CS.305/tutorials/> • Guidelines: <local.cis.strath.ac.uk/teaching/ug/classes/CS.305/tutorials/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/tutorials/t01.html> Introduction
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
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
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
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
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
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
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
Pre-requisites [CS210] • Note recommended pre-requisites for CS210: • CS106 Computer Systems and Organisation or CS107 Fundamentals of Computer Systems Introduction
Pre-requisites [CS305] • Note recommended pre-requisites for the class: • 52 139 Computer Organisation • 52 223 Low Level Programming Introduction
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
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
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/downloads/> 4. 52.223 Lecture Notes Available (restricted access) from: <local.cis.strath.ac.uk/teaching/ug/classes/52.223/downloads/> Introduction
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: • #l = number of lectures • #s = number of students • #t = number of tutorials • #p = number of students passing the first diet exam Introduction
Exam Stats [CS305] – AY 2006/2007 - Details • By lecture attendance • #l #s #p Mean Std.Dev • 23 13 13 69.3 17.2 • 21-22 20 19 65.1 14.5 • 16-20 23 17 60.0 21.4 • 9-15 8 4 44.7 15.9 • <9 9 3 34.3 22.0 • By tutorial attendance • #t #s #p Mean Std.Dev • 8-9 28 27 67.8 16.2 • 5-7 28 21 53.8 19.0 • <5 17 7 41.1 21.9 Introduction
Exam Stats [CS305] – AY 2007/2008 - Details • By lecture attendance • #l #s #p Mean Std.Dev • 23 16 16 64.5 12.8 • 21-22 16 14 47.0 10.8 • 16-20 21 17 48.0 12.8 • 9-15 16 5 32.6 13.2 • <9 2 1 27.0 24.0 • By tutorial attendance • #t #s #p Mean Std.Dev • 9 25 22 56.3 16.0 • 8 19 17 48.8 13.2 • 5-7 21 13 41.6 14.9 • <5 5 1 31.0 12.9 Introduction
Exam Stats [CS305] – AY 2008/2009 - Details • By lecture attendance • #l #s #p Mean Std.Dev • 22 7 6 57.6 13.9 • 20-21 23 20 60.3 16.1 • 15-19 23 21 55.6 15.6 • 10-14 5 5 62.6 12.2 • <10 5 2 51.5 9.5 • By tutorial attendance • #t #s #p Mean Std.Dev • 10 12 12 64.8 13.5 • 9 17 15 59.5 16.9 • 8 14 12 54.9 13.2 • 5-7 12 11 58.1 14.6 • <5 8 4 46.2 12.6 Introduction
Exam Stats [CS305] – AY 2009/2010 - Details • By lecture attendance • #l #s #p Mean Std.Dev • 22 6 6 68.5 10.3 • 20-21 19 16 57.1 14.7 • 15-19 28 24 50.2 15.1 • 10-14 3 1 34.7 19.2 • <10 3 1 14.5 16.9 • By tutorial attendance • #t #s #p Mean Std.Dev • 9 18 15 56.4 17.4 • 8 13 10 54.1 13.8 • 5-7 20 17 50.6 17.8 • <5 8 4 44.9 18.1 Introduction
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
One more thing… Introduction