My Talk with Don and Adam at TechDays 2010

It was TechDays this week and I was lucky enough to be invited to speak with Don Syme and Adam Granicz. Don gave a short introduction to mailboxes/agent programming in F# and Adam gave an introduction to IntelliFactory’s WebSharper project.

 

My section of the talk was on using F# with Microsoft Accelerator. Accelerator is an interesting product, it allows you to take advance of the GPU of your PC. Even the most basic PCs have a specialized graphics chip and for most of the tasks you perform on your PC it just sits there doing nothing. GPU are very good at performing floating point operations on matrices, they’re specialized hardware that allow you to perform matrix operations in a highly parallel way. The DirectX runtime takes advantage of this to perform the operations need to for 3D shading. However, there are other algorithms that could benefit from being run on the GPU and Accelerator opens up the GPU for just about any algorithm that you can imagine.

 

The usage I demonstrated was the game of life running either on the CPU or with the calculations performed on the GPU. On my current machine this yields a 10 fold increase in execution time. It takes advantage of F# quotations system (similar to C#’s expression trees), these are used to allow you to compile an algorithm in F# to operations that the Accelerator runtime understands. This is how we can easily show an algorithm running on the CPU and then switch it to the GPU. The slides can be found here and code examples here. The example comes from Tomáš Petříček’s web site and more details can be found about in this series of articles.

 

I had several people come and access me for more information about Accelerator at the end of the talk. Accelerator v2 is available from Microsoft connected, here. It’s currently licensed under a restrictive MSR license that stipulates non-commercial use only. However, in stating the objectives of their project, they say “Accelerator v2 is an MSR incubation project whose goal is to validate the architecture and API approach with high quality engineering sufficient to gather real-world usage data.” It would seem to me that in order to achieve this objective they would need to have some commercial users, so maybe if you contact the team directly they would be able to get you a less restrictive license. I certainly have a project in mind for accelerator, though at this point it would be non-commercial. If you’re interested check out activity on my github account, you can probably guess what my idea is.

 

The slides can be found here and the code can be found here. The session was videoed, I’ll let you know as soon as it’s on line.

Update: The video can now be seen here.

FunctionalNHibernate: RCed and now with added build server

I’m very happy to announce that FunctionalNHibernate has now been updated to work with the recently released Visual Studio 2010 release candidate. Also, it has now been setup to run on the codebetter build server. You can create a log on and download the latest binaries from here (you need an account but it’s very simple to create one).

 

A huge thanks to Steffen Forkmann, who did the work to get this set up.

Functional Programming eXchange: The Videos

I’ve recently noticed that talks from Functional Programming eXchange, that I organized and spoke at, are now online. This is a great resource for people looking for some more advanced material on Functional Programming. So here are the videos:

 

SADEK DROBI: Computation Abstraction

http://skillsmatter.com/podcast/cloud-grid/computation-abstraction

 

MATTHEW SACKMAN: Supercharged Rabbit: Resource Management at High Speed in Erlang

http://skillsmatter.com/podcast/cloud-grid/supercharged-rabbit-resource-management-at-high-speed-in-erlang

 

ANTON SCHWAIGHOFER: F# and Units-of-measure for Technical Computing

http://skillsmatter.com/podcast/cloud-grid/f-and-units-of-measure-for-technical-computing

 

GANESH SITTAMPALAM: Functional Programming for Quantitative Modeling at Credit Suisse

http://skillsmatter.com/podcast/cloud-grid/functional-programming-for-quantitative-modelling-at-credit-suisse

 

DUNCAN COUTTS: Strong Types and Pure Functions

http://skillsmatter.com/podcast/cloud-grid/strong-types-and-pure-functions

 

ROBERT PICKERING: Combinators, DSLs, HTML and F#

http://skillsmatter.com/podcast/design-architecture/using-combinators-to-tackle-the-html-rendering-problem

 Subscribe in a reader

Links

CVMy CV
stackoverflowMy Stack Overflow CV
Twitter Follow me on Twitter
FaceBook View my Facebook
LinkedIn View my LinkedIn Profile
Viadeo Viadeo Profile (Français)

Conferences/Workshops

Robert Pickering:Robert Pickering's Beginning F# Workshop,  Robert Pickering's Beginning F# Workshop
2 DAY COURSE. Featuring Robert Pickering
London, Monday, May 10th
Progressive .NET Tutorials, Progressive .NET Tutorials
CONFERENCE (3 DAYS)
London, Wednesday, May 12th BOOK NOW!

Badges


Progressive .NET Tutorials 2009

Disclaimer

The views expressed on this weblog are mine and do not necessarily reflect the views of my employer.

All postings are provided "AS IS" with no warranties, and confer no rights.

www.flickr.com
This is a Flickr badge showing public photos and videos from Robert Pickering. Make your own badge here.