18 research outputs found

    A Self-adaptive Agent-based System for Cloud Platforms

    Full text link
    Cloud computing is a model for enabling on-demand network access to a shared pool of computing resources, that can be dynamically allocated and released with minimal effort. However, this task can be complex in highly dynamic environments with various resources to allocate for an increasing number of different users requirements. In this work, we propose a Cloud architecture based on a multi-agent system exhibiting a self-adaptive behavior to address the dynamic resource allocation. This self-adaptive system follows a MAPE-K approach to reason and act, according to QoS, Cloud service information, and propagated run-time information, to detect QoS degradation and make better resource allocation decisions. We validate our proposed Cloud architecture by simulation. Results show that it can properly allocate resources to reduce energy consumption, while satisfying the users demanded QoS

    Dynamic Select Approach for Memory Allocation

    Get PDF
    When we need to use Memory allocation for relatively huge datasets, then we may have a possibility to encounter the exception that is OutOfMemoryException. This exception shows that memory is not available for the allocation. But exception does not occur due to limited memory system, it usually occurs due to non availability of virtual address space for that byte of data. This issue is because of the current implementation of memory allocation which uses single array byte as backing store. When the data set is huge the backing store of memory allocation space also requires more contiguous memory than that is available in the virtual address space. If there is no contiguous memory available for the process then it encounters the exception of OutOfMemoryException even there is enough space available but not continuous. This research proposed an approach for dynamically selecting the best memory allocator for every application. The proposed approach does not need any type of contiguous memory for storing the data in stream. This approach uses a dynamic list of small chunks as backing storage that are allocated on demand when the stream is used. If there is no contiguous memory available in the Stream then memory allocation can be done from these small chunks of memory with no OutOfMemoryException

    A Framework for QoS-aware Execution of Workflows over the Cloud

    Full text link
    The Cloud Computing paradigm is providing system architects with a new powerful tool for building scalable applications. Clouds allow allocation of resources on a "pay-as-you-go" model, so that additional resources can be requested during peak loads and released after that. However, this flexibility asks for appropriate dynamic reconfiguration strategies. In this paper we describe SAVER (qoS-Aware workflows oVER the Cloud), a QoS-aware algorithm for executing workflows involving Web Services hosted in a Cloud environment. SAVER allows execution of arbitrary workflows subject to response time constraints. SAVER uses a passive monitor to identify workload fluctuations based on the observed system response time. The information collected by the monitor is used by a planner component to identify the minimum number of instances of each Web Service which should be allocated in order to satisfy the response time constraint. SAVER uses a simple Queueing Network (QN) model to identify the optimal resource allocation. Specifically, the QN model is used to identify bottlenecks, and predict the system performance as Cloud resources are allocated or released. The parameters used to evaluate the model are those collected by the monitor, which means that SAVER does not require any particular knowledge of the Web Services and workflows being executed. Our approach has been validated through numerical simulations, whose results are reported in this paper

    Resource Provisioning for Multi-Tier Virtualized Server Applications

    Get PDF
    Virtualizing the x86-based data center creates a dynamic environment for server application deployment and resource sharing. Resource management in this environment is challenging as applications are under fluctuating workloads causing diverse resource demands across their tiers. Resource allocation adaptation is essential for high performance machine utilization. This paper presents feedback controllers that dynamically adjust the CPU allocations of multi-tier applications in order to adapt to workload changes by considering the resource coupling between utilizations of application components. Our experimental evaluation on a virtualized 3-tier Rubis server application shows that our techniques work effectively

    Efficient resource provisioning in compute clouds via VM multiplexing

    Full text link
    Resource provisioning in compute clouds often requires an estimate of the capacity needs of Virtual Machines (VMs). The estimated VM size is the basis for allocating resources commensurate with demand. In contrast to the traditional practice of estimating the size of VMs individually, we pro-pose a joint-VM provisioning approach in which multiple VMs are consolidated and provisioned together, based on an estimate of their aggregate capacity needs. This new ap-proach exploits statistical multiplexing among the workload patterns of multiple VMs, i.e., the peaks and valleys in one workload pattern do not necessarily coincide with the others. Thus, the unused resources of a low utilized VM can be bor-rowed by the other co-located VMs with high utilization. Compared to individual-VM based provisioning, joint-VM provisioning could lead to much higher resource utilization. This paper presents three design modules to enable such a concept in practice. Specifically, a performance constraint describing the capacity need of a VM for achieving a certain level of application performance; an algorithm for estimat-ing the aggregate size of multiplexed VMs; a VM selection algorithm that seeks to find those VM combinations with complementary workload patterns. We showcase that the proposed three modules can be seamlessly plugged into ap-plications such as resource provisioning, and providing re-source guarantees for VMs. The proposed method and ap-plications are evaluated by performance data collected from about 16 thousand VMs in commercial data centers. The results demonstrate more than 45 % improvements in terms of the overall resource utilization
    corecore