Here is a list of the most recent and significant announcement related to the BarbequeRTRM framework and the BOSP project.

[EU Projects] May 24th, 2019 - MANGO Final Review

EU H2020 project “MANGO” final review held in Le Lieu (CH). The BarbequeRTRM has been developed and deployed on an experimental heterogeneous HPC cluster to transparently manage the allocation of kernels and memory buffers. More about the project at EU H2020 MANGO Project.

[Release] May 24th, 2017 - BarbequeRTRM v1.2 (Emily Entrecote) release

The development cycle is closed. The new stable release is out!


  * Added support for task based applications

  * Overall refactoring
  * New platform description loading (with plugin) based on XML files
  * Introduced distributed systems support based on gRPC
  * ANDROID: Build re-enabled
  * LINUX: Network bandwidth support
  * LINUX: Process listener based on kernel connector
  * Initial support for MANGO platforms

[Power Management]
  * Power monitoring with policy triggers
  * Power monitoring made multi-threaded
  * CPU power management minor improvements
  * Introduced NVIDIA power manager

  * Profiling information refactoring
  * Cgroups enforcement distributed at application level
  * Monitor library build made optional

[Scheduling Policies]
  * YaMS no longer maintained
  * Improvements and fixes in TEMPURA
  * Added new (default) policy GridBalance
  * Added new policy Perdetemp
  * Added new policy Contrex
  * Added new policy Test

  * Introduced a library providing data structures for task-graph

  * Introduced a library for task-graph based programming models

How to update

Clean the Boost local repository:

[BOSP $] cd external/required/boost
[BOSP $] git reset --hard

Then update the local repositories and build:

[BOSP $] make clean && make clean_out
[BOSP $] ./bosp update-stable
[BOSP $] make menuconfig
[BOSP $] make

[Release] February 3rd, 2016 - BarbequeRTRM v1.1 (Daisy Drummets) release

It has been a long time, but finally the new release is out!


  * Runtime profiling data collection

  * New color theme
  * Fixed double start daemon corruption

  * Added the setting of the system critical temperature
  * Added the setting of power monitoring activity

  * Added support to ODROID-XU3 board
  * Added support to Freescale i.MX6Q board
  * Automatic generation of the platform description (bpl) for not recognized platforms
  * Added board supported platform description files
  * LINUX: multi-node allocation support
  * LINUX: Control Groups memory controller optional
[Power Management]
  * CPU power management minor improvements
  * CPUfreq governors management
  * Added power monitoring infrastructure
  * Added ARM Mali GPU power manager
  * Added ODROID-XU3 CPU power manager
  * Added power models
  * Added the Battery manager
  * Added the setting of the system lifetime goal (via command interface)

[Resource Accounter]
  * Introduced the BALANCED filling policy (along with the default 'SEQUENTIAL')

  * Goal-Gap as signed unbound value
  * Goal-Gap collection configurable via Kconfig (Performance API menu)
  * Added GetCPS() function with cycle time estimation
  * Added SetCPSGoal() function
  * Added GetAssignedResources() function to notify applications about the assigned resources
  * Signed AWM identifier value

[Scheduling Policies]
  * YaMS improvements in Goal-Gap management
  * Added new policy TEMPURA
  * Added new policy CLoves (experimental) for OpenCL workloads
  * YaMCA disabled (no longer maintained)

  * Removed outdated code

  * Added ''bbque-plotrace'' to plot power related data collected through the power monitoring task

How-to update

$ make clean && make clean_out
$ ./bosp update-stable
$ make

Giuseppe Massari 2016/02/03 12:30

[Event] January 18-20, 2016 - BarbequeRTRM development team @ HiPEAC 2016, in Prague (CZ)

Monday 18 @ [PARMA-DITAM Workshop]

William Fornaciari, “Run-time Resource Management for Embedded and HPC systems: Highlights from the HARPA Project”

Tuesday 19 @ [CONTREX Tutorial] Virtual Integration Testing for Mixed-Criticality Systems under Consideration of Power and Temperature Constraints

Giuseppe Massari, “Run-Time Resource Management in Mixed-Criticality Systems” - Download

Wednesday 20 @ [ICT-Energy: Minimizing Energy Consumption of Computing to the Limit]

Giuseppe Massari, “Run-Time Resource Management in MANGO for Energy Efficient Execution on Heterogeneous Architectures”

Check out the HiPEAC 2016 Conference Programme for further details.

Giuseppe Massari 2016/01/13 15:28

[Release] October 13, 2014 - BarbequeRTRM v1.0.1 (Chris Cheeseburger) release

  • A new Recipe Loader plugin based on RapidXML
  • Introduced the ThreadPool class
  • Several bug fixes
$ ./bosp update-stable

Giuseppe Massari 2012/04/25 14:28

[Release] June 16, 2014 - BarbequeRTRM v1.0 (Chris Cheeseburger) just released

Finally, version 1.0 is out!

A starting point of a new development cycle. Some of the new features set includes:

  • Migration from repo to git submodule to synchronize the BOSP repository
  • An early support for OpenCL-based applications (tested on AMD runtime) and heterogeneous scheduling (CPU+GPU)
  • A first interface to implement the platform power management support
  • Several improvements in the YaMS scheduling policy, with the CoWS option for a smarter resource mapping on multi-processor systems
  • A lighter recipe format, with the possibility of including multiple platform section with different hardware target
  • A tool (bbque-layapp) for generating the basic files for the creation of a new integrated application
  • A command interface to allows the resource manager to react to external events
  • The possibility to offline resources at run-time
  • Boost libraries updated to version 1.55
  • Bug fixes and a lot of under the hood improvements
  • Much more…

Please update your repository:

$ ./bosp update-stable

Giuseppe Massari 2012/04/25 14:28

[Event] Jun 16, 2014 - The BarbequeRTRM workshop - Hosted by PoliMi

We are pleased to announce the BarbequeRTRM workshop, taking place at Politecnico di Milano on June 16th, 2014. Infomration and teaching material can be found here.

Simone Libutti 2014/06/13 16:28

[Event] Jul 11, 2013 - Targeting "Variability" Challenges - Keynote @ ReCoSoC13

ReCoSoC13 Logo

A keynote speech has been provided by Prof. William Fornaciari, during last ReCoSoC conferenze in Darmstadt Germany, which focused on how to exploit the BarbequeRTRM framework to tackle application and process variability issues.

The keynote slides are available at this link.

Patrick Bellasi 2013/07/16 9:35

[Event] Mar 21, 2013 - MultiView on BarbequeRTRM - University Boot @ DATE13

An interesting use-case has been presented at the University Booth during DATE13, which was held in Grenoble - France, where the BarbequeRTRM framework is used to support the adaptivity capabilities of DSE-profiled application (MultiView).

Again, this has been an interesting opportunity to collect, almost always positive and interesting, feed-backs from the scientific community as well as to setup some interesting links with other research communities.

The booth poster is available at this link while a screencast of the live demo is available on the BarbequeRTRM Screencast and Video Tutorials page.

Patrick Bellasi 2013/03/25 9:35

[Event] Oct 4, 2012 - BarbequeRTRM presentation at Fall School Forest

This fall, the BarbequeRTRM framework has got a presentation during the 2PARMA Tutorial hosted by the Fall School on Programming Paradigms for Multi-core Embedded Systems, which was held in Freudenstadt - Lauterbad, Germany.

Another great dissemination event which allows also our team to meet other bright scientists working on similar research same area.

The presentation done is available at this link.

Patrick Bellasi 2012/10/22 11:20

[Event] Jul 11, 2012 - BarbequeRTRM poster at ACACES Summer School

Today, the BarbequeRTRM framework has got another official presentation during the poster session hosted by the HiPEAC ACACES Summer School, which is rolling in these days in Fiuggi, Italy.

This has been a great opportunity to disseminate the awareness about our project on an dynamic an wide audience of young researches, which is also highly focused on run-time resource management and related topics.

Here is a link to the poster which has been presented.

Patrick Bellasi 2012/07/11 20:11

[Event] Jul 10, 2012 - BarbequeRTRM presentation at ReCoSoC 2012

The 7th International Workshop on Reconfigurable and Communication-centric Systems-on-Chip (ReCoSoC'12) has accepted for publication a paper presenting some interesting power-management results which are achievable by using the BarbequeRTRM.

This is the link to the paper, while an handout version of the presentation is available at this link.

Patrick Bellasi 2012/07/11 20:11

[Event] Apr 24, 2012 - BarbequeRTRM presentation at HiPEAC Computing Systems Week

A presentation on the goals of the 2PARMA Project, and specifically our Run-Time Resource Management, has been presented during the Power-Efficiency and Program Correctness Analysis for Scalable Multicores session hosted by the HiPEAC Computing Systems Week, held in Göteborg - Germany

This is a link with the given presentation.

Patrick Bellasi 2012/04/25 14:28

[Release] Feb 15, 2012 - BarbequeRTRM v0.8-rc1 (Betty Bacon) just released

Here is the “Betty Bacon” time!

The first release-candidate of a new great version of the BarbequeRTRM (v0.8-rc1) has just been release! Sync your repos to enjoy the rich set of new functionalities.

This has been a quite short but rich release cycle: the changelog accounts for more than 200 files updated with more than 8K additional codelines; all that in less than 20 days… a really appreciable result. Thereafter you could find a short summary of the main interesting new features.

This has also been the first version to accept and merge contributions from “external” developers. We would like to thanks them for the effort, credits to them are exposed by the project GIT log, and of course we hope they will be only the first of an increasing number.

Comments and feedbacks are welcome! Please consider also to subscribe the official _development_ discussion group:!forum/bosp
where you are also encouraged to post your bugs reports and features enhancement requests. A RC2 version is expected to be released by the end of this month.

The BarbequeRTRM developers team.

====== Features Summary ======

.:: Platform Integration Layer
An (almost) complete Platform Integration Layer (PIL) targeting a generic Linux
multi-core host is now provided.  This comes in two flavors:
 1. a "simplified" version, suitable for Linux kernel newer that 2.6.34 but older than 3.2,
    which is able to enforce CPUs allocations and Memory constraints
 2. an "advanced" version, requiring a Linux kernel >=3.2, which supports also
    CPU Bandwidth allocation
In both cases, the resources managed by the BarbequeRTRM could be easily
configured with a single file with simplified syntax. 

.:: YaMS - A New Modular and Tunable Resources Scheduling Policy
The old YaMCA scheduling policy has now been replaced by the (first usable)
implementation of a modular policy, where some optimization metrics have
already been implemented and others could now be easy and fast integrated. This
new policy will soon manage advances optimization goals such as Power&Thermal
management as well as Robustness&Stability enforcement.

.:: RTLib - NAP Notification
The RTLib API has been extended to support a new interesting concept: the
notification from an application of a "Normalized Actual Penalty" (NAP). The
NAP value is an interesting and flexible index to assist the BarbequeRTRM on
better scheduling resources to applications.
An optimization metrics exploiting the NAP information is also going to be
integrated soon within the new JaMS scheduling policy.

.:: RTLib - Application-Specific RTRM
A rich set of application specific facilities has bee merged to better support
the definition of Application-Specify Run-Time Resource Managers.
These facilities provide abstraction interfaces to define at run-time:
- Monitors, to easily collect statistics on Time periods, data Throughput and
  Memory usage (for the time being)
- OPManagers, to easily manage a set of Operating Points and select the best
  one according to run-time tunable optimization goals
- ApplicationRTRMs, to hide as much as possible the interaction with the
  System-Wide RTRM, i.e the BarbequeRTRM

.:: Daemonization support
A properly init script and a corresponding configuration file allows to easily
run the BarbequrRTRM as a daemon.

.:: Documentation
A revised doxygen-based documentation has been put in place, which is now based
on modules and pages, in order to produce a better navigation on the
comprehensive set of topics regarding the different aspects of a BarbequeRTRM
based Run-Time Resource Management solution.

.:: Other
Of course, we also merged a (fortunately) not so rich set of bugs and cosmetics
changes which are however good contributions.

Patrick Bellasi 2012/02/15 23:18

[Release] Jan 27, 2012 - BarbequeRTRM v0.7 just released

Dear all!

A new version of the BarbequeRTRM has just been released, sync your BOSP repo! We are now at v0.7 (95c148f6a3af) and this version mainly provides a complete implementation of the AWM constraints assertion API. Thus, now you are allowed to exploits the two RTLib calls:

                RTLIB_ExecutionContextHandler_t ech,
                RTLIB_Constraint_t *constraints,
                uint8_t count);

to assert a set of constraints on valid AWMs, or:

                RTLIB_ExecutionContextHandler_t ech);

to remove all the pending constraints.

The same API is available form the Abstract Execution Model (AEM) API. Indeed, the BbqueEXC base class has been extended to provide a corresponding pair of methods.

RTLIB_ExitCode_t SetConstraints(
                RTLIB_Constraint_t *constraints,
                uint8_t count);
RTLIB_ExitCode_t ClearConstraints();

You are allowed to set multiple constraints at once, by defining them as elements of an array of RTLIB_Constraint_t structures. Each entry defines a single constraint by specifing:

  • the ID of the referring AWM
  • the constraint type: either a single AWM or a boundary
  • the action required: either ADD or REMOVE the referring AWMs

The required action semantics is defined by the constraints type, thus for example:

  • ADD-BOUNDARY: invalidate all the AWM outside of the boundary specified by the referred AWM ID (this one excluded)
  • REMOVE-EXACT_VALUE: invalidate the single referred AWM ID

A set of constraints triggers a re-scheduling only if the current assigned AWM has been invalidate, while a relaxing constraints does not and the application continue to run on the assigned AWM.

This interface has been released for testing purposes also, so you are welcome to try it and report on errors or misbehavior.

The next major release, which is expected in a few weeks, will finally bring in the Platform Integration Layer (PIL) for a generic x86 Linux host and perhaps some interesting external contributions related to application monitoring. Thus stay tuned!

Meanwhile, please have a look at the Wiki page, which we are trying to feed with some new contents and tutorials:

Consider also to subscribe to the official MLs:!forum/bosp!forum/bosp-devel
and the official BOSP Twitter account:!/BarbequeRTRM

The BarbequeRTRM developers team.

Patrick Bellasi 2012/01/28 14:28

news.txt · Last modified: 2019/09/30 11:17 by jumanix

Page Tools