Design

IoT optimisation tool offers complete system transparency

23rd February 2015
Barney Scott
0

Express Logic has introduced ViewX, a real-time performance monitoring tool for IoT systems where optimisation of highly networked activity is critical for the success of the system. ViewX can be used to optimise IoT systems using Express Logic ThreadX RTOS and NetX TCP/IP protocol stack on most 32-bit architectures with dynamic data capture easily defined by the user.

With such analytical capabilities, ViewX gives developers system transparency into the complex workings of a highly networked IoT application. ViewX, a host PC-based application, tracks target system events and provides visibility into those events in graphical or spreadsheet format. Users control the types of data collected and displayed, the format of display, and the frequency of data capture and collection.

Data is collected by an agent thread that transfers snapshots of activities to the host via WiFi, Ethernet, USB, UART, or JTAG. The snapshot capture, upload, and display can be periodic, at user-specified intervals, on demand or can be archived on the host for subsequent analysis.

ViewX captures three categories of data, CPU utilisation, memory utilisation and network performance, giving the user many ways to optimise a system.

With insight into CPU activity, ViewX shows developers which threads are using most of the CPU cycles and which threads might not be getting enough CPU time to complete their activities. For example, a ViewX user would be able to see a thread that was running too long or at too high a priority, resulting in the starvation of other threads. The developer can then optimise the priority of the most significant cycle consumers, rather than blindly try to optimise the entire system.

ViewX shows each thread's stack usage, enabling optimisation of memory use by thread stacks. Allocating too much memory for a thread’s stack wastes memory, while allocating too little can lead to stack overflow.

ViewX captures metrics that show network throughput, packets sent/received/re-transmitted, or dropped, and packet pool use. If the packet pool is exhausted, network transfers can be impacted while waiting for memory to be returned to the pool. This is particularly helpful for IoT as many small IoT devices don't have the luxury of large memory and deep queues for re-transmission. When a packet is queued for re-transmission, that means one less packet is available for a new reception or transmission. Hence, inefficient packet use in small devices can lead to a few packets dropped/delayed, or collapse of the entire system. ViewX helps solve this problem by making resource utilisation and throughput completely visible at all levels of communication/system load.

Designed to be flexible, ViewX can analyse and show the behaviour of systems running on over 20 architectures, including ARM, MIPS, Tensilica and ARC. The agent thread retrieves only that data specified by the user through the ViewX interface, but its ANSI C code enables it to be easily customised to dynamically include or exclude information.

ViewX also can capture trace buffers for analysis by Express Logic TraceX event viewer. It gathers kernel awareness data similar to that gathered by a debugger, but is capable of displaying findings in real-time. ViewX enables data browsing, searching, and display, either within a single snapshot, as an animated sequence, or within a set of snapshots saved over a period of time.

“It's hard, if not impossible, to optimise a system that can’t be seen,” commented William E. Lamie, President, Express Logic. “Prior to ViewX, device developers needed to manually instrument their application, a painstaking and time-consuming process that takes months to accomplish. ViewX provides complete system transparency into the inner operations of the system in a fraction of the time.”

ViewX will be available in mid-2015, and will be licensed at prices starting at $5,000 for three developer seats.

Product Spotlight

Upcoming Events

View all events
Newsletter
Latest global electronics news
© Copyright 2024 Electronic Specifier