ArrayFire v3.5.1 Release

Miguel LloredaAnnouncements, ArrayFire 1 Comment

We are excited to announce ArrayFire v3.5.1! This release focuses on fixing bugs and improving performance. Here are the improvements we think are most important:

Performance improvements

  • We’ve improved element-wise operation performance for the CPU backend.
  • The af::regions() function has been modified to leverage texture memory, improving its performance.
  • Our JIT engine has been further optimized to boost performance.

Bug fixes

  • We’ve squashed a long standing bug in the CUDA backend responsible for breaking whenever the second, third, or fourth dimensions were large enough to exceed limits imposed by the CUDA runtime.
  • The previous implementation of af::mean() suffered from overflows when the summation of the values lied outside the range of the backing data type. New kernels for each of our backends have been written to prevent this issue.
  • The af::canny() function has been patched with a workaround to avoid a bug in Apple’s OpenCL driver. We are working on releasing an upcoming patch to fix all examples that are similarly affected.


ArrayFire v3.5.1 can be downloaded from these locations:

Future Releases

As always, we are working on improving the performance of all of our functions. This has been another exciting update to ArrayFire and we have great plans for the next release. Stay tuned!

Dedicated Support and Coding Services

ArrayFire is open source and always will be. For those who want dedicated support or custom function development, we offer a variety of support packages.

ArrayFire also serves many clients through consulting and coding services, algorithm development, porting code, and training courses for developers. Contact us at or schedule a free technical consultation to learn more about our consulting and coding services.

Comments 1

  1. While I was able to compiler ArrayFire V3.5 with the given CMakeLists.txt. It seems that the new CMakeLists.txt needs to be tested. It does not detects ASYNC option and correct Boost.compute. Unfortunately using the CMakeLists.txt of V3.5 for V3.5.1 does not work either.

Leave a Reply

Your email address will not be published. Required fields are marked *