Filters








1,941 Hits in 2.4 sec

Composable scheduler activations for Haskell

K. C. SIVARAMAKRISHNAN, TIM HARRIS, SIMON MARLOW, SIMON PEYTON JONES
2016 Journal of functional programming  
In this paper, we describe a novel concurrency substrate design for the Glasgow Haskell Compiler that allows multicore schedulers for concurrent and parallel Haskell programs to be safely and modularly  ...  The approach relies on abstracting the interface to the user-implemented schedulers through scheduler activations, together with the use of Software Transactional Memory to promote safety in a multicore  ...  As for the implementation, we would like to explore the effectiveness of user-level gang scheduling for Data Parallel Haskell (Chakravarty et al., 2007) workloads, and priority scheduling for Haskell  ... 
doi:10.1017/s0956796816000071 fatcat:w6zdte5jybamjhyii64lq6wtl4

A meta-scheduler for the par-monad

Adam Foltzer, Abhishek Kulkarni, Rebecca Swords, Sajith Sasidharan, Eric Jiang, Ryan Newton
2012 Proceedings of the 17th ACM SIGPLAN international conference on Functional programming - ICFP '12  
library for Haskell.  ...  We demonstrate performance benefits of combined CPU/GPU scheduling over either alone, and of combined multithreaded/distributed scheduling over existing distributed programming approaches for Haskell.  ...  Obliviousness means that while the scheduler attempts to maintain P worker threads for P processors, fewer than P may be active at a given time.  ... 
doi:10.1145/2364527.2364562 dblp:conf/icfp/FoltzerKSSJN12 fatcat:3huj55wmdrb4bnlsdsuuvthkdu

A meta-scheduler for the par-monad

Adam Foltzer, Abhishek Kulkarni, Rebecca Swords, Sajith Sasidharan, Eric Jiang, Ryan Newton
2012 SIGPLAN notices  
library for Haskell.  ...  We demonstrate performance benefits of combined CPU/GPU scheduling over either alone, and of combined multithreaded/distributed scheduling over existing distributed programming approaches for Haskell.  ...  Obliviousness means that while the scheduler attempts to maintain P worker threads for P processors, fewer than P may be active at a given time.  ... 
doi:10.1145/2398856.2364562 fatcat:e3ow5h5xbnftlkxhuubwivzmhu

System-Model-Based Simulation of UML Models [article]

Maria Victoria Cengarle, Jürgen Dingel, Hans Grönninger, Bernhard Rumpe
2014 arXiv   pre-print
This paper shows how the system model can serve as the basis for a highly customizable execution and simulation environment for the UML.  ...  The design and implementation of a prototype of such an environment is described and its use for the experimentation with different semantic variation points is illustrated.  ...  The European Community is not liable for any use that may be made of the information contained herein. This research is supported by the DFG as part of the rUML project.  ... 
arXiv:1409.6622v1 fatcat:37iicsbg5vfyfpn43of5qok4he

Distributed Network Generation Based on Preferential Attachment in ABS [chapter]

Keyvan Azadbakht, Nikolaos Bezirgiannis, Frank S. de Boer
2017 Lecture Notes in Computer Science  
In this paper, we investigate a distributedmemory approach for PA-based network generation which is scalable and which avoids low-level synchronization mechanisms thanks to utilizing a powerful programming  ...  This allows for scheduling of another process of the same active object and as such gives rise to the notion of cooperative scheduling: releasing the control cooperatively so another enabled process can  ...  Note that the ABS language specification does not fix a particular scheduling strategy for the process queue of active objects as the ABS analysis and verification tools will explore many (if all) schedulability  ... 
doi:10.1007/978-3-319-51963-0_9 fatcat:2bmvdayzijdb5dtwvzpkcwz2ki

Combining events and threads for scalable network services implementation and evaluation of monadic, application-level concurrency primitives

Peng Li, Steve Zdancewic
2007 SIGPLAN notices  
This paper shows how the hybrid model can be implemented entirely at the application level using concurrency monads in Haskell, which provides type-safe abstractions for both events and threads.  ...  This paper shows how the hybrid model can be implemented entirely at the application level using concurrency monads in Haskell, which provides type-safe abstractions for both events and threads.  ...  Martin, Yun Mao, Simon Peyton Jones and Simon Marlow for their help and feedbacks on this project.  ... 
doi:10.1145/1273442.1250756 fatcat:rznvhyqnf5blzki42yggppjqru

Combining events and threads for scalable network services implementation and evaluation of monadic, application-level concurrency primitives

Peng Li, Steve Zdancewic
2007 Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation - PLDI '07  
This paper shows how the hybrid model can be implemented entirely at the application level using concurrency monads in Haskell, which provides type-safe abstractions for both events and threads.  ...  This paper shows how the hybrid model can be implemented entirely at the application level using concurrency monads in Haskell, which provides type-safe abstractions for both events and threads.  ...  Martin, Yun Mao, Simon Peyton Jones and Simon Marlow for their help and feedbacks on this project.  ... 
doi:10.1145/1250734.1250756 dblp:conf/pldi/LiZ07 fatcat:i4llijobbfdyhafhodhiiznfma

Tidal - Pattern Language For Live Coding Of Music

Alex McLean, Geraint Wiggins
2010 Proceedings of the SMC Conferences  
Interface for live musical pattern making, with Tidal providing the pattern language.  ...  As mentioned in §4.1.6, we hope that a website for sharing ideas and code for musical patterning will encourage connections between communities of musicians and programmers interested in pattern.  ...  TIDAL Tidal is a pattern language embedded in the Haskell programming language, consisting of pattern representation, a library of pattern generators and combinators, an event scheduler and programmer's  ... 
doi:10.5281/zenodo.849840 fatcat:zkhpi5qinzgftg2pmht3pavk34

A Specification of Open Transactional Memory for Haskell [article]

Marino Miculan, Marco Peressotti
2016 arXiv   pre-print
In this paper, we present Open Transactional Memory (OTM), a programming abstraction supporting safe, data-driven interactions between composable memory transactions.  ...  In this paper we provide a specification of the OTM in the setting of Concurrent Haskell, showing that it is a conservative extension of current STM abstraction.  ...  Acknowledgements We thank Nicola Gigante and Valentino Picotti for their valuable feedback about the OTM programming model.  ... 
arXiv:1602.05365v1 fatcat:c6fxnrbdzfbyrhvwavwoiamwzi

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.  ...  A special thank-you to Andres Löh for help with typesetting the figures.  ...  Byron Cook, Austin Donnelly, Matthew Flatt, Jim Gray, Dan Grossman, Andres Löh, Jon Howell, Jan-Willem Maessen, Jayadev Misra, Norman Ramsey, Michael Ringenburg, David Tarditi, and especially Tony Hoare, for  ... 
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.  ...  A special thank-you to Andres Löh for help with typesetting the figures.  ...  Byron Cook, Austin Donnelly, Matthew Flatt, Jim Gray, Dan Grossman, Andres Löh, Jon Howell, Jan-Willem Maessen, Jayadev Misra, Norman Ramsey, Michael Ringenburg, David Tarditi, and especially Tony Hoare, for  ... 
doi:10.1145/1065944.1065952 dblp:conf/ppopp/HarrisMPH05 fatcat:fe4xetpowvfyfcanh3dbh3zoie

Multicore Scheduling for Lightweight Communicating Processes [chapter]

Carl G. Ritson, Adam T. Sampson, Frederick R. M. Barnes
2009 Lecture Notes in Computer Science  
A process-oriented design is typically composed of a large number of small isolated concurrent components.  ...  Our runtime scheduler, implemented using lock-free algorithms, automatically executes concurrent components in parallel on multicore systems.  ...  We thank Richard Jones for his feedback on this research. We would also like to thank the anonymous referees for their detailed comments. This work was funded by EPSRC grant EP/D061822/1.  ... 
doi:10.1007/978-3-642-02053-7_9 fatcat:peljul6mqvduvpwwhwn2zl4nii

Multicore scheduling for lightweight communicating processes

Carl G. Ritson, Adam T. Sampson, Frederick R.M. Barnes
2012 Science of Computer Programming  
A process-oriented design is typically composed of a large number of small isolated concurrent components.  ...  Our runtime scheduler, implemented using lock-free algorithms, automatically executes concurrent components in parallel on multicore systems.  ...  We thank Richard Jones for his feedback on this research. We would also like to thank the anonymous referees for their detailed comments. This work was funded by EPSRC grant EP/D061822/1.  ... 
doi:10.1016/j.scico.2011.04.006 fatcat:wtenl2yiuvbsnb5eacv2fx2ukq

LLVMVF: A Generic Approach for Verification of Multicore Software

Marcelo Sousa, Alper Sen
2013 Journal of electronic testing  
Multicore software demands new verification techniques different from the ones used for sequential software.  ...  Proliferation of multicore hardware boosted the need for verification of multicore software that is running on these hardware.  ...  In Fig. 4 , two threads Tx and Ty are active and for simplicity we assume that they modify global variables x and i only.  ... 
doi:10.1007/s10836-013-5405-9 fatcat:lsqniiiq2vftzo4goo7acsbicy

Software Transactional Memory with Interactions [article]

Marino Miculan, Marco Peressotti
2020 arXiv   pre-print
Software Transactional memory (STM) is an emerging abstraction for concurrent programming alternative to lock-based synchronizations.  ...  To overcome this limitation, in this paper we present Open Transactional Memory (OTM), a programming abstraction supporting safe, data-driven interactions between composable memory transactions.  ...  STM Haskell STM Haskell [4] builds on Concurrent Haskell adding transactional actions and a transactional memory for safe thread communication, called transactional variables or TVars for short.  ... 
arXiv:2007.10809v1 fatcat:2wkfde5yprgqveqeowittsu3re
« Previous Showing results 1 — 15 out of 1,941 results