Person:
Schwan, Karsten

Associated Organization(s)
Organizational Unit
ORCID
ArchiveSpace Name Record

Publication Search Results

Now showing 1 - 10 of 10
  • Item
    CCM: Scalable, On-Demand Compute Capacity Management for Cloud Datacenters
    (Georgia Institute of Technology, 2013) Kesavan, Mukil ; Ahmad, Irfan ; Krieger, Orran ; Soundararajan, Ravi ; Gavrilovska, Ada ; Schwan, Karsten
    We present CCM (Cloud Capacity Manager) – a prototype system, and, methods for dynamically multiplexing the compute capacity of cloud datacenters at scales of thousands of machines, for diverse workloads with variable demands. This enables mitigation of resource consumption hotspots and handling unanticipated demand surges, leading to improved resource availability for applications and better datacenter utilization levels. Extending prior studies primarily concerned with accurate capacity allocation and ensuring acceptable application performance, CCM also focuses on the tradeoffs due to two unavoidable issues in large scale commodity datacenters: (i) maintaining low operational overhead, and (ii) coping with the increased incidences of management operation failures. CCM is implemented in an industry-strength cloud infrastructure built on top of the VMware vSphere virtualization platform and is currently deployed in a 700 physical host datacenter. Its experimental evaluation uses production workload traces and a suite of representative cloud applications to generate dynamic scenarios. Results indicate that the pragmatic cloud-wide nature of CCM provides up to 25% more resources for workloads and improves datacenter utilization by up to 20%, compared to the alternative approach of multiplexing capacity within multiple smaller datacenter partitions.
  • Item
    Personal Clouds: Sharing and Integrating Networked Resources to Enhance End User Experiences
    (Georgia Institute of Technology, 2013) Jang, Minsung ; Schwan, Karsten ; Bhardwaj, Ketan ; Gavrilovska, Ada ; Avasthi, Adhyas
    End user experiences on mobile devices with their rich sets of sensors are constrained by limited device battery lives and restricted form factors, as well as by the ‘scope’ of the data available locally. The 'Personal Cloud' distributed software abstractions address these issues by enhancing the capabilities of a mobile device via seamless use of both nearby and remote cloud resources. In contrast to vendor-specific, middleware-based cloud solutions, Personal Cloud instances are created at hypervisorlevel, to create for each end user the federation of networked resources best suited for the current environment and use. Specifically, the Cirrostratus extensions of the Xen hypervisor can federate a user’s networked resources to establish a personal execution environment, governed by policies that go beyond evaluating network connectivity to also consider device ownership and access rights, the latter managed in a secure fashion via standard Social Network Services. Experimental evaluations with both Linux- and Android-based devices, and using Facebook as the SNS, show the approach capable of substantially augmenting a device's innate capabilities, improving application performance and the effective functionality seen by end users.
  • Item
    Cellule: Lightweight Execution Environment for Accelerator-based Systems
    (Georgia Institute of Technology, 2010) Gavrilovska, Ada ; Gupta, Vishakha ; Schwan, Karsten ; Tembey, Priyanka ; Xenidis, Jimi
    The increasing prevalence of accelerators is changing the high performance computing (HPC) landscape to one in which future platforms will consist of heterogeneous multi-core chips comprised of both general purpose and specialized cores. Coupled with this trend is increased support for virtualization, which can abstract underlying hardware to aid in dynamically managing its use by HPC applications while at the same time, provide lightweight, efficient, and specialized execution environments (SEE) for applications to maximally exploit the hardware. This paper describes the Cellule architecture which uses virtualization to create high performance, low noise SEEs for accelerators. The paper describes important properties of Cellule and illustrates its advantages with an implementation on the IBM Cell processor. With compute-intensive workloads, performance improvements of up to 60% are attained when using Cellule’s SEE vs. the current Linux-based runtime, resulting in a system architecture that is suitable for future accelerators and specialized cores irrespective of whether they are on-chip or off-chip. A key principle, coordinated resource management for accelerator and general purpose resources, is shown to extend beyond Cell, using experimental results obtained on a different accelerator platform.
  • Item
    I/O Virtualization - from self-virtualizing devices to metadata-rich information appliances
    (Georgia Institute of Technology, 2009-07-12) Schwan, Karsten ; Eisenhauer, Greg S. ; Gavrilovska, Ada
  • Item
    A Virtualized Quality of Service Packet Scheduling Accelerator
    (Georgia Institute of Technology, 2008-05-21) Chuang, Kangtao Kendall ; Yalamanchili, Sudhakar ; Gavrilovska, Ada ; Schwan, Karsten
    This paper introduces the virtualization of a Quality of Service Packet Scheduler. Virtualization in terms of resource sharing among multiple processes of virtual packet schedulers implementing the DWCS algorithm on an FPGA is implemented in the ShareStreams- V architecture. This work builds on the previous work in ShareStreams, which implemented the Dynamic Window-Constrained Scheduler algorithm. This implementation is parametric, permitting tradeoffs between packet decision latency, decision throughput, and the number of virtual packet schedulers supported. ShareStreams-V is able to schedule minimal size packets faster than one decision per 51.2 ns for up to 64 streams, the throughput required for 10Gbps Ethernet.
  • Item
    Towards IQ-Appliances: Quality-awareness in Information Virtualization
    (Georgia Institute of Technology, 2007) Niranjan Mysore, Radhika ; Gavrilovska, Ada ; Schwan, Karsten ; Tembey, Priyanka
    Our research addresses two important problems that arise in modern large-scale distributed systems: (1) the necessity to virtualize their data flows by applying actions such as filtering, format translation, coalescing or splitting, etc., and (2) the desire to separate such actions from enterprise applications' business logic, to make it easier for future service-oriented codes to interoperate in diverse and dynamic environments. This paper considers the runtimes of the `information appliances' used for these purposes, particularly with respect to their ability to provide diverse levels of Quality of Service (QoS) in lieu of dynamic application behaviors and the consequent changes in the resource needs of their data flows. Our specific contribution is the enrichment of these runtimes with methods for QoS-awareness, thereby giving them the ability to deliver desired levels of QoS even under sudden requirement changes -- IQ-appliances. For experimental evaluation, we enrich a prototype implementation of an IQ-appliance, based on the Intel IXP network processor with the additional functionality needed to guarantee QoS constraints for diverse data streams. Measurements demonstrate the feasibility and utility of the approach.
  • Item
    Autonomic Information Flows
    (Georgia Institute of Technology, 2005) Schwan, Karsten ; Cooper, Brian F. ; Eisenhauer, Greg S. ; Gavrilovska, Ada ; Wolf, Matthew ; Abbasi, Hasan ; Agarwala, Sandip ; Cai, Zhongtang ; Kumar, Vibhore ; Lofstead, Jay ; Mansour, Mohamed S. ; Seshasayee, Balasubramanian ; Widener, Patrick M. (Patrick McCall)
    Today's enterprise systems and applications implement functionality that is critical to the ability of society to function. These complex distributed applications, therefore, must meet dynamic criticality objectives even when running on shared heterogeneous and dynamic computational and communication infrastructures. Focusing on the broad class of applications structured as distributed information flows, the premise of our research is that it is difficult, if not impossible, to meet their dynamic service requirements unless these applications exhibit autonomic or self-adjusting behaviors that are `vertically' integrated with underlying distributed systems and hardware. Namely, their autonomic functionality should extend beyond the dynamic load balancing or request routing explored in current web-based software infrastructures to (1) exploit the ability of middleware or systems to be aware of underlying resource availabilities, (2) dynamically and jointly adjust the behaviors of interacting elements of the software stack being used, and even (3) dynamically extend distributed platforms with enterprise functionality (e.g., network-level business rules for data routing and distribution). The resulting vertically integrated systems can meet stringent criticality or performance requirements, reduce potentially conflicting behaviors across applications, middleware, systems, and resources, and prevent breaches of the `performance firewalls' that isolate critical from non-critical applications. This paper uses representative information flow applications to argue the importance of vertical integration for meeting criticality requirements. This is followed by a description of the AutoFlow middleware, which offers methods that drive the control of application services with runtime knowledge of current resource behavior. Finally, we demonstrate the opportunities derived from the additional ability of AutoFlow to enhance such methods by also dynamically extending and controlling the underlying software stack, first to better understand its behavior and second, to dynamically customize it to better meet current criticality requirements.
  • Item
    An Approach Towards Enabling Intelligent Networking Services for Distributed Multimedia Applications
    (Georgia Institute of Technology, 2005) Sundaragopalan, Srikanth ; Gavrilovska, Ada ; Kumar, Sanjay ; Schwan, Karsten
    An increase in network speeds and addition of new services in the Internet has increased the demand for intelligence and flexibility in network systems. This paper explores the extent to which an emergent class of programmable networking devices - network processors, can be used to deliver more efficient, innovative services to multimedia applications. We present and experimentally evaluate an architecture model, which enables the dynamic creation of application-specific services on programmable communication devices, using the Intel IXP2400 network processor and an image manipulation application.
  • Item
    A Practical Approach for Zero Downtime in an Operational Information System
    (Georgia Institute of Technology, 2002) Gavrilovska, Ada ; Schwan, Karsten ; Oleson, Van
    An Operational Information System (OIS) supports a real-time view of an organization's information critical to its logistical business operations. A central component of an OIS is an engine that integrates data events captured from distributed, remote sources in order to derive meaningful real-time views of current operations. This Event Derivation Engine (EDE) continuously updates these views and also publishes them to a potentially large number of remote subscribers. This paper describes a sample OIS and EDE in the context of an airline's operations. It then defines the performance and availability requirements to be met by this system, specifically focusing on the EDE component. One particular requirement for the EDE is that subscribers to its output events should not experience downtime due to EDE failures and crashes or increased processing loads. This paper describes a practical technique for masking failures and for hiding the costs of recovery from EDE subscribers. This technique utilizes redundant EDEs that coordinate view replicas with a relaxed synchronous fault tolerance protocol. Combination of pre- and post-buffering replicas is used to attain an optimal solution, which still prevents system-wide failure in the face of deterministic faults, such as ill-formed messages. By minimizing the amounts of synchronization used across replicas, the resulting zero downtime EDE can be scaled to support the large number of subscribers it must service.
  • Item
    Adaptable Mirroring in Cluster Servers
    (Georgia Institute of Technology, 2001) Gavrilovska, Ada ; Schwan, Karsten ; Oleson, Van
    This paper presents a software architecture for continuously mirroring streaming data received by one node of a cluster-based server system to other cluster nodes. The intent is to distribute the server loads implied by the data's processing and distribution to large numbers of clients. This is particularly important when a server performs multiple processing tasks, some of which may heavily depend on current system status. One specific example is the preparation of suitable initialization state for thin clients, so that such clients can understand future data events being streamed to them. In particular, when large numbers of thin clients must be initialized at the same time, such initialization must be performed without jeopardizing the quality of service offered to regular clients continuing to receive data streams. The mirroring framework presented and evaluated here has several novel aspects. First, by performing mirroring at the middleware level, application semantics may be used to reduce mirroring traffic: by event filtering based on data type or even data content, by coalescing certain events, or by simply varying mirroring rates according to current application needs concerning the consistencies of mirrored vs. original data. The intent of such dynamically varied mirroring is to improve server scalability, both with respect to its ability to stream data events to a large number of clients and to deal with large and highly variable request volumes from clients that require other services, such as new initial states computed from incoming data events. Second, this paper presents an adaptive algorithm that varies mirror consistency and thereby, mirroring overheads in response to changes in clients' request behavior. The third, novel aspect of this work is the framework's ability to not only mirror events, but to also mirror the new states computed from incoming events, thus enabling dynamic tradeoffs in communication vs. computation loads imposed on the server node receiving events and on its mirror nodes. This framework capability is used for adaptive event coalescing in response to increases or decreases in client request loads. Fourth, mirroring functionality is structured so that it is easily 'split' across nodes' main CPUs and the CoProcessors resident on their programmable network interfaces (should such interfaces exist). A case study of a mirroring design for an Intel I2O-based interface board using an i960 RD CoProcessor is also presented in this paper.