59 research outputs found

    Towards a Systematic Approach to the Dynamic Adaptation of Structured Parallel Computations Using Model Predictive Control

    No full text
    Adaptiveness is an essential feature for distrib- uted parallel applications executed on dynamic environments like Grids and Clouds. Being adaptive means that parallel components can change their configuration at run-time (by modifying their parallelism degree or switching to a differ- ent parallel variant) to face irregular workload or to react to uncontrollable changes of the execution platform. A criti- cal problem consists in the definition of adaptation strategies able to select optimal reconfigurations (minimizing operating costs and reconfiguration overhead) and achieve the stability of control decisions (avoiding unnecessary reconfigurations). This paper presents an approach to apply Model Predictive Control (a form of optimal control studied in Control The- ory) to adaptive parallel computations expressed according to the Structured Parallel Programming methodology. We show that predictive control is amenable to achieve stability and optimality by relying on the predictability of structured parallelism patterns and the possibility to express analyti- cal cost models of their QoS metrics. The approach has been exemplified on two case-studies, providing a first assessment of its potential and feasibility

    Consistent reconfiguration protocols for adaptive high-performance applications

    No full text
    Programming models for Pervasive Computing applications typically include the possibility of specifying software components according to multiple alternative versions, each optimized for a certain class of computing and communication technologies. A main mechanism provided by these programming models permits to dynamically select one of the alternative versions for the execution. This reconfiguration activity may be critical, from a performance point of view, when considering High-Performance Pervasive Computing applications, especially if the reconfiguration must be performed in such a way that the application semantics is respected (i.e. the reconfiguration is consistent). In this paper we show how to introduce consistent reconfiguration protocols for the ASSISTANT programming model, we exemplify two general protocols and we show experimental results for one of them. Index Terms—High-Performance Computing, Autonomic Computing, Reconfiguration Protocols, Pervasive and Mobile Computin

    Analyzing Memory Requirements for Pervasive Grid Applications

    No full text
    Abstract—Pervasive Grid Computing Platforms include centralized computing nodes (e.g. parallel servers) as well as decentralized and mobile devices. Pervasive Grid applications include data- and computing-intensive components which can be mapped also onto decentralized and mobile nodes. The effective and practical success of this mapping resides also in deriving proper configurations of applications which consider the limited memory capabilities of those resources. In this paper we target this issue by showing how we can study and configure the memory requirements of an Emergency Management application. We present our solutions by using the ASSISTANT programming model for Pervasive Grid applications. Index Terms—Parallel Processing, Parallel Language, Structured Programming, Memory Managemen

    A Cooperative Predictive Control Approach to Improve the Reconfiguration Stability of Adaptive Distributed Parallel Applications

    No full text
    Adaptiveness in distributed parallel applications is a key feature to provide satisfactory performance results in the face of unexpected events such as workload variations and time-varying user requirements. The adaptation process is based on the ability to change specific characteristics of parallel components (e.g., their parallelism degree) and to guarantee that such modifications of the application configuration are effective and durable. Reconfigurations often incur a cost on the execution (a performance overhead and/or an economic cost). For this reason advanced adaptation strategies have become of paramount importance. Effective strategies must achieve properties like control optimality (making decisions that optimize the global application QoS), reconfiguration stability expressed in terms of the average time between consecutive reconfigurations of the same component, and optimizing the reconfiguration amplitude (number of allocated/deallocated resources). To control such parameters, in this article we propose a method based on a Cooperative Model-based Predictive Control approach in which application controllers cooperate to make optimal reconfigurations and taking account of the durability and amplitude of their control decisions. The effectiveness and the feasibility of the methodology is demonstrated through experiments performed in a simulation environment and by comparing it with other existing techniques

    High-Performance Pervasive Computing

    No full text
    In the area of next-generation mobile and pervasive grids, this chapter addresses the following issues: 1) mechanisms to express location & context-awareness, 2) uniform mechanisms to express parallel and distributed high-performance and fault-tolerant applications, 3) mechanisms for event management, 4) high-performance component model, 5) cost model, in particular with respect to dynamic establishment and management of inter-layer contracts and QoS control. The new programming model, called ASSISTANT, integrates in the high-performance environment ASSIST the features of management and context-awareness. The model consists of three layers from top to bottom: i) application structuring by means of high-performance components composition (called, the RED layer), ii) Manager network (BLUE layer), iii) context interface (the GREEN layer). The Manager construct will allow the application designer to explicitly express adaptivity and context-awareness strategies, by taking into account the information sent by the context interfaces (events, state changes, monitoring of computing and communication resource), and by providing to restructure the application layer from the view point of performance and of functionalities. The context is defined as a proper layer (GREEN) of the whole computing architecture. It is used to spread information about the environment to be controlled (sensors, actuators, the same computing nodes and communication lines) and about application modules (performance measures)

    Metasurface transformation for surface wave control

    No full text
    Metasurfaces (MTSs) constitute a class of thin metamaterials used for controlling plane waves and surface waves (SWs). At microwave frequencies, they are constituted by a metallic texture with elements of sub-wavelength size printed on thin grounded dielectric substrates. These structures support the propagation of SWs. By averaging the tangential fields, the MTSs can be characterized through homogenized isotropic or anisotropic boundary conditions, which can be described through a homogeneous equivalent impedance. This impedance can be spatially modulated by locally changing the size/orientation of the texture elements. This allows for a deformation of the SW wavefront which addresses the local wavevector along not-rectilinear paths. The effect of the MTS modulation can be analysed in the framework of transformation optics. This article reviews theory and implementation of this MTS transformation and shows some examples at microwave frequencies

    A cost model for autonomic reconfigurations in high-performance pervasive applications

    No full text
    In the last years we have seen the diffusion of platforms including high- performance nodes (e.g. multicores) and powerful mobile devices (e.g. smartphones) interconnected by heterogeneous networks. Relevant examples of applications targeting these kinds of platforms are Emergency Management and Homeland Protection which provide computing/ communication activities characterized by user-defined Quality of Service constraints. In this paper we introduce the ASSISTANT programming model for adaptive parallel applications. ASSISTANT components are specified in multiple versions, each one dynamically selected according to an adaptation strategy aimed to target the required QoS levels. For these applications a key-issue is a well-defined adaptation semantics featuring a cost model which describes the overhead for reconfiguring a component (e.g. when switching between versions). In this paper we introduce our approach and we evaluate this cost on a flood management application. Author Keywords High-Performance Computing, Adaptivity, Autonomic Computing, Application Reconfigurations

    Adaptivity in Risk and Emergency Management Applications on Pervasive Grids

    No full text
    Pervasive Grid computing platforms are com- posed of a variety of fixed and mobile nodes, interconnected through multiple wireless and wired network technologies. Pervasive Grid Applications must adapt themselves to the state of their surrounding environment which includes envi- ronmental data (e.g. collected from sensors) and the state of the used resources (e.g. network or node states). Adaptation is especially important if we consider complex High-Performance Pervasive Grid applications, such as intelligent transportation and emergency management. In this paper we investigate how to define adaptivity for complex Pervasive Grid applications by providing multiple versions of application parallel modules. The versions are defined by exploiting different sequential algorithms and parallelization techniques. We introduce per- formance analysis tools for versions, which allow us to define specific selection policies of the best version to be executed, depending on the context. We show how each version is best suited to be executed on two application scenarios, also by means of experiments. To synthesize the contributions of this paper we introduce the ASSISTANT programming model, for adaptive Pervasive Grid applications
    • …
    corecore