49 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

    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

    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

    Towards Parallel Data Stream Processing on System-on-Chip CPU+GPU Devices

    No full text
    Data Stream Processing is a pervasive computing paradigm with a wide spectrum of applications. Traditional streaming systems exploit the processing capabilities provided by homogeneous Clusters and Clouds. Due to the transition to streaming systems suitable for IoT/Edge environments, there has been the urgent need of new streaming frameworks and tools tailored for embedded platforms, often available as System-onChips composed of a small multicore CPU and an integrated onchip GPU. Exploiting this hybrid hardware requires special care in the runtime system design. In this paper, we discuss the support provided by the WindFlow library, showing its design principles and its effectiveness on the NVIDIA Jetson Nano board

    The 4th International Workshop on Autonomic Solutions for Parallel and Distributed Data Stream Processing (Auto-DaSP 2021)

    No full text
    The organizers of the 4th International Workshop on Autonomic Solutions for Parallel and Distributed Data Stream Processing (Auto-DaSP 2021) are delighted to welcome you to the workshop proceedings as part of the ICPE 2021 conference companion
    corecore