Skip to content

Second bugfix release for 3.2

Compare
Choose a tag to compare
@shehzan10 shehzan10 released this 31 Dec 17:59
· 2723 commits to master since this release

Release Notes {#releasenotes}

The source code with submodules can be downloaded directly from the following link:
http://arrayfire.com/arrayfire_source/arrayfire-full-3.2.2.tar.bz2

v3.2.2

Bug Fixes

  • Fixed memory leak in
    CUDA Random number generators
  • Fixed bug in
    af::select() and af::replace() tests
  • Fixed exception
    thrown when printing empty arrays with af::print()
  • Fixed bug in CPU
    random number generation. Changed the generator to
    mt19937
  • Fixed exception handling (internal)
    • Exceptions
      now show function, short file name and line number
    • Added AF_RETURN_ERROR
      macro to handle returning errors.
    • Removed THROW macro, and renamed AF_THROW_MSG to AF_THROW_ERR.
  • Fixed bug
    in \ref af::identity() that may have affected CUDA Compute 5.2 cards

Build

  • Added a MIN_BUILD_TIME
    option to build with minimum optimization compiler flags resulting in faster
    compile times
  • Fixed issue in CBLAS
    detection by CMake
  • Fixed tests failing for builds without optional components
    FreeImage and
    LAPACK
  • Added a test
    for unified backend
  • Only info and backend tests
    are now built for unified backend
  • Sort tests
    execution alphabetically
  • Fixed compilation flags and errors in tests and examples
  • Moved AF_REVISION and AF_COMPILER_STR
    into src/backend. This is because as revision is updated with every commit,
    entire ArrayFire would have to be rebuilt in the old code.
    • v3.3 will add a af_get_revision() function to get the revision string.
  • Clean up examples
    • Remove getchar for Windows (this will be handled by the installer)
    • Other miscellaneous code cleanup
    • Fixed bug in [plot3.cpp](ref graphics/plot3.cpp) example
  • Rename clBLAS/clFFT
    external project suffix from external -> ext
  • Add OpenBLAS as a
    lapack/lapacke alternative

Improvements

  • Added \ref AF_MEM_INFO macro to print memory info from ArrayFire's memory
    manager (cross issue)
  • Added additional paths
    for searching for libaf* for Unified backend on unix-style OS.
    • Note: This still requires dependencies such as forge, CUDA, NVVM etc to be
      in LD_LIBRARY_PATH as described in [Unified Backend](ref unifiedbackend)
  • Create streams
    for devices only when required in CUDA Backend

Documentation

  • Hide scrollbars
    appearing for pre and code styles
  • Fix documentation for af::replace
  • Add code sample
    for converting the output of af::getAvailableBackends() into bools
  • Minor fixes in documentation