1 / 36

NETWORKED EMBEDDED SYSTEMS

NETWORKED EMBEDDED SYSTEMS. SRIKANTH SUBRAMANIAN. Agenda. Overview Networked Embedded Systems (NES) NES built on ASIPs NES built on General Purpose Processors Quantitative performance comparison of various NES for TCP and UDP Online HW/SW partitioning of NES. Overview.

rock
Download Presentation

NETWORKED EMBEDDED SYSTEMS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. NETWORKED EMBEDDED SYSTEMS SRIKANTH SUBRAMANIAN

  2. Agenda • Overview Networked Embedded Systems (NES) • NES built on ASIPs • NES built on General Purpose Processors • Quantitative performance comparison of various NES for TCP and UDP • Online HW/SW partitioning of NES

  3. Overview • NES are employed in Devices that form the backbone of communication networks • Routers, Network Bridges (Switches), Telephone Switches etc • Perform the task of data processing, Network Connectivity and Service delivery

  4. Overview • NES were mostly implemented on Single Purpose Processors (SPPs) • SPPs - No Flexibility • Pose problems when the requirements change • Alternatives : General purpose processors or ASIPs (Network Processors)

  5. Network Processors • ICs specifically built for networking application • Software Programmable Devices • Optimized features for networking applications : pattern Matching, Queue management, Data bit field manipulation etc.

  6. NES based on ASIPs • Stareast: • Consists of a Baseboard and two daughter boards • Baseboard contains Intel IXP425 (533MHz) Processor

  7. Scalable performance, Reduced power consumption, Low cost Deliver a range of data, voice, security and I/O features Distributed processing Architecture Combination of Intel XScale (an ARM Processor) and 3 Network Processing Engines (NPEs) Intel IXP425 Processor

  8. Intel IXP425 Processor • XScale - Control plane • NPEs - computationally intensive data • Parallel Operation of Xscale and NPEs

  9. NES based on ASIPs • Netgear WAG302: • Most commonly used wireless Access Point • Based on Intel IXP422B processor (266 MHz)

  10. NES based on GPPs • Soekris net4826-50 • Based on AMD Geode Processor (266 MHz)

  11. NES based on GPPs • Used to create fully customized routers and access points • Low cost, advanced communication features • AMD Geode processor comes under the X86 processor family

  12. Quantitative Performance Comparison • Objectives: • Performance comparison Between NES based on GPP and NES based on ASIP • Performance comparison between Two NESs based on ASIP with one running on a commercial Operating system and another running Open source operating system

  13. Experimental Setup • Three Stareast boards: • One running Montavista 4.0 OS • The other two running Snapgear versions 3.1 and 3.3 • Netgear WAG302 Running openWRT • Soekris net 4826 running Voyage Linux (Debian) distribution for X86 processors

  14. Experimental Setup

  15. Experimental Setup • To Study the behavior of the NESs, D-ITG traffic generator is used • Can generate IPv4/IPv6 traffic replicating the appropriate stochastic processes for both IDT( Inter Departure time) and PS (packet size) • Collect Statistics of Quality of Service (QOS) parameters: Throughput, Jitter, Packet loss and Delay (Latency)

  16. Experimental Analysis • NES boards are connected back to back with the Workstation • Testing is performed using both TCP and UDP in the transport layer • Two types of tests are performed: • Discover the number of packets per second the devices are able to generate for fixed packet size • Measure bit rates, jitter, packet loss for different packet rates and sizes

  17. Results • Packet Rate:

  18. Results • Bitrate for UDP:

  19. Results • Bitrate for TCP:

  20. Results • Jitter for UDP:

  21. Results • Jitter for TCP:

  22. Results • Packet Loss for UDP:

  23. Conclusions • NES based on ASIP running a commercial OS provides better performance as compared a NES based on GPP running a commercial OS • NES based on ASIP running open source OS are still less efficient as compared to commercial OS • Hence NES using network processors can play a major role in data intensive real time applications.

  24. Online HW/SW Partitioning • Need: • Optimal partitioning of load into HW and SW during compile time is difficult • Arrival of new tasks during execution time • Failure of a node during run time

  25. Network Architecture • Graph Theory: • Structure of Network ga = (N,C)

  26. 3 -1 -1 -1 -1 3 -1 -1 -1 -1 3 -1 -1 -1 -1 3 Network Architecture • Laplacian Matrix: Given a graph G with n vertices (without loops or multiple edges), its Laplacian matrix is defined as

  27. Network Architecture • Assumptions w.r.t Network • Architecture graph is undirected • each computational task may be assigned to each node in the network without restriction • HW Reconfiguration • Temporal partition: Temporal HW/SW partition at time t is an assignment of each task pЄ P(t) to a resource N ( t ) as well as the indication whether the task is implemented in HW or SW.

  28. Network Architecture • Workload characterization: Each task pjЄ P(t) causes a unique load whj on resource niЄ N ( t ) if implemented in HW and a load of wsj, if implemented in SW. • Load: For HW - The fraction of total area occupied by the load For SW - The fraction of execution time and period.

  29. Diffusion Algorithm • load exchanges between two adjacent nodes are determined in each iteration as: yk-1c = β(wk-1i – wk-1j) for all c = {ni, nj} Є C wki = wk-1i - ∑ yk-1c c = {ni, nj} Є C • Changing β in each iteration k has shown that the convergence speed can be drastically improved to exactly m - 1 iterations Choosing β = 1/גk where 1 ≤ k ≤ m – 1 m – Number of distinct Eigen Values of the Laplacian matrix

  30. Optimization Flow

  31. Optimization Flow • Objectives: • Find a bi-partition such that the load is balanced between HW and SW i.e.; minimize ∑|N| wSi - ∑|N| wHi i = 1i = 1 • Effective Load Balance i.e.; minimize |w’ – max{maxi:niЄN{wSi }, max{maxi:niЄN{wHi }| by using Evolutionary Algorithm applied to encode implementation selection • Diffusion Algorithm only balances load between nodes not HW/SW load

  32. Discrete Diffusion Algorithm • Need: It is advisable not to split one process and distribute it to multiple nodes. This increases the data traffic in the network. Let ycontkcbe the real-valued continuous and ydisckcthe discrete flow on one edge c in iteration k such thatydisckc doesn’t exceedycontkc ydisckc ≤ ycontkc +ek-1c with e0c = 0 ekc =ycontkc +ek-1c - ydisckc for all c={ni, nj} Є C An additional adjustment step is introduced emc =em-1c - yadjc

  33. Experimental Analysis • Evaluation the discrete diffusion algorithm for different types of a network like meshes with 3x3 or 4x4 nodes, a ring and a chordal ring with 8 nodes • In the beginning all tasks are mapped onto a single resource node • Focus is set on the load error |w’ – wi| and the congestion in the network

  34. Experimental Analysis

  35. Experimental Analysis

  36. Thank You Questions?

More Related