About Me     Research     CV     Publications         Professional     Personal

Publication : Temporal Analysis for Adapting Concurrent Applications to Embedded Systems

Authors : Sibin Mohan and Johannes Helander.

Abstract :
Embedded services and applications that interact with the real world often, over time, need to run on different kinds of hardware which range in capability from low-cost microcontrollers with very limited memory to powerful multicore processors. It is quite difficult to write one program that would work reliably on such a wide range of devices. This is especially true when the application must be temporally predictable and robust which should usually be the case since the physical world works in real-time. Thus, any application interacting with such a system, distributed or not, must also work in real-time.

In this paper we introduce a representation of the temporal behavior of an application as a colored graph that captures the timing of temporally continuous sections of execution, called bars, and the dependencies between the bars, creating a partial order. We then introduce a method of extracting the graph from existing applications using a combination of static, dynamic and other analyses. Once the graph has been created we employ a number of graph transformations, introduced here, that extract ``meaning'' from the graph. The knowledge gained can be utilized for scheduling and by the programmer for adjusting the level of parallelism suitable to the specific hardware, for identifying hot spots, false parallelism, or even candidates for additional concurrency. Graphs can be serialized to a partiture that can be used as input for offline, online, or even distributed real-time scheduling. Finally we present results from a prototype analyzer that was used on a complete TCP/IP stack in addition to smaller test applications. The most surprising outcome is that increasing the expression of concurrency can reduce the level of parallelism required, saving memory on deeply embedded platforms.

Here is a link to the full paper and slides to the talk at RTAS 2008.

This was published in the 20th EUROMICRO Conference on Real-Time Systems (ECRTS), July, 2008.

Also available as a
Technical Report from Microsoft Research.
<< Home