P1 EC351 Computer Systems Computer Engineering University of Tripoli Spring 2015 Instructor Muharrem Drebi P2 Course Outline GENERAL INFORMATION Course Code and Name: EC351 Computer Systems, 3 credits. Prerequisite: EC251 Location: Room 213. Schedule: 9:30AM-10:45AM Saturday and Tuesday. Instructor: Muharrem Drebi. Email: m.drebi@ec.uot.edu.ly Class web site: http://ec.uot.edu.ly/~mmdrebi/ec351/ Computer Engineering Department, University of Tripoli EC351 Computer Organization, Instructor: Muharrem Drebi P3 Course Outline Description: Computer Organization is an introductory course to computer systems, the course provides an overview of computer hardware components such as processors, memory subsystems, I/O devices and computer software like assembly language, operating systems, compilers, assemblers and linkers. The course also talks about the interface between hardware and software and the interactions that occurs between them. OBJECTIVES Get a basic understanding on the computer system Internal structure, its units and how they interact and work together. Get a basic understanding on computer performance measures Get a basic understanding on how computer system executes a program from C to machine language. Learn to code simple programs in assembly language to access computer hardware. SCHEDULE (subject to change) • Assignments: we may have a weekly assignment. • Two midterms and final. Computer Engineering Department, University of Tripoli EC351 Computer Organization, Instructor: Muharrem Drebi P4 Course Outline GRADING 15% For first Midterm, 15% for Second Midterm, 20% for Quizzes/Project/Homework and 50% Final Exam. COURSE MATERIALS Computer Organization and Design, THE HARDWARE/SOFTWARE INTERFACE by David A. Patterson and John L. Hennessy 5th Edition 2014 Chapters to be covered in this semester are 1, 2,3, 4 and selected topics from Chapter 5 and 6. Some useful material from selected sites on the Internet. Computer Engineering Department, University of Tripoli EC351 Computer Organization, Instructor: Muharrem Drebi P5 Computer Engineering Department, University of Tripoli EC351 Computer Organization, Instructor: Muharrem Drebi P6 What we should learn from this class? Understanding how a C or a high level language program get translated into machine language instructions and how the hardware executes them will help us understand the hardware and software that affects program performance. How can we improve program performance? Why Intel & AMD are shifting from Process scaling or process shrinking and new architectures to the Many Integrated Core (MIC) architecture? Ex. Intel 50 core on one single die! Knights Corner Computer Engineering Department, University of Tripoli EC351 Computer Organization, Instructor: Muharrem Drebi P7 Introduction Computer components Computers can be regarded as systems of interconnected functional units controlled by a main Central Processing Unit or the CPU or simply the processor. The five classic components of a computer are 1) Input 2) Output 3) Memory 4) Datapath Processor 5) Control with the last two sometimes combined and called the processor. Computer Engineering Department, University of Tripoli EC351 Computer Organization, Instructor: Muharrem Drebi P8 Introduction Computer classification Computers can be classified by size, function, cost, tolerance, power consumption, Processor type : Desktop computer :is for personal use and has high tolerance for failure. Server: is for multiple users, the server is accessed via network and with low tolerance to failure. Supercomputer: is a subclass of servers with High performance computing power (HPC) and very low tolerance for failure. Embedded computer: is a computer with a predefined specific function integrated inside another device. Low cost and lowest tolerance for failure. Workstation computer: is a subclass of desktop computers with much higher performance and much higher cost. Computer Engineering Department, University of Tripoli EC351 Computer Organization, Instructor: Muharrem Drebi P9 Computers Manufactured per year Computer Engineering Department, University of Tripoli EC351 Computer Organization, Instructor: Muharrem Drebi P10 Embedded processors in the world Computer Engineering Department, University of Tripoli EC351 Computer Organization, Instructor: Muharrem Drebi P11 Introduction Processor Microarchitectures Classification Processor microarchitectures can be classified along multiple orthogonal dimensions. Pipelined/Nonpipelined Processors: Pipelined processors split the execution of each instruction into multiple phases, allowing processing of different instructions in different phases simultaneously. Instruction level parallelism (ILP) In-Order/Out-of-Order Processors: OOO processors execute instructions non sequentially, allowing more free resources and increased ILP. Computer Engineering Department, University of Tripoli EC351 Computer Organization, Instructor: Muharrem Drebi P12 Introduction Processor Microarchitectures Classification Scalar/Superscalar Processors: Superscalar processors execute more than 1 instruction at the same time in each pipeline stage. Very Long Instruction Word or VLIW is a special case of a superscalar processor. Intel's Itanium, instructions dependencies are resolved by the compiler. GPUs are VLIW Vector Processors: They operate on many operands called vectors. Example: Intel AVX extensions with Single Instruction Multiple Data instructions or SIMD instructions. Computer Engineering Department, University of Tripoli EC351 Computer Organization, Instructor: Muharrem Drebi P13 Introduction Processor Microarchitectures Classification Multicore Processors: More than one processing unit or core, Intel I7 is a four core processor. Multithreaded Processors: Execute simultaneously more than one thread per core. Computer Engineering Department, University of Tripoli EC351 Computer Organization, Instructor: Muharrem Drebi P14 Where we are? And where we are heading? Multi core processors: Packing as many cores as possible. Issues ? Interconnect congestion, Latency, Power, Cache Coherency, Parallel programming. Solutions? Network On Chip (NOC), optical NOCs. Low power: NUDT the world fastest supercomputer (as of Nov 2013) with 33.863 petaFLOPS and is consuming ~8.2 MegaWatt and uses 18,688 AMD Opteron 6274 16-core CPUs and 18,688 Nvidia Tesla K20X GPUs . 1 petaFLOPS=1015 FLOPS http://en.wikipedia.org/wiki/Titan_(supercomputer) 3D chips ? Intel 3D transistors already presented in 2011 Nanoscale silicon Photonics for optical NOC interconnects. Intel recent breakthrough in silicon Photonics . (~ 50Gbps) Exascale supercomputers: 1018 FLOPS ~ Year ->2020. Quantum computing, Qbits! Year->2030s or 2040s? Or ???? Computer Engineering Department, University of Tripoli EC351 Computer Organization, Instructor: Muharrem Drebi P15 TOP 10 Super Computers in the world Computer Engineering Department, University of Tripoli EC351 Computer Organization, Instructor: Muharrem Drebi P16 TOP 10 Super Computers in the world Computer Engineering Department, University of Tripoli EC351 Computer Organization, Instructor: Muharrem Drebi