21,730 research outputs found

    Thread-modular shape analysis

    Full text link

    Force-Guiding Particle Chains for Shape-Shifting Displays

    Full text link
    We present design and implementation of a chain of particles that can be programmed to fold the chain into a given curve. The particles guide an external force to fold, therefore the particles are simple and amenable for miniaturization. A chain can consist of a large number of such particles. Using multiple of these chains, a shape-shifting display can be constructed that folds its initially flat surface to approximate a given 3D shape that can be touched and modified by users, for example, enabling architects to interactively view, touch, and modify a 3D model of a building.Comment: 6 pages, 5 figure, submitted to IROS 201

    Pointer Race Freedom

    Full text link
    We propose a novel notion of pointer race for concurrent programs manipulating a shared heap. A pointer race is an access to a memory address which was freed, and it is out of the accessor's control whether or not the cell has been re-allocated. We establish two results. (1) Under the assumption of pointer race freedom, it is sound to verify a program running under explicit memory management as if it was running with garbage collection. (2) Even the requirement of pointer race freedom itself can be verified under the garbage-collected semantics. We then prove analogues of the theorems for a stronger notion of pointer race needed to cope with performance-critical code purposely using racy comparisons and even racy dereferences of pointers. As a practical contribution, we apply our results to optimize a thread-modular analysis under explicit memory management. Our experiments confirm a speed-up of up to two orders of magnitude

    Thread-Modular Static Analysis for Relaxed Memory Models

    Full text link
    We propose a memory-model-aware static program analysis method for accurately analyzing the behavior of concurrent software running on processors with weak consistency models such as x86-TSO, SPARC-PSO, and SPARC-RMO. At the center of our method is a unified framework for deciding the feasibility of inter-thread interferences to avoid propagating spurious data flows during static analysis and thus boost the performance of the static analyzer. We formulate the checking of interference feasibility as a set of Datalog rules which are both efficiently solvable and general enough to capture a range of hardware-level memory models. Compared to existing techniques, our method can significantly reduce the number of bogus alarms as well as unsound proofs. We implemented the method and evaluated it on a large set of multithreaded C programs. Our experiments showthe method significantly outperforms state-of-the-art techniques in terms of accuracy with only moderate run-time overhead.Comment: revised version of the ESEC/FSE 2017 pape

    Abstract Interpretation with Unfoldings

    Full text link
    We present and evaluate a technique for computing path-sensitive interference conditions during abstract interpretation of concurrent programs. In lieu of fixed point computation, we use prime event structures to compactly represent causal dependence and interference between sequences of transformers. Our main contribution is an unfolding algorithm that uses a new notion of independence to avoid redundant transformer application, thread-local fixed points to reduce the size of the unfolding, and a novel cutoff criterion based on subsumption to guarantee termination of the analysis. Our experiments show that the abstract unfolding produces an order of magnitude fewer false alarms than a mature abstract interpreter, while being several orders of magnitude faster than solver-based tools that have the same precision.Comment: Extended version of the paper (with the same title and authors) to appear at CAV 201

    Weaving Lighthouses and Stitching Stories: Blind and Visually Impaired People Designing E-textiles

    Get PDF
    We describe our experience of working with blind and visually impaired people to create interactive art objects that are personal to them, through a participatory making process using electronic textiles (e-textiles) and hands-on crafting techniques. The research addresses both the practical considerations about how to structure hands-on making workshops in a way which is accessible to participants of varying experience and abilities, and how effective the approach was in enabling participants to tell their own stories and feel in control of the design and making process. The results of our analysis is the offering of insights in how to run e-textile making sessions in such a way for them to be more accessible and inclusive to a wider community of participants

    Androgynous Fasteners for Robotic Structural Assembly

    Get PDF
    We describe the design and analysis of an androgynous fastener for autonomous robotic assembly of high performance structures. The design of these fasteners aims to prioritize ease of assembly through simple actuation with large driver positioning tolerance requirements, while producing a reversible mechanical connection with high strength and stiffness per mass. This can be applied to high strength to weight ratio structural systems, such as discrete building block based systems that offer reconfigurability, scalability, and system lifecycle efficiency. Such periodic structures are suitable for navigation and manipulation by relatively small mobile robots. The integration of fasteners, which are lightweight and can be robotically installed, into a high performance robotically managed structural system is of interest to reduce launch energy requirements, enable higher mission adaptivity, and decrease system life-cycle costs
    corecore