MSR Accelerator - the new CTP is out

Accelerator is a high-level data parallel library which uses parallel processors such as the GPU or multicore CPU to accelerate execution. Accelerator v1 was released to the MSR Web site in October 2006 and has been periodically updated since then. Accelerator v2 is an MSR incubation project whose goal is to to validate the architecture and API approach with high quality engineering sufficient to gather real-world usage data.

Head to the new download site, http://research.microsoft.com/accelerator.

New features include:

  • Async expression evaluation, including cancellation of in-progress calls
  • 8-byte doubles, via the new DoubleParallelArray type (currently supported in the multicore target only)
  • Evaluate() is back
  • Parameters - new FloatParallelArrayParam and related types enable late binding of data to expression trees
  • DirectX9 target introduces TextureMemory(), FromFloatTextureMemory() and FromFloat4TextureMemory(), avoiding the copy back to CPU memory if the input data is already on the GPU ahead of evaluation, or if the result data will be consumed by other GPU-side code.

This new CTP also addresses a number of bugs and represents considerable internal improvemnts in the core and targets.

The download site also has links to great blog posts on calling Accelerator from F# and from C# 4.0 Lambdas... LINQ to Accelerator!