Entries:
Comments:
Posts:

Loading User Information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading User Information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

Parallel Performance Tuning for Haskell

Very interesting work with implications for integration into more mainstream runtimes... In general, runtime support for parallel tuning is necessary going forward. The Many Core age has only just begun... This paper is a great read.

Parallel Haskell programming has entered the mainstream with support now included in GHC for multiple parallel programming models, along with multicore execution support in the runtime. However, tuning programs for parallelism is still something of a black art. Without much in the way of feedback provided by the runtime system, it is a matter of trial and error combined with experience to achieve good parallel speedups.

This paper describes an early prototype of a parallel profiling system for multicore programming with GHC. The system comprises three parts: fast event tracing in the runtime, a Haskell library for reading the resulting trace files, and a number of tools built on this library for presenting the information to the programmer. We focus on one tool in particular, a graphical timeline browser called ThreadScope.

Tags:

Follow the Discussion

  • Yes, very interesting! Let me be the first once again to say: 'I wish there was a Haskell# or Haskell .NET'. I don't suppose there is a .NET BCL binding for WinHugs? I mean I guess you'd have to put the whole BCL in the IO monad - but it'd be a start...

  • Joshua RossJoshRoss Niner since 2004

    The funniest things are the things that are true.  I wonder what percentage of the BCL methods are pure?

  • You actually raise a really good point. I wonder what MS are going to do in this area? Provide type annotations for existing stuff or just take a deep breath and start a parallel (sic) BCL type space with explicit pure / impure semantics baked into a updated type system. It's going to be really interesting to see what engineering choices they make in this space.

  • CharlesCharles Welcome Change

    Stay tuned. Smiley
    C

  • The hs-dotnet library is probably the closest to what you want, though it's not pretty.

Remove this comment

Remove this thread

close

Comments Closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums,
or Contact Us and let us know.