computing for embedded systems - iiweigao/ece1161/spring2020/lecture6_computi… · local resource...
TRANSCRIPT
![Page 1: Computing for Embedded Systems - IIweigao/ece1161/spring2020/lecture6_computi… · Local resource constraints at embedded systems Limited battery power Limited local computing capacity](https://reader034.vdocuments.us/reader034/viewer/2022042908/5f38591be4b67a272763a1e9/html5/thumbnails/1.jpg)
ECE 1161/2161Embedded Computer System Design 2
Computing for Embedded Systems - II
Wei Gao
1
![Page 2: Computing for Embedded Systems - IIweigao/ece1161/spring2020/lecture6_computi… · Local resource constraints at embedded systems Limited battery power Limited local computing capacity](https://reader034.vdocuments.us/reader034/viewer/2022042908/5f38591be4b67a272763a1e9/html5/thumbnails/2.jpg)
How to Address the Local Resource Constraints? Local resource constraints at embedded systems Limited battery power Limited local computing capacity
Low-power designs Hardware
• Advanced VLSI manufacturing• New computing architecture
Software • DVFS• Duty cycling
May not fundamentally remove the limitation!
ECE 1161/2161 Embedded Computer System Design 2 2
![Page 3: Computing for Embedded Systems - IIweigao/ece1161/spring2020/lecture6_computi… · Local resource constraints at embedded systems Limited battery power Limited local computing capacity](https://reader034.vdocuments.us/reader034/viewer/2022042908/5f38591be4b67a272763a1e9/html5/thumbnails/3.jpg)
Better Alternatives Cloud computing Offload the local computing workloads to the cloud
Problem: long latency for data transmission• Most embedded systems are delay-sensitive!
ECE 1161/2161 Embedded Computer System Design 2 3
Cloud processing Local processing
Wirelesstransmission
![Page 4: Computing for Embedded Systems - IIweigao/ece1161/spring2020/lecture6_computi… · Local resource constraints at embedded systems Limited battery power Limited local computing capacity](https://reader034.vdocuments.us/reader034/viewer/2022042908/5f38591be4b67a272763a1e9/html5/thumbnails/4.jpg)
What can we do – Edge Computing
ECE 1161/2161 Embedded Computer System Design 2 4
Computing Storage
DATA CENTERS
END USERS
EDGECLOUD
![Page 5: Computing for Embedded Systems - IIweigao/ece1161/spring2020/lecture6_computi… · Local resource constraints at embedded systems Limited battery power Limited local computing capacity](https://reader034.vdocuments.us/reader034/viewer/2022042908/5f38591be4b67a272763a1e9/html5/thumbnails/5.jpg)
Embedded Applications of Edge Computing
Cloud Gaming
Virtual Reality
Internet of Things
Smart Cities and Communities5
![Page 6: Computing for Embedded Systems - IIweigao/ece1161/spring2020/lecture6_computi… · Local resource constraints at embedded systems Limited battery power Limited local computing capacity](https://reader034.vdocuments.us/reader034/viewer/2022042908/5f38591be4b67a272763a1e9/html5/thumbnails/6.jpg)
Challenges Adaptability Optimized performance? Minimized cost?
User mobility Minimized cost?
?Provisioning for the peak load
user mobility
?Complete move of data and program
6
![Page 7: Computing for Embedded Systems - IIweigao/ece1161/spring2020/lecture6_computi… · Local resource constraints at embedded systems Limited battery power Limited local computing capacity](https://reader034.vdocuments.us/reader034/viewer/2022042908/5f38591be4b67a272763a1e9/html5/thumbnails/7.jpg)
Hierarchical Architecture Adaptability Aggregation of
peak load
User mobility Partial migration
of data and programFlat Edge Cloud
Geo-distributed tree hierarchy 7
![Page 8: Computing for Embedded Systems - IIweigao/ece1161/spring2020/lecture6_computi… · Local resource constraints at embedded systems Limited battery power Limited local computing capacity](https://reader034.vdocuments.us/reader034/viewer/2022042908/5f38591be4b67a272763a1e9/html5/thumbnails/8.jpg)
Optimal Workload Placement How to minimize the
response latency Where to place a workload How much capacity for a
workload
Challenge Delay tradeoff
ECE 1161/2161 Embedded Computer System Design 2 8
Computation delay
Communication delay
Computation Communication
Response latency
Low tiersHigh tiers
![Page 9: Computing for Embedded Systems - IIweigao/ece1161/spring2020/lecture6_computi… · Local resource constraints at embedded systems Limited battery power Limited local computing capacity](https://reader034.vdocuments.us/reader034/viewer/2022042908/5f38591be4b67a272763a1e9/html5/thumbnails/9.jpg)
Supporting User Mobility
ECE 1161/2161 Embedded Computer System Design 2 9
A B
Virtual Machine Virtual Machine
BA
programbinarymemorydata
VM Migration
![Page 10: Computing for Embedded Systems - IIweigao/ece1161/spring2020/lecture6_computi… · Local resource constraints at embedded systems Limited battery power Limited local computing capacity](https://reader034.vdocuments.us/reader034/viewer/2022042908/5f38591be4b67a272763a1e9/html5/thumbnails/10.jpg)
The Big Data Challenge Some embedded systems may be data intensive
ECE 1161/2161 Embedded Computer System Design 2 10
Cloud processing Local processing
Data partitioning
Wirelesstransmission
How to transmit? What to transmit?
![Page 11: Computing for Embedded Systems - IIweigao/ece1161/spring2020/lecture6_computi… · Local resource constraints at embedded systems Limited battery power Limited local computing capacity](https://reader034.vdocuments.us/reader034/viewer/2022042908/5f38591be4b67a272763a1e9/html5/thumbnails/11.jpg)
What to Transmit? Dynamic data partitioning
ECE 1161/2161 Embedded Computer System Design 2 11
Existing work Assuming stationary and
fixed method transitions
Benefit of remote processing
Computation Cost Transmission Cost
Decisions over Program Methods
Modeling on Method Transitions?
ENERGY EFFICIENCY
![Page 12: Computing for Embedded Systems - IIweigao/ece1161/spring2020/lecture6_computi… · Local resource constraints at embedded systems Limited battery power Limited local computing capacity](https://reader034.vdocuments.us/reader034/viewer/2022042908/5f38591be4b67a272763a1e9/html5/thumbnails/12.jpg)
Motivation Dynamic behaviors of run-time
program execution Input data User operation
Open-source Android applications Online profiling within source codes
12
Firefox Chess game Barcode scanner
Dynamics of execution paths
Heterogeneity of method execution times
![Page 13: Computing for Embedded Systems - IIweigao/ece1161/spring2020/lecture6_computi… · Local resource constraints at embedded systems Limited battery power Limited local computing capacity](https://reader034.vdocuments.us/reader034/viewer/2022042908/5f38591be4b67a272763a1e9/html5/thumbnails/13.jpg)
Modeling of Method Transitions
Transitions among program methods: semi-Markov model
Data partitioning approach: a stochastic framework
13
Method execution times
Invocation dependency
System heterogeneity
Order-k
Arbitrary sojourn time distribution
![Page 14: Computing for Embedded Systems - IIweigao/ece1161/spring2020/lecture6_computi… · Local resource constraints at embedded systems Limited battery power Limited local computing capacity](https://reader034.vdocuments.us/reader034/viewer/2022042908/5f38591be4b67a272763a1e9/html5/thumbnails/14.jpg)
Do We Have More Difficult Scenarios?
Data partitioning Move data-inexpensive computations to the cloud
What if the local computations are both data-intensive and computation-intensive?
ECE 1161/2161 Embedded Computer System Design 2 14
Virtual Reality
![Page 15: Computing for Embedded Systems - IIweigao/ece1161/spring2020/lecture6_computi… · Local resource constraints at embedded systems Limited battery power Limited local computing capacity](https://reader034.vdocuments.us/reader034/viewer/2022042908/5f38591be4b67a272763a1e9/html5/thumbnails/15.jpg)
Solutions Exploit the redundancy in computations Whether we can reuse the previous computing results
• Within the same user• Across different users
Memoization
ECE 1161/2161 Embedded Computer System Design 2 15
![Page 16: Computing for Embedded Systems - IIweigao/ece1161/spring2020/lecture6_computi… · Local resource constraints at embedded systems Limited battery power Limited local computing capacity](https://reader034.vdocuments.us/reader034/viewer/2022042908/5f38591be4b67a272763a1e9/html5/thumbnails/16.jpg)
Want to Use Edge Computing? You just need a server!
Existing VM solutions Virtual Box QEMU
Be careful about your programming models
ECE 1161/2161 Embedded Computer System Design 2 16