boostorg / compute

A C++ GPU Computing Library for OpenCL
http://boostorg.github.io/compute/
Boost Software License 1.0
1.54k stars 333 forks source link

Add ArrayFire benchmarks #501

Open svenstaro opened 9 years ago

svenstaro commented 9 years ago

I think it would be interesting to see ArrayFire benchmarks especially because it claims to be (mostly) faster than boost.compute in their benchmarks. These could run as part of your other perf tests and give a better overall picture where boost.compute fits in performance-wise.

pavanky commented 9 years ago

The benchmark code used for the blog can be seen here: https://github.com/arrayfire/valhalla. I am trying to make it a full blown benchmarking suite for all the libraries used in that blog post.

@kylelutz If you are thinking about doing this let me know if you need any help from my end.

VincentSC commented 8 years ago

Any update on this? And any tips for Boost.Compute how to make it faster?

pavanky commented 8 years ago

@VincentSC One of the things I have noticed where ArrayFire is faster is because of the memory manager. If you can modify your local boost compute to implement even a rudimentary memory manager it can improve the performance quite a bit at smaller sizes.

kylelutz commented 8 years ago

Yeah, I'm hesitant to add more benchmark applications directly to Boost.Compute. I more like the valhalla approach to providing a single, separate benchmark suite which compares a variety of GPU libraries. This seems preferable to each individual library maintaining their own benchmark suite for every other library.

And a memory manager would be good to have, especially for algorithms that could re-use the same "scratch" memory buffers over and over.

svenstaro commented 8 years ago

In that case maybe you should link to an external suite of benchmarks instead of providing your own and then work with the maintainer of that benchmark suite?