A high-performance general-purpose compute library
device.h File Reference
#include <af/defines.h>

Go to the source code of this file.

Namespaces

namespace  af
 

Functions

AFAPI void info ()
 
AFAPI const char * infoString (const bool verbose=false)
 
AFAPI void deviceInfo (char *d_name, char *d_platform, char *d_toolkit, char *d_compute)
 
AFAPI int getDeviceCount ()
 Gets the number of devices. More...
 
AFAPI int getDevice ()
 Gets the current device ID. More...
 
AFAPI bool isDoubleAvailable (const int device)
 Queries the current device for double precision floating point support. More...
 
AFAPI bool isHalfAvailable (const int device)
 Queries the current device for half precision floating point support. More...
 
AFAPI void setDevice (const int device)
 Sets the current device. More...
 
AFAPI void sync (const int device=-1)
 Blocks until the device is finished processing. More...
 
AFAPI void free (const void *ptr)
 Returns memory to ArrayFire's memory manager. More...
 
AFAPI void freeV2 (const void *ptr)
 
AFAPI void freePinned (const void *ptr)
 Free pinned memory allocated by ArrayFire's memory manager. More...
 
AFAPI void * allocHost (const size_t elements, const dtype type)
 Allocate memory on host. More...
 
template<typename T >
AFAPI T * allocHost (const size_t elements)
 Allocate memory on host. More...
 
AFAPI void freeHost (const void *ptr)
 Free memory allocated internally by ArrayFire. More...
 
AFAPI void setMemStepSize (const size_t size)
 Set the resolution of memory chunks. More...
 
AFAPI size_t getMemStepSize ()
 Get the resolution of memory chunks. More...
 
AFAPI af_err af_info ()
 
AFAPI af_err af_init ()
 
AFAPI af_err af_info_string (char **str, const bool verbose)
 Gets the output of af_info() as a string. More...
 
AFAPI af_err af_device_info (char *d_name, char *d_platform, char *d_toolkit, char *d_compute)
 Gets the information about device and platform as strings. More...
 
AFAPI af_err af_get_device_count (int *num_of_devices)
 
AFAPI af_err af_get_dbl_support (bool *available, const int device)
 
AFAPI af_err af_get_half_support (bool *available, const int device)
 
AFAPI af_err af_set_device (const int device)
 
AFAPI af_err af_get_device (int *device)
 
AFAPI af_err af_sync (const int device)
 
AFAPI af_err af_alloc_device (void **ptr, const dim_t bytes)
 Allocates memory using ArrayFire's memory manager. More...
 
AFAPI af_err af_free_device (void *ptr)
 Returns memory to ArrayFire's memory manager. More...
 
AFAPI af_err af_alloc_device_v2 (void **ptr, const dim_t bytes)
 Allocates memory using ArrayFire's memory manager. More...
 
AFAPI af_err af_free_device_v2 (void *ptr)
 Returns memory to ArrayFire's memory manager. More...
 
AFAPI af_err af_alloc_pinned (void **ptr, const dim_t bytes)
 
AFAPI af_err af_free_pinned (void *ptr)
 
AFAPI af_err af_alloc_host (void **ptr, const dim_t bytes)
 
AFAPI af_err af_free_host (void *ptr)
 
AFAPI af_err af_device_array (af_array *arr, void *data, const unsigned ndims, const dim_t *const dims, const af_dtype type)
 Create array from device memory. More...
 
AFAPI af_err af_device_mem_info (size_t *alloc_bytes, size_t *alloc_buffers, size_t *lock_bytes, size_t *lock_buffers)
 Get memory information from the memory manager. More...
 
AFAPI af_err af_print_mem_info (const char *msg, const int device_id)
 Prints buffer details from the ArrayFire Device Manager. More...
 
AFAPI af_err af_device_gc ()
 Call the garbage collection routine. More...
 
AFAPI af_err af_set_mem_step_size (const size_t step_bytes)
 Set the minimum memory chunk size. More...
 
AFAPI af_err af_get_mem_step_size (size_t *step_bytes)
 Get the minimum memory chunk size. More...
 
AFAPI af_err af_lock_device_ptr (const af_array arr)
 Lock the device buffer in the memory manager. More...
 
AFAPI af_err af_unlock_device_ptr (const af_array arr)
 Unlock device buffer in the memory manager. More...
 
AFAPI af_err af_lock_array (const af_array arr)
 Lock the device buffer in the memory manager. More...
 
AFAPI af_err af_unlock_array (const af_array arr)
 Unlock device buffer in the memory manager. More...
 
AFAPI af_err af_is_locked_array (bool *res, const af_array arr)
 Query if the array has been locked by the user. More...
 
AFAPI af_err af_get_device_ptr (void **ptr, const af_array arr)
 Get the device pointer and lock the buffer in memory manager. More...
 
AFAPI af_err af_set_kernel_cache_directory (const char *path, int override_env)
 Sets the path where the kernels generated at runtime will be cached. More...
 
AFAPI af_err af_get_kernel_cache_directory (size_t *length, char *path)
 Gets the path where the kernels generated at runtime will be cached. More...
 
AFAPI void * alloc (const size_t elements, const dtype type)
 Allocates memory using ArrayFire's memory manager. More...
 
AFAPI void * allocV2 (const size_t bytes)
 Allocates memory using ArrayFire's memory manager. More...
 
template<typename T >
T * alloc (const size_t elements)
 Allocates memory using ArrayFire's memory manager. More...
 
AFAPI void * pinned (const size_t elements, const dtype type)
 
template<typename T >
T * pinned (const size_t elements)
 Allocate pinned memory using ArrayFire's memory manager. More...
 
AFAPI void deviceMemInfo (size_t *alloc_bytes, size_t *alloc_buffers, size_t *lock_bytes, size_t *lock_buffers)
 Gets information about the memory manager. More...
 
AFAPI void printMemInfo (const char *msg=NULL, const int device_id=-1)
 Prints buffer details from the ArrayFire Device Manager. More...
 
AFAPI void deviceGC ()
 Call the garbage collection function in the memory manager. More...