inside the machine an introduction to architecture
play

Inside the Machine: An Introduction to Architecture, Parallelism - PowerPoint PPT Presentation

Inside the Machine: An Introduction to Architecture, Parallelism & its Applications Soumyabrata Dev The ADAPT SFI Research Centre https://soumyabrata.github.io/ UCD - Beijing-Dublin International College (BDIC) 7-May-2019 The ADAPT Centre


  1. Inside the Machine: An Introduction to Architecture, Parallelism & its Applications Soumyabrata Dev The ADAPT SFI Research Centre https://soumyabrata.github.io/ UCD - Beijing-Dublin International College (BDIC) 7-May-2019 The ADAPT Centre is funded under the SFI Research Centres Programme (Grant 13/RC/2106) and is co-funded under the European Regional Development Fund.

  2. Course Overview www.adaptcentre.ie Course website is available here: https://www.scss.tcd.ie/~devs/bdic.html

  3. www.adaptcentre.ie (1/3) Computer Architecture

  4. Computer Components www.adaptcentre.ie At the most basic level, a computer is a device consisting of three pieces: ● A processor to interpret and execute programs ● A memory to store both data and programs ● A mechanism for transferring data to and from the outside world.

  5. How computer understands our code? www.adaptcentre.ie

  6. www.adaptcentre.ie (2/3) Pipelining

  7. Laundry Example www.adaptcentre.ie ● Ann, Brian, Cathy, Dave each have one load of clothes to wash, dry, and fold. ● Washer takes 30 minutes. ● Dryer takes 40 minutes. ● Folder takes 20 minutes.

  8. Sequential Processing www.adaptcentre.ie ● Sequential laundry takes 6 hours for 4 loads. ● If they learned pipelining, how long would laundry take?

  9. Pipelined Processing www.adaptcentre.ie ● Pipelined laundry takes 3.5 hours for 4 loads.

  10. Thoughts on pipelining www.adaptcentre.ie ● Pipelining doesn't help latency of single task, it helps throughput of entire workload. ● Pipeline rate limited by slowest pipeline stage. ● Multiple tasks operating simultaneously using different resources. ● Potential speedup = Number pipe stages.

  11. Use of Pipelining in computer www.adaptcentre.ie ● Instruction-level parallelism (ILP) is a measure of how many operations in a computer program can be performed. “in parallel” at the same time.

  12. Activity Time www.adaptcentre.ie Consider the following program: e = a + b f = c + d m = e*f ● Suppose, each instruction takes 1 unit of time to complete. ● Sequential processing = 3 units of time ● How much time needed, if I employ ILP here?

  13. Types of parallelism www.adaptcentre.ie Three major categories to exploit parallelism: ● Instruction-level parallelism Multiple instructions from one instruction stream are executed simultaneously. ● Thread-level parallelism Multiple instruction streams are executed simultaneously. ● Vector data parallelism The same operation is performed simultaneously on arrays of elements.

  14. www.adaptcentre.ie (3/3) High Performance Computing

  15. HPC: Powering Deep Learning www.adaptcentre.ie 1 “Are AI/Machine Learning/Deep Learning in Your Company’s Future?”, insideBigData + NVIDIA 2 EMC Digital Universe with Research & Analysis by IDC

  16. HPC Application www.adaptcentre.ie HPC technology is implemented in multidisciplinary areas including: ● Biosciences ● Geoscience and remote sensing data ● Oil and gas industry modeling ● Electronic design automation ● Climate modeling ● Media and entertainment

  17. HPC Application www.adaptcentre.ie HPC technology is implemented in multidisciplinary areas including: ● Biosciences ● Geoscience and remote sensing ● Oil and gas industry modeling ● Electronic design automation ● Climate modeling ● Media and entertainment

  18. Thank You The ADAPT Centre is funded under the SFI Research Centres Programme (Grant 13/RC/2106) and is co-funded under the European Regional Development Fund.

Recommend


More recommend