Files in this item
Repeating history : execution replay for Parallel Haskell programs
Item metadata
dc.contributor.author | Ferrerio, Henrique | |
dc.contributor.author | Janjic, Vladimir | |
dc.contributor.author | Castro, Laura | |
dc.contributor.author | Hammond, Kevin | |
dc.date.accessioned | 2014-12-08T15:31:07Z | |
dc.date.available | 2014-12-08T15:31:07Z | |
dc.date.issued | 2013 | |
dc.identifier | 47894726 | |
dc.identifier | 0abca1a0-4ad5-4e9f-804d-635961339fdc | |
dc.identifier | 84883202865 | |
dc.identifier.citation | Ferrerio , H , Janjic , V , Castro , L & Hammond , K 2013 , Repeating history : execution replay for Parallel Haskell programs . in Trends in Functional Programming : 13th International Symposium . vol. 7829 , Lecture Notes in Computer Science (LNCS) , Springer , pp. 231-246 . https://doi.org/10.1007/978-3-642-40447-4_15 | en |
dc.identifier.isbn | 9783642404467 | |
dc.identifier.isbn | 9783642404474 | |
dc.identifier.other | ORCID: /0000-0002-4326-4562/work/33080460 | |
dc.identifier.uri | https://hdl.handle.net/10023/5895 | |
dc.description.abstract | Parallel profiling tools, such as ThreadScope for Parallel Haskell, allow programmers to obtain information about the performance of their parallel programs. However, the information they provide is not always sufficiently detailed to precisely pinpoint the cause of some per- formance problems. Often, this is because the cost of obtaining that information would be prohibitive for a complete program execution. In this paper, we adapt the well-known technique of execution replay to make it possible to simulate a previous run of a program. We ensure that the non-deterministic parallel behaviour of the application is prop- erly emulated while the deterministic functional code is run unmodified. In this way, we can gather additional data about the behaviour of a par- allel program by replaying some parts of it with more detailed profiling information. We exploit this ability to identify performance bottlenecks in a quicksort implementation, and to derive a version that gives better speedups on multicore machines. | |
dc.format.extent | 16 | |
dc.format.extent | 219291 | |
dc.language.iso | eng | |
dc.publisher | Springer | |
dc.relation.ispartof | Trends in Functional Programming | en |
dc.relation.ispartofseries | Lecture Notes in Computer Science (LNCS) | en |
dc.rights | © 2013. Springer-Verlag Berlin Heidelberg. This is an Accepted Manuscript of an article published in Lecture Notes on Computer Science, subseries Trends in Functional Programming 2013. The final publication is available at Springer via http://dx.doi.org/10.1007/978-3-642-40447-4_15 | en |
dc.subject | QA75 Electronic computers. Computer science | en |
dc.subject.lcc | QA75 | en |
dc.title | Repeating history : execution replay for Parallel Haskell programs | en |
dc.type | Conference item | en |
dc.contributor.sponsor | European Commission | en |
dc.contributor.sponsor | European Commission | en |
dc.contributor.sponsor | EPSRC | en |
dc.contributor.sponsor | EPSRC | en |
dc.contributor.institution | University of St Andrews.School of Computer Science | en |
dc.contributor.institution | University of St Andrews.Centre for Interdisciplinary Research in Computational Algebra | en |
dc.identifier.doi | 10.1007/978-3-642-40447-4_15 | |
dc.identifier.grantnumber | n/a | en |
dc.identifier.grantnumber | FP&-ICT-2011-7 | en |
dc.identifier.grantnumber | EP/G055181/1 | en |
dc.identifier.grantnumber | EP/F030657/1 | en |
This item appears in the following Collection(s)
Items in the St Andrews Research Repository are protected by copyright, with all rights reserved, unless otherwise indicated.