did we achieve the goals for this course? what did we learn? comp251: computer architecture john...
TRANSCRIPT
![Page 1: Did we achieve the goals for this course? What did we learn? COMP251: Computer Architecture John MacCormick](https://reader035.vdocuments.mx/reader035/viewer/2022072112/56649f045503460f94c17971/html5/thumbnails/1.jpg)
Did we achieve the goals for this course? What did we learn?
COMP251: Computer ArchitectureJohn MacCormick
![Page 2: Did we achieve the goals for this course? What did we learn? COMP251: Computer Architecture John MacCormick](https://reader035.vdocuments.mx/reader035/viewer/2022072112/56649f045503460f94c17971/html5/thumbnails/2.jpg)
Did we achieve our goals?
• According to the syllabus, the goals were:– Gain an understanding of the aspects of computer
hardware that are most important for effective computer programming
– Gain an understanding of the aspects of computer hardware needed for studying computer networks and operating systems
– Achieve a high level of technical writing skills– Have fun writing computer programs and playing with
some cool simulation tools• Did we achieve them? You decide!
![Page 3: Did we achieve the goals for this course? What did we learn? COMP251: Computer Architecture John MacCormick](https://reader035.vdocuments.mx/reader035/viewer/2022072112/56649f045503460f94c17971/html5/thumbnails/3.jpg)
What did we learn?
• We learned a lot of technical stuff about computers, but here are some more high-level lessons that might help you be a better computer scientist:– Numerical computations have important limitations
• Integers are finite and can overflow• Floating point numbers are imprecise
– Multi-threaded software requires synchronization• And we need to understand instruction sets to see why this is necessary
– Efficient software must be aware of the memory hierarchy and storage hierarchy• Use sequential access when possible• Preserve locality when possible