Hello,
I added some additional goals below.
Hello Everyone,
GSoC Project: Parallel Profiling Tools for GHC.
Student: Donnie Jones
Mentor: Simon Marlow
Project based upon suggestion by Simon Marlow:
Overview:
For Haskell there are currently no tools to investigate the performance of parallel programs. This project would extend the Haskell compiler GHC to support profiling of parallel programs.
Parallel programs are inherently difficult to analyze and the prevalence of multi-core processors has increased the need for tools to facilitate gaining performance from parallelism. The ability to profile parallel programs in GHC could lead to improvements in GHC's RTS, and insights into writing parallel Haskell code.
Goals:
* Investigate the use of the GranSim framework for parallel profiling in GHC
i. Decide what is needed to commit the GranSim port to the GHC tree
i. Build additional profiling tools upon the GranSim framework
* Testing of performance hit accrued from parallel profiling
i. Investigate improving performance, possible modifications to GranSim port
* Construct tests to measure the performance improvements of parallel programs
i. Building benchmarks for parallel programs, related to ticket:
http://hackage.haskell.org/trac/summer-of-code/ticket/1544
* Improve upon GranSim visualization of profiles to clarify parallel profiling
i. Possibly add new visualization profiles, if time allows
I am sure that further details will need to be developed with the help of Simon Marlow; however, I am unsure if some of these details can be defined without first investigating the potential use of GranSim.
I look forward to your feedback.
Thank you.
__
Donnie Jones