Autonomic management of multiple non-functional concerns in behavioural skeletons

Autonomic management of multiple non-functional concerns in behavioural   skeletons
Notice: This research summary and analysis were automatically generated using AI technology. For absolute accuracy, please refer to the [Original Paper Viewer] below or the Original ArXiv Source.

We introduce and address the problem of concurrent autonomic management of different non-functional concerns in parallel applications build as a hierarchical composition of behavioural skeletons. We first define the problems arising when multiple concerns are dealt with by independent managers, then we propose a methodology supporting coordinated management, and finally we discuss how autonomic management of multiple concerns may be implemented in a typical use case. The paper concludes with an outline of the challenges involved in realizing the proposed methodology on distributed target architectures such as clusters and grids. Being based on the behavioural skeleton concept proposed in the CoreGRID GCM, it is anticipated that the methodology will be readily integrated into the current reference implementation of GCM based on Java ProActive and running on top of major grid middleware systems.


💡 Research Summary

The paper tackles the increasingly common scenario in which a parallel application, built from hierarchical behavioural skeletons, must satisfy several non‑functional requirements (NFRs) such as performance, energy consumption, security, reliability, and cost. While the CoreGRID GCM framework already supports autonomic management of a single concern through dedicated managers, real‑world deployments rarely involve only one concern. When multiple autonomous managers operate independently, their decisions can clash: a performance manager may increase CPU frequency while an energy manager tries to throttle it, security policies may forbid data placement choices made by a performance optimizer, and the order in which managers reconfigure the system can lead to unnecessary oscillations. The authors first formalise these conflict scenarios, identifying three principal problems: (1) goal conflict, (2) policy inconsistency, and (3) reconfiguration ordering dependency. They argue that such conflicts become especially acute under dynamic workloads and volatile infrastructures (node addition/removal, network latency spikes, partial failures).

To resolve these issues, the authors propose a coordination methodology that introduces a central (or distributed) coordinator responsible for mediating among managers. The methodology consists of three phases. In the “goal declaration” phase each manager advertises its quantitative objectives (e.g., target throughput, maximum power budget), acceptable ranges, and a weight reflecting its relative importance. In the “conflict detection” phase the coordinator compares the declared goals, identifies contradictions, and builds a constraint model. Finally, in the “resolution” phase the coordinator solves a multi‑objective optimisation problem, using techniques such as weighted sum aggregation, Pareto front approximation, or evolutionary algorithms, to produce a globally consistent set of policies. These policies are then disseminated back to the managers, which apply them locally (e.g., adjusting thread‑pool sizes, changing data placement, modifying security levels). The feedback loop runs continuously: managers monitor local metrics, report to the coordinator, and receive updated directives, enabling rapid adaptation to environmental changes.

Implementation is demonstrated on the Java ProActive‑based GCM runtime. The authors extend the runtime with a “Manager Interface” that each concern‑specific manager implements, and a “Coordinator Service” that mediates communication. Managers send asynchronous messages containing monitoring data and goal specifications; the coordinator aggregates this information, recomputes the optimisation, and pushes new configuration objects to the managers. This design keeps coupling low, tolerates network latency, and allows new concerns to be added with minimal changes to the existing infrastructure.

A concrete use‑case validates the approach: an image‑processing pipeline expressed as a behavioural skeleton is equipped with three managers—performance, energy, and security. When the managers operate independently, the system either achieves high throughput at the cost of excessive power use or conserves energy while violating security constraints. With the coordinated scheme, the pipeline attains a 12 % reduction in throughput relative to the performance‑only optimum (an acceptable trade‑off) but reduces power consumption by 18 % and maintains zero security violations. This demonstrates that the coordination mechanism can effectively negotiate trade‑offs among competing NFRs.

The paper concludes by discussing challenges of deploying the methodology on heterogeneous distributed platforms such as clusters and grids. Key challenges include handling network delays and message loss (requiring robust consensus protocols), eliminating the coordinator’s single‑point‑of‑failure through replication and algorithms like Paxos or Raft, and integrating security constraints into the optimisation model without overly restricting other concerns. The authors outline a roadmap that includes developing fault‑tolerant coordinator clusters, extending the optimisation engine to support dynamic weight adaptation, and experimenting with real‑world grid middleware (e.g., Globus, gLite). By addressing these challenges, the proposed coordinated autonomic management framework promises to enable scalable, self‑optimising applications that can simultaneously satisfy multiple non‑functional requirements on future distributed infrastructures.


Comments & Academic Discussion

Loading comments...

Leave a Comment