Motivated by the need to enable easier data sharing and curb rising storage management costs, storage systems are becoming increasingly consolidated and thereby shared by a large number of users and applications. In s...
详细信息
Motivated by the need to enable easier data sharing and curb rising storage management costs, storage systems are becoming increasingly consolidated and thereby shared by a large number of users and applications. In such environments, service differentiation becomes increasingly important. Since caching is a fundamental and pervasive technique employed to improve the performance of storage systems, providing differentiated services from a storage cache is a crucial component of the entire end-to-end QoS solution. In this paper, we discuss a QoS architecture for a shared storage proxy cache which can provide long-term hit rate assurances to competing classes. the proposed architecture consists of three components: (a) per-class feedback controllers that track the performance of each class, (b) a fairness controller that allocates excess resources fairly in the case when all goals are met, and (c) a contention resolver that decides cache allocation in the case when at least one class does not meet its target hit rate. We compare the performance of various feedback per-class controllers, and provide guidelines for designing QoS mechanisms for such a dynamic environment.
High Performance computingsystems are moving heavily towards many-core processors with a deep hierarchy of memory. Accelerators like GPUs are widely being used for general purpose computing and processor architecture...
详细信息
ISBN:
(纸本)9781538666142
High Performance computingsystems are moving heavily towards many-core processors with a deep hierarchy of memory. Accelerators like GPUs are widely being used for general purpose computing and processor architectures are becoming increasingly complex to accommodate performance boost. this trend towards complex heterogeneous architecture makes the job of scientific application developers difficult in terms of performance, portability and productivity. With memory being distributed, this challenge becomes even more complex. Programming many-core shared memory systems are most widely accomplished using OpenMP, while MPI is used to manage the communications in a distributed system. Even though MPI provides a rich set of features, it is too explicit making users responsible for overlapping communication and computation. Task-based runtime systems have emerged as a solution to this challenge of programming these modern complex systems. this study surveys the landscape of task-based runtime systemsthat support distributed memory and presents a set of benchmark for evaluating and understanding runtime-performance and overheads of these systems.
distributed checkpointing is an important concept in providing fault tolerance in distributedsystems. In today's applications, e.g., grid and massively parallel applications, the imposed overhead of taking a dist...
详细信息
ISBN:
(纸本)0769523315
distributed checkpointing is an important concept in providing fault tolerance in distributedsystems. In today's applications, e.g., grid and massively parallel applications, the imposed overhead of taking a distributed checkpoint using the known approaches can often outweigh its benefits due to coordination and other overhead from the processes. this paper presents an innovative approach for distributed checkpointing. In this approach, the checkpoints are obtained using offline analysis based on the application level. During execution, no coordination is required. After presenting our approach, we prove its safety and present a performance analysis of it using stochastic models.
Message exchange is a central activity in distributedcomputing frameworks. Nevertheless, past research has paid little attention on profiling techniques and tools for endpoint communication. In this paper, we fill th...
ISBN:
(纸本)9781509014828
Message exchange is a central activity in distributedcomputing frameworks. Nevertheless, past research has paid little attention on profiling techniques and tools for endpoint communication. In this paper, we fill this gap by introducing a new fine-grained profiler for endpoints and communication between them in distributedsystems. Our tool aids efficient analysis, optimization, and tuning of endpoint communication in distributed frameworks. the paper presents an overview of our profiler, discusses employed profiling techniques and collected metrics, and shows preliminary results in profiling a well-known distributedcomputing framework.
Group communications systems have been designed to provide an infrastructure for fault-tolerance in distributedsystems, including wide-area systems. In our work on master-worker computation for GriPhyN, which is a la...
详细信息
ISBN:
(纸本)0769519202
Group communications systems have been designed to provide an infrastructure for fault-tolerance in distributedsystems, including wide-area systems. In our work on master-worker computation for GriPhyN, which is a large project in the area of the computational grid, we asked the question should we build our wide-area master-worker computation using wide-area group communications? this paper explains why we decided doing so was not a good idea.
Industrial Internet of things (IoT) is frequently mentioned as one of the emerging areas in computingthat may have a high potential real-world impact in the coming decade. In this paper, we analyze the challenges pos...
详细信息
ISBN:
(纸本)9781538668719
Industrial Internet of things (IoT) is frequently mentioned as one of the emerging areas in computingthat may have a high potential real-world impact in the coming decade. In this paper, we analyze the challenges posed and opportunities offered by industrial IoT solutions from the distributedsystems perspective. We focus on the sensing and actuation layer, which results from the the tight coupling of such solutions withthe physical objects they monitor and control. We analyze this layer with respect to interoperability, scalability, and dependability, which are key features of many distributedsystems.
Modern application infrastructures are based on clustered, multi-tiered architectures, where request distribution occurs in two sequential stages: over a cluster of web servers, and over a cluster of application serve...
详细信息
ISBN:
(纸本)0769523315
Modern application infrastructures are based on clustered, multi-tiered architectures, where request distribution occurs in two sequential stages: over a cluster of web servers, and over a cluster of application servers. Much work has focused on strategies for distributing requests across a web server cluster in order to improve overall throughput across the cluster. the strategies applied at the application layer are the same as those at the web server layer, because it is assumed that they transfer directly.
Elasticity actions in NoSQL data stores move large amounts of data over the network to take advantage of new resources. Here we propose incremental elasticity, a new mechanism for scheduling data transfers to a joinin...
详细信息
ISBN:
(纸本)9781538617915
Elasticity actions in NoSQL data stores move large amounts of data over the network to take advantage of new resources. Here we propose incremental elasticity, a new mechanism for scheduling data transfers to a joining server, leading to smoother elasticity actions with a reduced performance impact.
InterWeave is a distributed middleware system that supports the sharing of strongly typed, pointer-rich data structures across heterogeneous platforms. As a complement to RPC-based systems such as CORBA, .NET, and Jav...
详细信息
InterWeave is a distributed middleware system that supports the sharing of strongly typed, pointer-rich data structures across heterogeneous platforms. As a complement to RPC-based systems such as CORBA, .NET, and Java RM1, InterWeave allows processes to access shared data using ordinary reads and writes. Experience indicates that InterWeave-style sharing facilitates the rapid development of distributed applications, and enhances performance through transparent caching of state. In this paper, we focus on the aspects of InterWeave specifically designed to accommodate heterogeneous machine architectures. Beyond the traditional challenges of message-passing in heterogeneous systems, InterWeave (1) identifies and tracks data changes in the face of relaxed coherence models, (2) employs a wire format that captures not only data but also diffs in a machine and language-independent form, and (3) swizzles pointers to maintain long-lived (cross-call) address transparency. To support these operations, InterWeave maintains an extensive set of metadata structures, and employs a variety of performance optimizations. Experimental results show that InterWeave achieves performance comparable to that of RPC parameter passing when transmitting previously uncached data. When updating data that have already been cached, InterWeave's use of platform-independent diffs allows it to significantly outperform the straightforward use of RPC.
Writing correct distributed programs is hard. In spite of extensive testing and debugging, software faults persist even in commercial grade software. Many distributedsystems, especially those employed in safety-criti...
详细信息
Writing correct distributed programs is hard. In spite of extensive testing and debugging, software faults persist even in commercial grade software. Many distributedsystems, especially those employed in safety-critical environments, should be able to operate properly even in the presence of software faults. Monitoring the execution of a distributed system, and, on detecting a fault, initiating the appropriate corrective action is an important way to tolerate such faults. this gives rise to the predicate detection problem which involves finding a consistent cut of a distributed computation, if it exists, that satisfies the given global predicate. Detecting a predicate in a computation is, however, an NP-complete problem. To ameliorate the associated combinatorial explosion problem, we introduce the notion of computation slice in our earlier papers [5, 10]. Intuitively, slice is a concise representation of those consistent cuts that satisfy a certain condition. To detect a predicate, rather than searching the state-space of the computation, it is much more efficient to search the state-space of the slice. In this paper, we provide efficient algorithms to compute the slice for several classes of predicates. Our experimental results demonstrate that slicing can lead to an exponential improvement over existing techniques in terms of time and space.
暂无评论