Filters








233 Hits in 9.3 sec

Adaptive lock-free data structures in Haskell: a general method for concurrent implementation swapping

Chao-Hong Chen, Vikraman Choudhury, Ryan R. Newton
2017 Proceedings of the 10th ACM SIGPLAN International Symposium on Haskell - Haskell 2017  
One idea is to switch implementations adaptively, but it is nontrivial to switch the implementation of a concurrent data structure at runtime.  ...  In this paper, we present an algorithm for lifting plain to adaptive data and prove that the resulting hybrid data structure is itself lock-free, linearizable, and simulates the original.  ...  Acknowledgments This work was supported by a National Science Foundation (NSF) award #1453508.  ... 
doi:10.1145/3122955.3122973 dblp:conf/haskell/ChenCN17 fatcat:apsdgzcmrjeg7lftg6w6y4xtsa

Static Application-Level Race Detection in STM Haskell using Contracts

Romain Demeyer, Wim Vanhoof
2013 Electronic Proceedings in Theoretical Computer Science  
as Haskell, because the interferences generated by the processes to each other can occur at different levels and in a very subtle way.  ...  As a result, we are able to check statically that each transaction of a STM Haskell program handles the shared data in a such way that a given consistency property, expressed in the form of a user-defined  ...  We thank the anonymous reviewers for their constructive comments on a previous version of this paper.  ... 
doi:10.4204/eptcs.137.10 fatcat:d3wdft2z6ffhjp5omzlri457cm

Adaptive lock-free maps: purely-functional to scalable

Ryan R. Newton, Peter P. Fogg, Ali Varamesh
2015 Proceedings of the 20th ACM SIGPLAN International Conference on Functional Programming - ICFP 2015  
To this end we extend GHC to support lock-free data structures and introduce a new approach for safe CAS in a lazy language.  ...  We provide a way to retain the benefits of these pure-ina-box data structures while dynamically converting to a more scalable lock-free data structure under contention.  ...  Prerequisite 1: Lock-Free Concurrent Haskell As the central contribution of this paper involves lock-freedom for data structure operations, we must define lock-freedom in Haskell.  ... 
doi:10.1145/2784731.2784734 dblp:conf/icfp/NewtonFV15 fatcat:y2ky4sonxjdydmphoqtqzc4fa4

Adaptive lock-free maps: purely-functional to scalable

Ryan R. Newton, Peter P. Fogg, Ali Varamesh
2015 SIGPLAN notices  
To this end we extend GHC to support lock-free data structures and introduce a new approach for safe CAS in a lazy language.  ...  We provide a way to retain the benefits of these pure-ina-box data structures while dynamically converting to a more scalable lock-free data structure under contention.  ...  Prerequisite 1: Lock-Free Concurrent Haskell As the central contribution of this paper involves lock-freedom for data structure operations, we must define lock-freedom in Haskell.  ... 
doi:10.1145/2858949.2784734 fatcat:uactka4jkbho5cr7al463fvyyu

Comparing Selected Criteria of Programming Languages Java, PHP, C++, Perl, Haskell, AspectJ, Ruby, COBOL, Bash Scripts and Scheme Revision 1.0 - a Team CPLgroup COMP6411-S10 Term Report [article]

Sultan S. Al-Qahtani, Pawel Pietrzynski, Luis F. Guzman, Rafik Arif, Adrien Tevoedjre
2010 arXiv   pre-print
In this paper we present a comparative study between ten programming languages: Haskell, Java, Perl, C++, AspectJ, COBOL, Ruby, PHP, Bash Scripts, and Scheme; with respect of the following criteria: Secure  ...  Multiple programming languages are designed, specified, and implemented every year in order to keep up with the changing programming paradigms, hardware evolution, etc.  ...  Type classes in Haskell have a set of functions that can be implemented into different implementations depending the type of given data.  ... 
arXiv:1008.3434v1 fatcat:yc767tog7ze7xf2zboj4lfcaqy

A tale of lock-free agents: towards Software Transactional Memory in parallel Agent-Based Simulation

Jonathan Thaler, Peer-Olaf Siebers
2019 Complex Adaptive Systems Modeling  
Therefore, in this paper we propose the use of a lock-free approach to parallel ABS using Software Transactional Memory (STM) in conjunction with the pure functional programming language Haskell, which  ...  We present two case studies, in which we compare the performance of lock-based and lock-free STM implementations in two different well known Agent-Based Models, where we investigate both the scaling performance  ...  Handley for constructive feedback, comments and valuable discussions.  ... 
doi:10.1186/s40294-019-0067-9 fatcat:5fuv3e75onfqfkvmjpi67mvdde

Transactional Memory Today [chapter]

Maurice Herlihy
2010 Lecture Notes in Computer Science  
The benefits sought encompass simpler implementations of highly-concurrent data structures, better software engineering for concurrent platforms and enhanced performance.  ...  The term "Transactional Memory" was coined back in 1993, but even today, there is a vigorous debate about what it means and what it should do.  ...  Lock-Free Data Structures A data structure is lock-free if it guarantees that infinitely often some method call finishes in a finite number of steps, even if some subset of the threads halt in arbitrary  ... 
doi:10.1007/978-3-642-11659-9_1 fatcat:cihqs2idzzamdegkk7xn662cpy

Maurice Herlihy's 60th Birthday Celebration

Panagiota Fatourou
2015 Bulletin of the European Association for Theoretical Computer Science  
In the first article, Vassos Hadzilacos overviews and highlights the impact of Maurice's seminal paper on wait-free synchronization.  ...  He is currently a professor in the Computer Science Department at Brown University. He has an A.B. in Mathematics from Harvard University, and a Ph.D. in Computer Science from M.I.T.  ...  Acknowledgements I am grateful to Naama Ben-David and David Chan for their comments on this paper.  ... 
dblp:journals/eatcs/Fatourou15 fatcat:soxdkkno7nha5f3lds2pxfuhci

Composable memory transactions

Tim Harris, Simon Marlow, Simon Peyton Jones, Maurice Herlihy
2008 Communications of the ACM  
A particular source of concern is that even correctly-implemented concurrency abstractions cannot be composed together to form larger abstractions.  ...  In this paper we present a new concurrency model, based on transactional memory, that offers far richer composition.  ...  A special thank-you to Andres Löh for help with typesetting the figures.  ... 
doi:10.1145/1378704.1378725 fatcat:6pey7pbslnclvdgpnynu34jrtm

Composable memory transactions

Tim Harris, Simon Marlow, Simon Peyton-Jones, Maurice Herlihy
2005 Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming - PPoPP '05  
A particular source of concern is that even correctly-implemented concurrency abstractions cannot be composed together to form larger abstractions.  ...  In this paper we present a new concurrency model, based on transactional memory, that offers far richer composition.  ...  A special thank-you to Andres Löh for help with typesetting the figures.  ... 
doi:10.1145/1065944.1065952 dblp:conf/ppopp/HarrisMPH05 fatcat:fe4xetpowvfyfcanh3dbh3zoie

Distributed Computing Column 58

Jennifer L. Welch
2015 ACM SIGACT News  
A briefer overview can be found in chapter 9 of my synchronization monograph [31] .  ...  For a much more comprehensive overview of the field, interested readers should consult the book-length treatise of Harris, Larus, and Rajwar [17].  ...  Impact 2: Lock-free data structures The idea of synchronising access to data structures without relying on locks has had a significant impact on the practice of concurrent programming.  ... 
doi:10.1145/2789149.2789163 fatcat:ueub5knoofar3jee6plc763yni

Executing Java programs with transactional memory

Brian D. Carlstrom, JaeWoong Chung, Hassan Chafi, Austen McDonald, Chi Cao Minh, Lance Hammond, Christos Kozyrakis, Kunle Olukotun
2006 Science of Computer Programming  
To simplify parallel programming, there have been a number of proposals to support transactions directly in hardware and eliminate locks completely.  ...  The performance that these converted applications achieve is equal to or sometimes better than the original lock-based implementation.  ...  The views and conclusions contained in this document are those of the authors and should not be interpreted as representing the official policies, either expressed or implied, of the Defense Advanced Research  ... 
doi:10.1016/j.scico.2006.05.006 fatcat:ifyxmo7qkvdjlbyoyrddptrecu

Concurrent programming without locks

Keir Fraser, Tim Harris
2007 ACM Transactions on Computer Systems  
Mutual exclusion locks remain the de facto mechanism for concurrency control on shared-memory data structures.  ...  In this article we present three APIs which make it easier to develop nonblocking implementations of arbitrary data structures.  ...  Although not a general-purpose contention metric, this is sufficient to allow us to compare the performance of a single data structure implemented over different concurrency-control mechanisms.  ... 
doi:10.1145/1233307.1233309 fatcat:u2fl7u7lxrfndp6qduitxy5sbq

Efficient parallel programming in Poly/ML and Isabelle/ML

David C.J. Matthews, Makarius Wenzel
2010 Proceedings of the 5th ACM SIGPLAN workshop on Declarative aspects of multicore programming - DAMP '10  
In addition, block-structured groups of futures with propagation of exceptions allow for alternative functional evaluation (such as parallel search), without requiring user code to tackle concurrency.  ...  Here we report on a recent project to adapt both the Poly/ML compiler and the Isabelle theorem prover to current multicore hardware.  ...  The Haskell community has been very active in research and implementation of a wealth of concepts for concurrency and parallelism.  ... 
doi:10.1145/1708046.1708058 dblp:conf/popl/MatthewsW10 fatcat:zh2fs6336rds7bkc4jomwfznpq

Implementing SOS with Active Objects: A Case Study of a Multicore Memory System [chapter]

Nikolaos Bezirgiannis, Frank de Boer, Einar Broch Johnsen, Ka I Pun, S. Lizeth Tapia Tarifa
2019 Lecture Notes in Computer Science  
Supported by SIRIUS: Centre for Scalable Data Access (www.sirius-labs.no) and ADAPt: Exploiting Abstract Data-Access Patterns for Better Data Locality in Parallel Processing (www.mn.uio.no/ifi/english/  ...  We develop general design patterns in ABS for implementing SOS, and describe their application to the SOS model of multicore memory systems.  ...  The main contributions of this paper are as follows: -We provide general design patterns in ABS for implementing structural operational semantics with active objects, and apply these patterns to the implementation  ... 
doi:10.1007/978-3-030-16722-6_20 fatcat:g4mecu572vbbraw42vqyvpwy3u
« Previous Showing results 1 — 15 out of 233 results