Upload
shannon-underwood
View
214
Download
1
Embed Size (px)
Citation preview
1
Cpt_S 260: Lecture 1: Introduction
• This week’s topics:
logistics information technology trends (new applications) why computer architecture? modern trends affecting processor design assessing computer performance
2
Logistics
• See class web-page http://eecs.wsu.edu/~hassan/cs260
• TA: – Yuchen Hou ([email protected])– Office: Sloan 330– Office hours: Tuesday & Thursday 12:50pm to 2:50pm
• Textbook: Computer Organization – HW/SW Interface, Patterson and Hennessy, 4rd edition
3
Course Organization
• Grading• 15% midterm1 (late September)• 20% midterm2 (late October)• 30% final• 35% assignments
• See class web site for tests exact date/location
• ~10 assignments – assignments due at the start of class (either paper or electronic)
• Co-operation policy: you may discuss – you may not see someone else’s written matter when writing your solution
4
Computer Revolution
• Smart phones• Smart watches• Smart cars• Smart homes• Google glass• Wearable sensor networks• Genome sequencing• Internet• Search Engines• Future glass technologies
– https://www.youtube.com/watch?v=jZkHpNnXLB0
5
Embedded Processors Evolution
• 91% of adults have a cell phone today! (according to PEW project survey)
• Embedded processors are becoming part of our everyday life
6
Why Computer Architecture?
• Yes, I know, required class…
7
Why Computer Organization
• Embarrassing if you are a BS in CS and can’t make sense of the following terms: DRAM, pipelining, cache hierarchies, I/O, virtual memory
• Embarrassing if you are a BS in CS and can’t decide which processor to buy: 3 GHz P4 or 2.5 GHz Athlon (helps us reason about performance/power)
• Obvious first step for chip designers, compiler/OS writers
• Will knowledge of the hardware help me write better programs?
8
Must a Programmer Care About Hardware?
• Memory management: if we understand how/where data is placed, we can help ensure that relevant data is nearby
• Thread management: if we understand how threads interact, we can write smarter multi-threaded programs
Why do we care about multi-threaded programs?