GSoC Project Proposal: Parallel Profiling Tools for GHC.

Hello Everyone,GSoC Project: Parallel Profiling Tools for GHC. Student: Donnie Jones Mentor: Simon Marlow Project based upon suggestion by Simon Marlow: http://hackage.haskell.org/trac/summer-of-code/ticket/1559 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

Hello,
I added some additional goals below.
On Thu, Mar 27, 2008 at 2:23 PM, Donnie Jones
Hello Everyone,GSoC Project: Parallel Profiling Tools for GHC. Student: Donnie Jones Mentor: Simon Marlow Project based upon suggestion by Simon Marlow: http://hackage.haskell.org/trac/summer-of-code/ticket/1559
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
* Develop a single application for visualization of profiles i. application would build visualizations of the desired information as needed i. application would generate reports with specific numbers from the analysis, rather than only images with graphs i. application would interactively sort / rank threads based upon states, such as running, blocking, etc. i. application would integrate the visualization tools into a single program (which may lead to support for other profiling models than just parallelism)
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
Thank you. __ Donnie Jones
participants (1)
-
Donnie Jones