User Tools

Site Tools


research

RTRMPower ManagementReal-Time SchedulingWSN
List of Publications

Research Interests

Run-Time Resources Management

The BarbequeRTRM Logo

Emerging multi/many-core architectures, targeting both High Performance Computing (HPC) and mobile devices, increase the interest for self-adaptive systems, where both applications and computational resources could smoothly adapt to the changing of the working conditions.

In these scenarios, an efficient Run-Time Resource Manager (RTRM) framework can provide a valuable support to identify the optimal trade-off between the Quality-of-Service (QoS) requirements of applications and the time varying availability of resources.

.:: The BarbequeRTRM Framework

This research investigate a new approach to the development of a system-wide RTRM featuring:

  • a hierarchical and distributed control
  • the exploitation of design-time information
  • a rich multi-objective optimization strategy
  • a portable and modular design based on a set of tunable policies.

The BarbequeRTRM is a framework targeting these goals which is being developed and already available as an Open Source project. This framework targets both NUMA architectures, mostly focused on HPC, as well as a new generation many-core, the STHORM platform by STMicroelectronics, which instead addresses mobile multimedia devices.

.:: Project Website

Further details on this research area and the BarbequeRTRM framework are available on the official project website: http://bosp.dei.polimi.it

Power Management at OS level

Linux Logo The research conducted has focused on issues related to the dynamic management of power in mobile devices based MPSoC architectures. The ability to exploit a detailed knowledge of the system, both regarding the reference architecture and the applications field, enables the development of efficient techniques for an aggressive energy optimization. These solutions generally include several levels of abstraction and require a adequate support: from the low-level architectural design up to the level of system and application software.

The work in this research has focused on the analysis of the problem at the operating system level. The goal is to provide an adequate support in terms of system software, for a properly use of low-level hardware mechanisms according to the specific needs of the application layer. The required support is a control system that may be able to identify at runtime the optimal configuration of the platform taking into account: available mechanisms, resources and application’s requirements. Depending on the specific application context, which can range from that of dedicated embedded systems (e.g., automotive controllers) to that of general purpose system (e.g., smart-phones), the possible approaches could be essentially classified as: centralized and distributed.

In the first instance the focus was on evaluation of a model for centralized control. We ported a frame-work, originally proposed by IBM and MontaVista Linux, to the Nomadik platform by STMicroelectronics. The same framework was then used as the base for a new proposed methodology [C.1] targeting the characterization of power and performance of a generic platform-based SoC. The proposed methodology allows to extract control patterns for the dynamic tuning of a system. These models can then be used by the optimization policies of the proposed framework. This activity has taken several months of work to set up a stable platform and running a set of experiments to obtain a complete and realistic energy characterization. CPM Architecture This characterization was obtained by considering a realistic and interesting use-case. Although this approach has proven to give good results, in same time it is rather complex to implement because of the required platform pre-profiling that, even if well-automated, it is rather long to perform.

We focused also on the formulation of a distributed control model with centralized constraints. The idea comes from the relative simplicity to develop local controls and efficient centralized system for information collection. These two entities could be combined to build a hierarchical control system. The formulation of a methodology for defining control models based on an approach of this type is particularly interesting. The development of methodology [C.5] allowed to obtain a simple implementation of a system for managing power and performances, based on a formal and verifiable model. It is worth noting that the proposed approach is not based on an abstract model an some simulations, but rather took into account all aspects and requirements which are necessary for its effective implementation and integration within a real operating System such as Linux. A patents [P.1.] on the methodology is under evaluation by STMicroelectronics.

.:: Main CPM Git repository

Up to now, the stable branch cpm_2.6.34 is based on Linux kernel 2.6.34, and it is available online at this address: git://gitorious.org/linux-drk/linux-drk.git

.:: The User-space Daemon

This daemon provides a convenient way to exploit CPM without modifying applications. The code is available online at this address:
git://github.com/derkling/cpm_daemon.git

The master branch tracks the stable branch for the Execution Profiles daemon. There is a tests sub-folder containing an example XML configuration file to define execution profiles (EXs), i.e., named collections of constraints, and to associate one or more EXs to each application. Once the user-space daemon starts, such a configuration file is parsed and then applications monitored for starting/stopping… and in case an association has been defined the corresponding EXs added/removed to CPM.
Credit goes to Giuseppe Massari for the development of this useful extension.

.:: VirtualBox Test Image

A “bzipped2” VirtualBox disk image, pre-configured with a Xubuntu running a CPM-enabled kernel v2.6.34, is made available online.

If there are problems with the configuring of the VirtualBox image, refer to my configuration snapshot to find the options I've used. Of course the disk image must be “bunzipped2” before use.

You should be able to play with this disk in order to verify how CPM works. To test it, simply login with (username;passowrd)=(user;pass) and run as root the CPM test bash script available on the Desktop.

.:: Documentation

Finally, here are some links to CPM related publications:

  • A paper presenting the framework
  • My PhD Thesis detailing the framework architecture and the optimization theory behind it.
  • The PhD Dissertation presentation
  • A poster resuming the proposal
  • Framework presentation at the Embedded Linux Conference Europe (ELCE) 2009 (web|video)

Multi-core scheduling for Real-Time Workloads

The use of multi-core architectures is also growing within the embedded applications, especially those dedicated to mobile multimedia applications. Accordingly, several chip manufacturers have already released, or will soon release, chips with dual cores, and it is predicted that chips with up to tens or hundreds of cores will be available within a decade. In this type of architecture is crucial appropriate use of shared resources such as caches. For example, software designs should avoid co-executing applications or threads that can worsen the performance of shared caches.

Task-Affinity Scheduler Trace

While cache-aware scheduling techniques for such platforms have been proposed for throughput- oriented applications, no such work has targeted real-time applications. This work [C.7] focus on real-time scheduling on multi-core architectures and especially targets the Linux operating system. We have developed and evaluated a task_affinity mechanism which is of simple setup from the applications standpoint and allows the RT scheduler to properly track task dependencies in order to improve caches efficiency.

.:: Documentation

Here are some links to Task-Affinity related publications:

  • A presentation given at Embedded Linux Conference 2010.
  • Framework presentation at the Embedded Linux Conference (ELC) 2010 (web|video)

Wireless Sensor Networks Modeling

The classical approaches to study and analyze the behaviors of Wireless Sensor Networks (WSN) rely on the usage of quite sophisticated and complex simulation tools. When we are interested only to evaluate the performances of a WSN, for instance in terms of throughput, delay and utilization, the usage of such kind of tools can have an excessive overhead due to their setup complexity. In these situations the availability of models based on Queuing Network (QN) theory can be sufficient to support the needs of performance analysis. However, the classical QN theory is too much limited to properly describe some fine details required to model the low-level of network protocols, for instance the Medium Access Control layer of the 802.15.4. Since, the MAC layer configuration is particularly important on defining both the performance and the energy efficiency, for example of ZigBee based networks, we are interested in models that can capture these aspects as well.

WSN-QN model overall view In [R.3] we present a model for ZigBee based WSN, which has been built using Non-Product Form Queuing Network (NPF-QN) theory. The NPF-QN is an extension of the classical QN theory providing a set of additional components that we exploited to improve the accuracy of the MAC layer description. The proposed model has been implemented and evaluated [C.6] using the Java Modeling Tools (JMT) suite to show its effectiveness for describing simple yet interesting sensor networks.

Publications

Books

  • B.1 P.Bellasi, “Cross-Layer Framework for Constrained Power Management and Resources Optimization of Embedded Systems”, PhD Thesis, Politecnico di Milano, 12/2009.
  • B.2 P. Bellasi, S. Corbetta, W. Fornaciari, Chapter 6: “Run-time Resource Management at the Operating System level”. Multi-objective design space exploration of multiprocessor SoC architectures: the MULTICUBE approach. Springer, 2010.
  • B.3 G. Massari, E. Paone, M. Scandale, P. Bellasi, G. Palermo, V. Zaccaria, G. Agosta, W. Fornaciari, C. Silvano. “Data Parallel Application Adaptivity and System-Wide Resource Management in Many-Core Architectures.” Reconfigurable Computing: Architectures, Tools, and Applications. Lecture Notes in Computer Science. Pages 345-352, 978-3-319-05959-4

Patents

  • P.1 P. Bellasi et al. “Power Management Using Constraints In Multi-Dimensional Parameter Space”. US 2011/0320795 A1

International Journals

  • J.1 P. Bellasi, G. Massari, W. Fornaciari, “Effective Run-time Resource Management using Linux Control Groups”. Transactions on Embedded Computing Systems (TECS), [to appear].

International Conferences

  • C.1 P. Bellasi, W. Fornaciari, D. Siorpaes, “Predictive Models for Multimedia Applications Power Consumption Based on Use-Case and OS Level Analysis”. Conference on Design, Automation and Test in Europe (DATE'09), Nice, 04/2009, pp. 1446-1451.
  • C.2 W. Fornaciari, P. Bellasi, “Cross-Layer Constrained Power Management: Application to a Multimedia Mobile Platform”. IEEE Latin American Symposium on Cirtuits and Systems (LASCAS'10), IEEE Computer Society, 2010.
  • C.3 P. Bellasi, W. Fornaciari, D. Siorpaes, “A Hierarchical Distributed Control for Power and Performances Optimization of Embedded Systems”. Conference on Architecture of Computing Systems (ARCS'10), Hannover, 02/2010, pp. 37-48.
  • C.4 P. Bellasi, S. Bosisio, M. Carnevali, W. Fornaciari, D. Siorpaes, “CPM: A Cross-Layer Framework to Efficiently Support Distributed Resources Management”. Workshop on Parallel Programming and Run-time Management Techniques for Many-core Architectures (2PARMA'10), Hannover, 02/2010, pp. 293-298.
  • C.5 P. Bellasi, W. Fornaciari, D. Siorpaes, “Constrained Power Management: Application to a Multimedia Mobile Platform”. Conference on Design, Automation and Test in Europe (DATE'10), Dresden, 03/2010, IP, pp. 982-985.
  • C.6 P. Bellasi, A. Faisal, G. Serazzi, “Queueing Network Models for Performance Evaluation of ZigBee-based WSNs”. 7th European Performance Engineering Workshop (EPEW'10), Bertinoro, 09/2010, pp. 147-159.
  • C.7 P. Bellasi, W. Betz, L. M. De Marchi, W. Fornaciari, “A Step Toward Exploiting Task Affinity in Multi-core Architectures to Improve Determinism of Real-time Applications”. International Conference on Real-Time and Embedded Systems (RTES'10), Singapore, 11/2010.
  • C.8 C. Silvano et. al, “2PARMA: Parallel Paradigms and Run-Time Management Techniques for Many-Core Architectures”. IEEE Computer Society Annual Symposium on VLSI (ISVLSI'10), Lixouri Kefalonia, Greece, 07/2010.
  • C.9 A. Bartzas, P. Bellasi, I. Anagnostopoulos, C. Silvano, W. Fornaciari, D. Soudris, D. Melpignano, C. Ykman-Couvreur, “Runtime Resource Management Techniques for Many-core Architectures: The 2PARMA Approach”. International Conference on Engineering of Reconfigurable Systems and Algorithms (ERSA’11), Las Vegas, Nevada, USA, 07/2011.
  • C.10 C. Silvano, W. Fornaciari, S. C. Reghizzi, G. Agosta, G. Palermo, V. Zaccaria, P. Bellasi, et al. “Parallel paradigms and run-time management techniques for many-core architectures: The 2PARMA approach”. 9th IEEE International Conference on Industrial Informatics (INDIN'11). Lisbon, Portugal, 07/2011.
  • C.11 D. Zoni, P. Bellasi, W. Fornaciari. “A Low-Overhead Heuristic for Mixed Workload Resource Partitioning in Cluster-Based Architectures”. International Conference on Architecture of Computing Systems (ARCS'12), Berlin, Germany, 2012.
  • C.12 P. Bellasi, G. Massari, W. Fornaciari. “A RTRM proposal for Multi/Many-Core platforms and reconfigurable applications”. 7th International Workshop on Reconfigurable Communication-centric Systems-on-Chip (ReCoSoC'12), York, UK, 07/2012.
  • C.13 P. Bellasi, G. Massari, W. Fornaciari. “Exploiting Linux Control Groups for Effective Run-time Resource Management”. 4th Workshop on Parallel Programming and Run-Time Management Techniques for Many-core Architectures (PARMA'13). Berlin, Germany, 01/2013
  • C.14 S. Libutti, G. Massari, P. Bellasi, W. Fornaciari. “Exploiting Performance Counters for Energy Efficient Co-Scheduling of Mixed Workloads on Multi-Core Platforms.” Workshop on Parallel Programming and Run-Time Management Techniques for Many-core Architectures and Design Tools and Architectures for Multicore Embedded Computing Platforms (PARMA-DITAM'14). Wien, Austria, 01/2014.
  • C.15 G. Massari, C. Caffarri, P. Bellasi, W. Fornaciari. “Extending a Run-time Resource Management framework to support OpenCL and Heterogeneous Systems.” Workshop on Parallel Programming and Run-Time Management Techniques for Many-core Architectures and Design Tools and Architectures for Multicore Embedded Computing Platforms. (PARMA-DITAM'14). Wien, Austria, 01/2014.
  • C.16 G.Massari, E.Paone, P.Bellasi et. al., “Combining Application Adaptivity and System-wide Resource Management on Multi-Core Platforms”. International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS XIV), Samos Island , Greece. 07/2014.

Submitted Works

None right now

Technical Reports

  • R.1 P. Bellasi, “DynamicPower for STLinux”. Politecnico di Milano, Internal report n. 2007.76
  • R.2 P. Bellasi, “A MAC Layer Aware Queuing Network Model for WSN Performances Estimation”. Politecnico di Milano. Internal report n.2009.58

Public Talks

  • T.1 P. Bellasi, “Constrained Power Management: an holistic approach to power management”. Embedded Linux Conference in Europe, Grenoble - France, 10/2009.
  • T.2 L. De Marchi, P. Bellasi, “Multi-core Scheduling Optimizations for Soft Real-time Multi-threaded Applications – A Cooperation Aware Approach”. Embedded Linux Conference, San Francisco - USA, 04/2010.
research.txt · Last modified: 2021/04/06 21:05 by 127.0.0.1