Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
Operating System Support for
Multiprocessor Systems-on-Chip
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
Agenda
1. Introduction
2. Adaptive System + Shop Architecture
3. Preliminary Results
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
I
NTRODUCTION
Network Processing Unit
RISC Power Managem. Router RAM
EASI
LY
SCAL
ABL
E
HOMOGENEOUS PLATFORM DISTRIBUTED MEMORY HETEROGENEOUS PLATFORMS SHARED MEMORY Video Accelerator Audio Accelerator MemoryCPU ManagementPower
Bridge USB UART Bluetooth Webcam GPIO
HAR
DLY
SCAL
ABL
E
HOMOGENEOUS / HETEROGENEOUS PLATFORMS
Homogeneous
Heterogeneous
Performance
Power
Flexibility
Programmability
ADAPTATIONInstitute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
A
RCHITECTURES IN THE MARKET
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
Context
Telecom MultimediaDomain-specific
… CPU DSP DSP RAM I/O OS Telecom Multi média•
Centralized control (GPP)
•
Specialized ISPs, ASIPs
•
Static task mapping
•
Bus-like interconnect
Homogeneous Adaptive Distributed Heterogeneous Static Centralized Homogeneous Dynamic Centralized•
Centralized control (OS)
•
Symmetric multicore
•
D
ynamic load balancing
•
High-freq. memory & Bus
•
Array of tiny scalar ISP w. private RAM
•
Interconnected through a NoC
•
Adaptive
•
DVFS
•
Dynamic Task Mapping
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
S
HOP
Self-adaptive Homogeneous Platform
Network Processing Unit
NPU
RISC Power Management Router RAMTask N
...
Task 2
Task 1
RTOS
Distributed Memory Message Passing (State of the art)
Task Migration
Frequency Scaling
2 1 3 4
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
S
HOP OS
Operating System
1
2
Features:
NPU
Task
Ports
3
4
192.168.1.3
4
1000, 1001
192.168.1.2
3
1000
Step 1: Registering Tasks
192.168.1.1
2
1000
1001
1
Step 2: Requesting Task Location
Step 3: Receiving Task Location
192.168.1.3
4
1000, 1001
Step 4: Establishing the Link
Tiny, preemptive OS with dynamic loader
Scheduler based on thread priorities
Communication between local and remote threads
Use of RAW/UDP/TCP IP connection to ensure
reliable communication
Possible use of a self-adaptive RAW/UDP/TCP IP
protocol
Frequency scaling
DMA support
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
S
HOP OS
Operating System
1
4
NPU
Task
Ports
192.168.1.3
4
1000, 1001
192.168.1.2
3
1000
Step 1: T4 is selected to be migrated
192.168.1.1
2
1000
1001
1
Step 4: Sending information to the master node
Step 5: Removing T4 entry from routing table
Step 6: Migrating T4 to NPU 192.168.2.3
Routing Table (Master node)
3
2
Task Migration
Step 7: Sending new position to the master node
Step 8: Registering T4 in the routing table
192.168.2.3
4
1000, 1001
Step 2: Sending information to the sender tasks
Step 3: Stopping sending packets to T4
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
S
HOP OS
Operating System
1
2
RAW/UDP/TCP protocol
Fault
Packet Lost
Protocol Speed QoS
Raw High No
UDP/IP Medium No TCP/IP Low Yes
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
S
HOP
OS
software
Applications
software
Processor
hardware
Router
hardware
FPGA
SystemC
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
Platforms for validation
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
Platforms for validation
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
M
ETRICS AND VALIDATION FLOW
PROFILING
APPLICATION
SPLITTING
ANSI C CODE
PROCESSING REQUIREMENTS
SNAPSHOT
TASK GRAPH WITH
PROCESSING COST
ANSI C CODE + API
SPLIT APPLICATION
SPLIT APPLICATION
PERFORMANCE MEASUREMENT
NEW
STATIC
MAPPING
INITIAL
STATIC
MAPPING
ANSI C CODE
+ API
SPLIT APPLICATION
PERFORMANCE MEASUREMENT
NEW
DYNAMIC
MAPPING
INITIAL
STATIC
MAPPING
ANSI C CODE
+ API
PERFORMANCE SMi
PERFORMANCE DMI
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
SYSTEM
A
DAPTIVE SYSTEM
Diagnosis
O = f(l)
Action
Monitoring
The user feeds the
O=f(l) law, the system then
handles decision (action)
making accordingly
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
H
OW TO MANAGE ADAPTABILITY?
Events and Maps
Events represent perturbations
-
decisions taken based on history
-
stored in DRET: Distributed Raw Event Table
The set of all tiles states represents the map of the MPSoC
-
temperature map
-
power consumption map
-
working/not working map
Maps are stored in AIM: Architecture Instant Map
MONITORING INSTRUMENTED SYSTEM SENSORS
DRET
DIAGNOSIS
AIM
ONLINE APPLICATION REMAPPING OAR SENSORS DRET DIAGNOSISOAR
AIMLEVEL 1
LEVEL 2
LEVEL 3Three levels of reactiveness
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
H
OW TO MANAGE ADAPTABILITY?
CLUSTER 4 CLUSTER 3 CLUSTER 2 Diagnosis OAR AIM Diagnosis OAR Diagnosis OAR Diagnosis OAR Diagnosis OAR AIM Diagnosis OAR Diagnosis OAR Diagnosis OAR Diagnosis OAR AIM Diagnosis OAR Diagnosis OAR Diagnosis OAR Diagnosis OAR AIM Diagnosis OAR Diagnosis OAR Diagnosis OAR CLUSTER 1Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
D
RET
Create Table Dump Table Rows Columns Clock
cycles Rows Columns cyclesClock
1 1 2041 1 1 49713
2 2 2357 2 2 96322
3 3 3018 3 3 158583
4 4 3633 4 4 235715
5 5 4270 5 5 328199
Insert Get First Row Rows Columns Clock
cycles Rows Columns cyclesClock
1 1 107 1 1 43
1 2 173 2 1 52
1 3 193 3 1 61
1 4 214 4 1 70
1 5 236 5 1 79
Sort Table Delete Table Rows Columns Clock
cycles Rows Columns cyclesClock
1 1 447 1 1 1401
2 2 459 2 2 1941
3 3 471 3 3 2645
4 4 483 4 4 3178
5 5 495 5 5 3830
DISTRIBUTED RAW EVENT TABLE
0 1250 2500 3750 5000 1 2 3 4 5 2041 2357 3018 3633 4270 Create Table 0 75 150 225 300 1 2 3 4 5 107 173 193 214 236 Insert
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
E
XPERIMENTS
MONITORING
Diagnosis O = f(l) Action Monitoring•
CPU WORKLOAD
•
FIFO USAGE
•
FREQUENCY
ACTUAL
•
TEMPERATURE
•
NOC USAGE
FUTURE
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
DIAGNOSIS
20
21
22
23
24
19
17
15
10
11
12
13
14
9
7
5
0
1
2
3
4
18
16
8
6
S
W
N
E
S
W
N
E
S
W
N
E
S
W
N
E
Diagnosis O = f(l) Action MonitoringE
XPERIMENTS
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
E
XPERIMENTS
CASE STUDY (MJPEG DECODER)
Sender T1 IVLC T2 IQUANT T3 IDCT T4
3
2
0
1
T1
T3
T2
T4
PROFILING APPLICATION SPLITTING ANSI C CODEPROCESSING REQUIREMENTS SNAPSHOT
TASK GRAPH WITH PROCESSING COST
ANSI C CODE + API
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
ACTION
5 10 15 20 25 30 35 40 45 0 10 20 30 40 50 60 70 80 TIME (ms) NUMBER OF PACKETSMJPEG MULTI−TASK PROCESSOR (600MHz)
BUFFER FILLING MIGRATION COST 10 15 20 25 30 35 40 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 TIME (ms) THROUGHPUT (MB/s)
MJPEG MULTI−TASK PROCESSOR (600MHz)
DYNAMIC MAPPING MIGRATION TRIGGER MIGRATION POINT 0 8 16 24 32 40 48 56 64 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 x 106 TASK SIZE (KB)
MIGRATION TIME (CLOCK CYCLES)
0 5 10 15 20 25 30 35 40 45 50 0.5 1 1.5 2 2.5 3 3.5 4 4.5 TIME (ms) Throughput (MB/s)
MJPEG MULTI−TASK PROCESSOR (600MHz)
0 5 10 15 20 25 30 35 40 45 500 10 20 30 40 50 60 70 80
FIFO Filling (Number of Positions)
DYNAMIC MAPPING MIGRATION COST Action Diagnosis O = f(l) Monitoring 3 2 1 3 2 3 2 1 3
E
XPERIMENTS
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork
P
ERSPECTIVES & CONCLUSIONS
Investigate the use of a self-adaptive RAW/UDP/TCP IP protocol
Develop different monitoring systems
Critical applications to perform the experiments
Explore different task migration techniques
MSA
(MULTIPLE SEQUENCE ALIGNMENT)
DIALIGN ALGORITHM
TEMPERATURE
FIFO USAGE
CPU
WORKLOAD
VOICE ENCODING
VIDEO
ENCODING
PROTEIN ENERGY
INTERACTION
Institute for Information Processing Technology (ITIV)
Prof. Dr.-Ing. K. D. Müller-Glaser · Prof. Dr.-Ing. J. Becker · Prof. Dr. rer. nat. W. Stork