575,394 research outputs found

    A Case Study in Testing Distributed Systems

    Get PDF
    This paper describes a case study in the testing of distributed systems. The software under test is a middleware system developed in Java. The full test lifecycle is examined including unit testing, integration testing, and system testing. Where possible, traditional tools and techniques are used to carry out the testing. One aspect where this is not possible is the testing of the low-level concurrency, which is often overlooked when testing commercial distributed systems, since the middleware or application server is already developed by a third-party and is assumed to operate correctly. This paper examines testing the middleware system itself, and therefore, a method for testing the concurrency properties of the system is used. The testing revealed a number of faults and design weaknesses, and showed that, with some adaptation, traditional tools and techniques go a long way in the testing of distributed applications

    UPC++: A high-performance communication framework for asynchronous computation

    Get PDF
    UPC++ is a C++ library that supports high-performance computation via an asynchronous communication framework. This paper describes a new incarnation that differs substantially from its predecessor, and we discuss the reasons for our design decisions. We present new design features, including future-based asynchrony management, distributed objects, and generalized Remote Procedure Call (RPC). We show microbenchmark performance results demonstrating that one-sided Remote Memory Access (RMA) in UPC++ is competitive with MPI-3 RMA; on a Cray XC40 UPC++ delivers up to a 25% improvement in the latency of blocking RMA put, and up to a 33% bandwidth improvement in an RMA throughput test. We showcase the benefits of UPC++ with irregular applications through a pair of application motifs, a distributed hash table and a sparse solver component. Our distributed hash table in UPC++ delivers near-linear weak scaling up to 34816 cores of a Cray XC40. Our UPC++ implementation of the sparse solver component shows robust strong scaling up to 2048 cores, where it outperforms variants communicating using MPI by up to 3.1x. UPC++ encourages the use of aggressive asynchrony in low-overhead RMA and RPC, improving programmer productivity and delivering high performance in irregular applications

    Cognition in context : the effect of information and communication support on task performance of distributed professionals

    Get PDF
    Mobile collaboration is emerging. Developments in technological and business areas provide opportunities for innovative applications and new ways of working. Mobile applications have possibilities to provide context information and to enrich the communication between distributed professionals. Such applications benefit from construct-driven assessments in earlier phases of design.\ud Cognition in Context designs and evaluates two mobile applications for home care and railway. User experiments are conducted to test their added value on task performance and the perceptions of the experts on its usefulness and applicability.\ud The results reveal that both cognitive and affective aspects are relevant for designing the applications, especially proficient decision-making and empowerment. Moreover, this study shows early identification of performance expectancies and suggestions to improve its applicability in practice: the relevance of cost-effective methods in IT innovation research

    Distributed and Constrained H2 \mathcal{H}_2 Control Design via System Level Synthesis and Dual Consensus ADMM

    Full text link
    Design of optimal distributed linear feedback controllers to achieve a desired aggregate behavior, while simultaneously satisfying state and input constraints, is a challenging but important problem in many applications, including future power systems with weather-dependent renewable generation. System level synthesis is a recent technique which has been used to reparametrize the optimal control problem as a convex program. However, prior work is restricted to a centralized control design, which lacks robustness to communication failures and disturbances, has high computational cost and does not preserve data privacy of local controllers. The main contribution of this work is to develop a distributed solution to the previous optimal control problem, while incorporating agent-specific and globally coupled constraints in a non-conservative manner. To achieve this, it is first shown that the dual of this problem is a distributed consensus problem. Then, an algorithm is developed based on the alternating direction method of multipliers to solve the dual while recovering a primal solution, and a convergence certificate is provided. Finally, the method's performance is demonstrated on a test case of control design for distributed energy resources that collectively provide stability services to the power grid
    • …
    corecore