Boost logo

Boost :

Subject: Re: [boost] [compute] GPGPU Library - Request For Feedback
From: Ioannis Papadopoulos (ipapadop_at_[hidden])
Date: 2013-03-03 21:15:35


On 3/2/2013 4:25 PM, Kyle Lutz wrote:
> Hi everyone,
>
> A while back I posted a message asking for interest in a GPGPU computing
> library and the response seemed positive. I've been slowly working on it
> for the last few months and it has finally reached a usable state. I've
> made an initial release on GitHub (details below) and would like to get
> feedback from the community.
>
> The Boost Compute library provides a partial implementation of the C++
> standard library for GPUs and multi-core CPUs. It includes common
> containers (vector<T>, flat_set<T>) and standard algorithms (transform,
> sort, accumulate). It also features a number of extensions including
> parallel-computing focused algorithms (exclusive_scan, scatter, reduce)
> along with a number of fancy iterators (transform_iterator,
> permutation_iterator). The library is built around the OpenCL framework
> which allows it to be portable across many types of devices (GPUs, CPUs,
> and accelerator cards) from many different vendors (NVIDIA, Intel, AMD).
>
> The source code and documentation are available from the links below.
>
> Code: https://github.com/kylelutz/compute
> Documentation: http://kylelutz.github.com/compute
> Bug Tracker: https://github.com/kylelutz/compute/issues
>
> I've tested the library with GCC 4.7 and Clang 3.3 on both NVIDIA GPUs and
> Intel CPUs. However, I would not yet consider the library production-ready.
> Most of my time has been devoted to reaching a solid and well-tested API
> rather than on performance. Over time this will improve.
>
> Feel free to send any questions, comments or feedback.
>
> Thanks,
> Kyle
>
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
>

How does it compare to VexCL (https://github.com/ddemidov/vexcl), Bolt
(http://developer.amd.com/tools/heterogeneous-computing/amd-accelerated-parallel-processing-app-sdk/bolt-c-template-library/)
and Thrust (https://developer.nvidia.com/thrust)?

A comparison would be nice. Moreover, why not piggy-back on the
libraries that are already available (and they probably have better
optimizations in place) and simply write a nice wrapper around them (and
maybe, crazy idea, allow a single codebase to use both AMD and nVidia
GPUs at the same time)?


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk