- Feature parity with ArrayFire v3.6. Refer to the release notes for more information regarding upstream library improvements in v3.6.
anisotropic_diffusion(): Anisotropic diffusion filter.topk(): Returns top-K elements given an array.
- Bug fixes:
- Fixed
sift()andgloh(), which were improperly calling the library.
- Fixed
- Enhancements:
- Added
len()method, which returnsarray.elements().
- Added
- Documentation:
- Documented statistics API.
- Corrected
sign()documentation. - Modified
helloworldexample to match C++ lib.
- Bug fixes when using v3.5 of arrayfire libs + graphics
- Bug fixes for canny edge detection
-
Feature parity with ArrayFire 3.5.
canny: Canny Edge detectorArray.scalar: Return the first element of the arraydot: Now support option to return scalarprint_mem_info: Prints memory being used / locked by arrayfire memory manager.Array.allocated: Returs the amount of memory allocated for the given buffer.set_fft_plan_cache_size: Sets the size of the fft plan cache.
-
Bug Fixes:
sort_by_keyhad key and value flipped in documentation.
-
Improvements and bugfixes from upstream include:
- CUDA backend uses nvrtc instead of nvvm
- Performance improvements to arrayfire.reorder
- Faster unified backend
- You can find more information at arrayfire's release notes
- Bugfix: Fixes typo in
approx1. - Bugfix: Fixes typo in
hamming_matcherandnearest_neighbour. - Bugfix: Added necessary copy and lock mechanisms in interop.py.
- Example / Benchmark: New conjugate gradient benchmark.
- Feature: Added support to create arrayfire arrays from numba.
- Behavior change: af.print() only prints full arrays for smaller sizes.
- Fixing memory leak in array creation.
- Supporting 16 bit integer types in interop.
-
Feature parity with ArrayFire 3.4 libs
-
create_sparsecreate_sparse_from_densecreate_sparse_from_hostconvert_sparse_to_denseconvert_sparsesparse_get_infosparse_get_nnzsparse_get_valuessparse_get_row_idxsparse_get_col_idxsparse_get_storage
-
- Three new random engines,
RANDOM_ENGINE.PHILOX,RANDOM_ENGINE.THREEFRY, andRANDOM_ENGINE.MERSENNE. randuandrandnnow accept an additional engine parameter.set_default_random_engine_typeget_default_random_engine
- Three new random engines,
-
New functions
-
Behavior changes
evalnow supports fusing kernels.
-
Graphics updates
plotupdated to take new parameters.plot2added.scatterupdated to take new parameters.scatter2added.vector_fieldadded.set_axes_limitsadded.
-
-
Bug fixes
-
Further Improvements from upstream can be read in the arrayfire release notes.
- Adding 16 bit integer support
- Adding support for sphinx documentation
-
Bugfix: Increase arrayfire's priority over numpy for mixed operations
-
Added new library functions
get_backendreturns backend name
-
Bugfix to
af.histogram -
Added missing functions / methods
gaussian_kernel
-
Added new array properties
Array.Tnow returns transposeArray.Hnow returns hermitian transposeArray.shapenow allows easier access individual dimensions
- Fixes to numpy interop on Windows
- Fixes issues with occasional double free
- Fixes to graphics examples
- Fixes to make arrayfire-python to work on 32 bit systems
-
Feature parity with Arrayfire 3.3 libs
- Functions to interact with arryafire's internal data structures.
Array.offsetArray.stridesArray.is_ownerArray.is_linearArray.raw_ptr
- Array constructor now takes
offsetandstridesas optional parameters. - New visualization functions:
scatterandscatter3 - OpenCL backend specific functions:
get_device_typeget_platformadd_device_contextdelete_device_contextset_device_context
- Functions to allocate and free memory on host and device
alloc_hostandfree_hostalloc_pinnedandfree_pinnedalloc_deviceandfree_device
- Function to query which device and backend an array was created on
get_device_idget_backend_id
- Miscellaneous functions
is_lapack_availableis_image_io_available
- Functions to interact with arryafire's internal data structures.
-
Interopability
- Transfer PyCUDA GPUArrays using
af.pycuda_to_af_array - Transfer PyOpenCL Arrays using
af.pyopencl_to_af_array - New helper function
af.to_arrayadded to convert a differentarrayto arrayfire Array.- This function can be used in place of
af.xyz_to_af_arrayfunctions mentioned above.
- This function can be used in place of
- Transfer PyCUDA GPUArrays using
-
Deprecated functions list
lock_device_ptris deprecated. Uselock_arrayinstead.unlock_device_ptris deprecated. Useunlock_arrayinstead.
-
Bug Fixes:
- Boolean indexing giving faulty results for multi dimensional arrays.
- Enum types comparision failures in Python 2.x
- Support loading SO versioned libraries in Linux and OSX.
- Fixed typo that prevented changing backend
- Fixed image processing functions that accepted floating point scalar paramters.
- Affected functions include:
translate,scale,skew,histogram,bilateral,mean_shift.
- Affected functions include:
-
Bug fixes:
- A default
AF_PATHis set if none is found as an environment variable.
- A default
-
Examples:
- Heston model example uses a smaller data set to help run on low end GPUs.
-
Bug fixes:
get_version()now returns ints instead ofc_int- Fixed bug in
tests/simple/device.py
-
The module now looks at additional paths when loading ArrayFire libraries.
- Link to the wiki is provided when
ctypes.cdll.LoadLibraryfails.
- Link to the wiki is provided when
-
New function:
info_str()returns information similar toinfo()as a string.
-
Updated README.md with latest instructions
-
Feature parity with ArrayFire 3.2 libs
- New computer vision functions:
sift,gloh,homography - New graphics functions:
plot3,surface - Functions to load and save native images:
load_image_native,save_image_native - Use
unifiedbackend when possible
- New computer vision functions:
-
Added missing functions
eval,init,convolve2_separable,as_typemethodcudabackend specific functionsopenclbackend specific functionstimeitfunction to benchmark arrayfire functions
-
Added new examples
- getting_started:
intro,convolve - benchmarks:
bench_blas,bench_fft - financial:
monte_carlo_options,black_scholes,heston_model - graphics:
fractal,histogram,plot3d,conway,surface
- getting_started:
-
Bug fixes
- Fixed bug when array types were being reported incorrectly
- Fixed various bugs in graphics functions
- Feature parity with ArrayFire 3.1 libs
- Ability to interop with other python libs
- Ability to extract raw device pointers
- Load and Save arrays from disk
- Improved
__repr__support
- Feature parity with ArrayFire 3.0 libs
- Ability to switch all backends
- Supports both python2 and python3