14

Router CPU Load in Home Networks

Embed Size (px)

Citation preview

Page 1: Router CPU Load in Home Networks
Page 2: Router CPU Load in Home Networks

Speaker: Skip AshtonVice President of Software, Silicon LabsSkip has been working with low-power embedded mesh networks since 2003 with Ember and now Silicon Labs. Skip is on the Board of Directors for the ZigBee Alliance, Thread Group and the Connected Lighting Alliance, and he chairs the technical committee for ZigBee and Thread. Skip has been involved in the development and deployment of low-power mesh networking stacks in home and business applications around the world.

Page 3: Router CPU Load in Home Networks

The Internet of Things (IoT) Local and Remote Access Location Awareness Personalization Device Interoperability Simple Unified Control

Page 4: Router CPU Load in Home Networks

The Challenge of IoT

Home Control Hub

Health & Fitness

Lighting

Security

Internet

Home Appliances

Safety

P

Comfort Wi-Fi Access

Point

HVAC

Page 5: Router CPU Load in Home Networks

Helping Designers Build Devices and Systems Engineers building products want to know what is possible and

how to optimize their devices and systems As part of our stack development, we work to publish metrics to

assist developers Device performance – sleep/wake times, battery consumption, performance System performance – latency, throughput, scalability

As customers put applications on our stacks, they need to know how loaded is the MCU and how much headroom does it have

Page 6: Router CPU Load in Home Networks

Measuring MCU Loading Cortex-M class devices generally in use Do not have MCU monitoring capabilities of higher end processors Instead use idle loop counter

Baseline counter on unloaded chip Compare baseline to counter during operation in network Packet rate and packet size can vary

% 𝐶𝑃𝑈𝑈𝑠𝑎𝑔𝑒=100 (1− 𝑏𝑎𝑠𝑒𝑙𝑖𝑛𝑒−𝑙𝑜𝑜𝑝𝑠𝑟𝑢𝑛𝑏𝑎𝑠𝑒𝑙𝑖𝑛𝑒 )

Page 7: Router CPU Load in Home Networks

CPU Counter Implementation Created plugin that can be used within any project using Silicon

Labs Application Framework Incrementing loop counter Send debug message every 2.5 seconds out chip debug port Data collected over Ethernet backchannel from devices Graphics of usage over time in development tools to allow simple

visualization and analysis

Page 8: Router CPU Load in Home Networks

Receiver CPU Usage of ZigBee Router ZigBee receiver Receiving at constant

packet rate Three different security

settings Increasing packet

length does increase loading slightly

Cortex-M3 at 12 MHz

Page 9: Router CPU Load in Home Networks

CPU Loading with Increasing Packet Rate Fixed length

packet Decrease time

between packets Home automation

security Little impact until

hitting loading point

Page 10: Router CPU Load in Home Networks

CPU Loading with Packet Rate and Size Test to increase packet

rate and increase packet length

Able to load receiver to near 100 percent at longest packet and highest rate

Transmitting device load is always lower

Time between messages

Packet Length Increasing

Page 11: Router CPU Load in Home Networks

CPU Loading – BLE Advertisement Single packet with no

security CPU barely loaded This data using Cortex

M4 at 40 MHz

Page 12: Router CPU Load in Home Networks

Summary and Follow On Testing ZigBee router CPU loading 50% at nominal packet rates and sizes

but can be increased to nearly 100% under heavy packet load on Cortex-M3

Bluetooth Smart advertising loading very low Follow on testing

ZigBee testing on Cortex-M3 versus M4 core Thread testing Evaluate customer application loading

Page 13: Router CPU Load in Home Networks

Thank-you

Skip Ashton, Vice President of SoftwareSilicon Labs

Special Thanks to Interns:Emily Tumang - Olin and Daniel Benson - WPI

For underlying work on CPU loading

Page 14: Router CPU Load in Home Networks

Abstract The growth of devices connected to each other and the internet

and the growth of wireless and security protocols means these embedded ARM processors are doing more and more processing. While developers and designers have focused on energy efficiency, evaluation of processor loading can also reveal design improvements and power savings.