TY - CONF AB - There has been a significant amount of research on hardware and software support for efficient concurrent data structures; yet, the question of how to build correct, simple, and scalable data structures has not yet been definitively settled. In this paper, we revisit this question from a minimalist perspective, and ask: what is the smallest amount of synchronization required for correct and efficient concurrent search data structures, and how could this minimal synchronization support be provided in hardware? To address these questions, we introduce memory tagging, a simple hardware mechanism which enables the programmer to "tag" a dynamic set of memory locations, at cache-line granularity, and later validate whether the memory has been concurrently modified, with the possibility of updating one of the underlying locations atomically if validation succeeds. We provide several examples showing that this mechanism can enable fast and arguably simple concurrent data structure designs, such as lists, binary search trees, balanced search trees, range queries, and Software Transactional Memory (STM) implementations. We provide an implementation of memory tags in the Graphite multi-core simulator, showing that the mechanism can be implemented entirely at the level of L1 cache, and that it can enable non-trivial speedups versus existing implementations of the above data structures. AU - Alistarh, Dan-Adrian AU - Brown, Trevor A AU - Singhal, Nandini ID - 8191 IS - 7 SN - 9781450369350 T2 - Annual ACM Symposium on Parallelism in Algorithms and Architectures TI - Memory tagging: Minimalist synchronization for scalable concurrent data structures ER - TY - CONF AB - Concurrent programming can be notoriously complex and error-prone. Programming bugs can arise from a variety of sources, such as operation re-reordering, or incomplete understanding of the memory model. A variety of formal and model checking methods have been developed to address this fundamental difficulty. While technically interesting, existing academic methods are still hard to apply to the large codebases typical of industrial deployments, which limits their practical impact. AU - Koval, Nikita AU - Sokolova, Mariia AU - Fedorov, Alexander AU - Alistarh, Dan-Adrian AU - Tsitelov, Dmitry ID - 7635 SN - 9781450368186 T2 - Proceedings of the ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPOPP TI - Testing concurrency on the JVM with Lincheck ER - TY - CONF AB - We introduce extension-based proofs, a class of impossibility proofs that includes valency arguments. They are modelled as an interaction between a prover and a protocol. Using proofs based on combinatorial topology, it has been shown that it is impossible to deterministically solve k-set agreement among n > k ≥ 2 processes in a wait-free manner. However, it was unknown whether proofs based on simpler techniques were possible. We explain why this impossibility result cannot be obtained by an extension-based proof and, hence, extension-based proofs are limited in power. AU - Alistarh, Dan-Adrian AU - Aspnes, James AU - Ellen, Faith AU - Gelashvili, Rati AU - Zhu, Leqi ID - 8383 SN - 9781450375825 T2 - Proceedings of the 39th Symposium on Principles of Distributed Computing TI - Brief Announcement: Why Extension-Based Proofs Fail ER - TY - JOUR AB - We present a method for animating yarn-level cloth effects using a thin-shell solver. We accomplish this through numerical homogenization: we first use a large number of yarn-level simulations to build a model of the potential energy density of the cloth, and then use this energy density function to compute forces in a thin shell simulator. We model several yarn-based materials, including both woven and knitted fabrics. Our model faithfully reproduces expected effects like the stiffness of woven fabrics, and the highly deformable nature and anisotropy of knitted fabrics. Our approach does not require any real-world experiments nor measurements; because the method is based entirely on simulations, it can generate entirely new material models quickly, without the need for testing apparatuses or human intervention. We provide data-driven models of several woven and knitted fabrics, which can be used for efficient simulation with an off-the-shelf cloth solver. AU - Sperl, Georg AU - Narain, Rahul AU - Wojtan, Christopher J ID - 8385 IS - 4 JF - ACM Transactions on Graphics SN - 07300301 TI - Homogenized yarn-level cloth VL - 39 ER - TY - JOUR AB - When short-range attractions are combined with long-range repulsions in colloidal particle systems, complex microphases can emerge. Here, we study a system of isotropic particles, which can form lamellar structures or a disordered fluid phase when temperature is varied. We show that, at equilibrium, the lamellar structure crystallizes, while out of equilibrium, the system forms a variety of structures at different shear rates and temperatures above melting. The shear-induced ordering is analyzed by means of principal component analysis and artificial neural networks, which are applied to data of reduced dimensionality. Our results reveal the possibility of inducing ordering by shear, potentially providing a feasible route to the fabrication of ordered lamellar structures from isotropic particles. AU - Pȩkalski, J. AU - Rzadkowski, Wojciech AU - Panagiotopoulos, A. Z. ID - 7956 IS - 20 JF - The Journal of chemical physics TI - Shear-induced ordering in systems with competing interactions: A machine learning study VL - 152 ER -