Introduction to Embedded Computing Systems
Davide Bertozzi davide.bertozzi@unife.it
Introduction to Embedded Computing Systems Davide Bertozzi - - PowerPoint PPT Presentation
Introduction to Embedded Computing Systems Davide Bertozzi davide.bertozzi@unife.it How Does a Computer Solve Problems? Orchestrating Electrons! Problems There is an abstraction gap inbetween! Electrons How Do Problems Get Solved by
Davide Bertozzi davide.bertozzi@unife.it
2
Problems Electrons There is an abstraction gap inbetween!
Progressive transformations bridge the abstraction gap. “Computer Architecture” has been historically defined in terms
Software: program coded in high-level programming language, later
changed into lower-level instructions (that hardware can understand)
Microarchitecture: design an architecture explicitly to execute software
programs and instructions.
Today, a broader definition of “computer architecture” is
becoming mainstream for better performance and energy efficiency.
3
Computer Architecture (narrow view) Micro-architecture SW/HW Interface Program/Language Algorithm Problem Logic Devices System Software Electrons Computer Architecture (expanded view)
is the science and art of designing computing platforms
(hardware, interface, system SW, and programming model)
to achieve a set of design goals
E.g., highest performance on earth on workloads X, Y, Z E.g., longest battery life at a form factor that fits in your
pocket with cost < $$$ Euros
E.g., best average performance across all known workloads at
the best performance/cost ratio
…
Designing a supercomputer is different from designing a smartphone But, many fundamental principles are similar!
4
5
Battery-operated Wall-plugged
6
Some of these devices are powered by a PortalPlayer PP5021C "system-on-chip" with dual embedded variable speed 80 MHz ARM 7TDMI processors. For video decoding, these models use a Broadcom VideoCore BCM2722 processor.
(90x40x6.9mm) (42 grammi)
Power: roughly 85mW for music You want more playback time? You would have to replace the 1.2W/hour battery with a better one. This wouldn’t be «nano» any more!
7 From 14 hours to 24 hours of audio playback time
8
First 64-bit application processor, from Huawei. From hundreds of mWs to several Watts
9
The typical power consumption of a laptop is in the order of tens of Watts (Thermal design power = 15W for the CPU)!
10
Size = 275 x 53 x 305mm Weight = 2.8kg AMD Jaguar Architecture 8 CPU cores @ 1.6GHz and GPU on the same chip.
The power consumption of desktop computers ranges from 5 to 250 Watts for PCs without monitors (there are models outside of this range, but this is an average). Workstations may consume more energy. Desktop monitors are typically 20 Watts (not including CRT or LED-backlit models).
Computers have a maximum wattage on their power supply unit (PSU) which is usually well over 300 Watts (and over 1,000 Watts in the case of some high performance models). However, this wattage rating is the peak power output of the PSU, not the power consumption. The power consumption of computers varies significantly due to two key factors: Usage, and which parts are in them.
11
12
Average power while flying of DJI Phantom 3 Standard: 123 W Power of drones ranges from a few Watts to a few kWs (e.g., for agricultural drones). Take-off weigth ranges from 1kg to tens of kgs, but extreme design points are feasible with a few tens grams as opposed to more than 100kg.
13
The electronic engine control unit (ECU) is the central controller and heart of the engine management system. It controls the fuel supply, air management, fuel injection and ignition. Depending on the ECU, power may range from mW to 100’s W
14 Several governments (especially US and China) are competing to achieve 1 Exa-Flop/s
15
Europe consumes roughly 33% of the world supercomputing resources, but offers only 5% of these resources. This is a european dependency that has to be broken.
Italy will host one of the pre-exascale class computers funded by the European Commission in the context of EuroHPC, a joint collaboration between European countries and the European Union about developing and supporting exascale supercomputing by 2022/2023.
The decision was taken by the Governing Board of the EuroHPC Joint Undertaking, in Luxembourg, on June, 7th 2019, where three different hosting sites for pre-exascale systems were selected: Bologna (Italy), Barcelona (Spain) and Kajaani (Finland). This is of potential interest to almost 800 scientific and industrial applications.
The LEONARDO project in Bologna aims to be among the top-5 supercomputers in the world, with 150 PFlops of peak performance.
Expected power of 9MW.
240Mln € investment
1500+ m2 footprint
3+PB RAM
150PB of storage
200Gb/s interconnection bandwidth
stems from a collaboration between Cineca, the Italian Ministry of Education, University and Research (MIUR), the National Institute of Nuclear Physics (INFN) and the International School
16
17 Self-driving cars Huge amount of computation requirements are making car
computers similar to small “mobile supercomputers”.
“Autonomous vehicles are the equivalent of supercomputers rolling down the highway, generating and transmitting a mind-boggling volume of data,” Rich Miller
High Performance Computing (HPC) traditionally exists as a separate and distinct discipline from enterprise data center computing.
Both use the same basic components—servers, networks, storage arrays—but are optimized for different types of applications.
Those within the data center are largely transaction-oriented while HPC applications crunch numbers and high volumes of data.
Data center applications:
Data storage, management, backup and recovery
Productivity applications, such as email
High-volume e-commerce transactions
Powering online gaming communities
Big data, machine learning and artificial intelligence 18
However, emerging data center applications are demanding HPC technologies:
Data-driven, customer-facing online services are advancing rapidly in many industries, including financial services (online trading, online banking), healthcare (patient portals, electronic health records), and travel (booking services, travel recommendations).
To extract better economic value from their data, enterprises can now more fully enable machine learning and deep neural networks by integrating HPC technologies. At the same time, artificial intelligence services (e.g., training) are increasingly demanded by customers (e.g., big data analytics in the Internet-of-Things).
As enterprise cloud infrastructures continue to grow in scale while delivering increasingly sophisticated big data analytics, we will see a move toward new architectures that closely resemble those employed by modern HPC applications
19
Google TPU (Tensor Processing Unit) Acceleration of neural networks in Google datacenters. Good example of why we need to think across the stack. 20
To achieve the highest energy efficiency and performance:
21
Micro-architecture SW/HW Interface Program/Language Algorithm Problem Logic Devices System Software Electrons
Co-design across the hierarchy: Algorithms to devices Specialize as much as possible within the design goals
22
J.L.Hennessy, D.A.Patterson, «Computer Architecture: a Quantitative Approach», Sixth Edition, Elsevier 2018 Highest SPECCPUint performance per year for 32-bit and 64-bit processor cores
What to do next? One example: specialized processing engines for different application workloads
24