Conference News & Coverage

Diamond Sponsors

  • Fotango
  • Intel
  • Microsoft

Gold Sponsors

  • Dell Inc.
  • Hewlett Packard
  • IBM
  • Mozilla Corporation

Silver Sponsors

  • ActiveState
  • Autodesk
  • Google
  • Greenplum
  • Ingres
  • Novell, Inc.
  • OpSource
  • Rearden Commerce
  • SnapLogic
  • ThoughtWorks
  • Ticketmaster

Sponsors & Exhibitors

For information on exhibition and sponsorship opportunities at the convention, contact Sharon Cordesse

For Media Partnership opportunities, please contact Avila Reese

Download the OSCON Sponsor/Exhibitor Prospectus (PDF).

Conference News

To stay abreast of Conference news and to receive email notification when registration opens, please sign up here.

Press & Media

For media-related inquiries, contact Dawn Applegate at

Program Ideas

Drop us a line at and tell us who and/or what would make OSCON a must-attend event.

User Groups & Professional Associations

For user group and professional association related inquiries, contact Marsee Henon at


Nested Data Parallelism in Haskell

Simon Peyton-Jones, Microsoft

Track: Programming
Date: Wednesday, July 25
Time: 1:45pm - 2:30pm
Location: Portland 252

There are many approaches to exploiting multicores, but a particularly promising one is the "data-parallel" paradigm, because it combines massive parallelism (on both shared and distributed memory) with a simple, single-control-flow programming model.

Alas, data-parallel programming is usually restricted to "flat" data parallelism, which is good for implementers but bad for programmers. In particular, all the parallelism must appear at a single point, which excludes useful paradigms such as divide-and-conquer, and inhibits modular programming.

I'll describe the "nested" data parallel programming model, first developed in the 90's. It is great for programmers but much harder to implement; as a result, it's virtually unknown in practice. We are working on fixing this, by building a high-performance implementation in Haskell. I'll tell you how it works and give you some numbers.