DPNP C++ backend kernel library 0.18.0dev0
Data Parallel Extension for NumPy*
|
Functions | |
size_t | dpnp_queue_is_cpu_c () |
SYCL queue device status. | |
char * | dpnp_memory_alloc_c (DPCTLSyclQueueRef q_ref, size_t size_in_bytes) |
SYCL queue memory allocation. | |
template<typename _DataType > | |
DPCTLSyclEventRef | dpnp_partition_c (DPCTLSyclQueueRef q_ref, void *array, void *array2, void *result, const size_t kth, const shape_elem_type *shape, const size_t ndim, const DPCTLEventVectorRef dep_event_vec_ref) |
Return a partitioned copy of an array. | |
template<typename _DataType > | |
DPCTLSyclEventRef | dpnp_initval_c (DPCTLSyclQueueRef q_ref, void *result1, void *value, size_t size, const DPCTLEventVectorRef dep_event_vec_ref) |
implementation of creating filled with value array function | |
template<typename _DataType_input , typename _DataType_output > | |
DPCTLSyclEventRef | dpnp_modf_c (DPCTLSyclQueueRef q_ref, void *array1_in, void *result1_out, void *result2_out, size_t size, const DPCTLEventVectorRef dep_event_vec_ref) |
modf function. | |
template<typename _DataType > | |
DPCTLSyclEventRef | dpnp_ones_c (DPCTLSyclQueueRef q_ref, void *result, size_t size, const DPCTLEventVectorRef dep_event_vec_ref) |
Implementation of ones function. | |
template<typename _DataType > | |
DPCTLSyclEventRef | dpnp_ones_like_c (DPCTLSyclQueueRef q_ref, void *result, size_t size, const DPCTLEventVectorRef dep_event_vec_ref) |
Implementation of ones_like function. | |
template<typename _DataType > | |
DPCTLSyclEventRef | dpnp_zeros_c (DPCTLSyclQueueRef q_ref, void *result, size_t size, const DPCTLEventVectorRef dep_event_vec_ref) |
Implementation of zeros function. | |
template<typename _DataType > | |
DPCTLSyclEventRef | dpnp_zeros_like_c (DPCTLSyclQueueRef q_ref, void *result, size_t size, const DPCTLEventVectorRef dep_event_vec_ref) |
Implementation of zeros_like function. | |
DPNPFuncData_t | get_dpnp_function_ptr (DPNPFuncName name, DPNPFuncType first_type, DPNPFuncType second_type=DPNPFuncType::DPNP_FT_NONE) |
get runtime pointer to selected function | |
void * | get_dpnp_function_ptr1 (DPNPFuncType &result_type, DPNPFuncName name, DPNPFuncType first_type, DPNPFuncType second_type=DPNPFuncType::DPNP_FT_NONE) |
get runtime pointer to selected function | |
void | MT19937_InitScalarSeed (mt19937_struct *mt19937, DPCTLSyclQueueRef q_ref, uint32_t seed=1) |
Create a MKL engine from scalar seed. | |
void | MT19937_InitVectorSeed (mt19937_struct *mt19937, DPCTLSyclQueueRef q_ref, uint32_t *seed, unsigned int n) |
Create a MKL engine from seed vector. | |
void | MT19937_Delete (mt19937_struct *mt19937) |
Release a MKL engine. | |
void | MCG59_InitScalarSeed (mcg59_struct *mcg59, DPCTLSyclQueueRef q_ref, uint64_t seed) |
Create a MKL engine from scalar seed. | |
void | MCG59_Delete (mcg59_struct *mcg59) |
Release a MKL engine. | |
This section describes Backend API.
DPCTLSyclEventRef dpnp_initval_c | ( | DPCTLSyclQueueRef | q_ref, |
void * | result1, | ||
void * | value, | ||
size_t | size, | ||
const DPCTLEventVectorRef | dep_event_vec_ref ) |
implementation of creating filled with value array function
[in] | q_ref | Reference to SYCL queue. |
[out] | result1 | Output array. |
[in] | value | Value in array. |
[in] | size | Number of elements in array. |
[in] | dep_event_vec_ref | Reference to vector of SYCL events. |
char * dpnp_memory_alloc_c | ( | DPCTLSyclQueueRef | q_ref, |
size_t | size_in_bytes ) |
SYCL queue memory allocation.
Memory allocation on the SYCL backend.
[in] | size_in_bytes | Number of bytes for requested memory allocation. |
[in] | q_ref | Reference to SYCL queue. |
DPCTLSyclEventRef dpnp_modf_c | ( | DPCTLSyclQueueRef | q_ref, |
void * | array1_in, | ||
void * | result1_out, | ||
void * | result2_out, | ||
size_t | size, | ||
const DPCTLEventVectorRef | dep_event_vec_ref ) |
modf function.
[in] | q_ref | Reference to SYCL queue. |
[in] | array1_in | Input array. |
[out] | result1_out | Output array 1. |
[out] | result2_out | Output array 2. |
[in] | size | Number of elements in input arrays. |
[in] | dep_event_vec_ref | Reference to vector of SYCL events. |
DPCTLSyclEventRef dpnp_ones_c | ( | DPCTLSyclQueueRef | q_ref, |
void * | result, | ||
size_t | size, | ||
const DPCTLEventVectorRef | dep_event_vec_ref ) |
Implementation of ones function.
[in] | q_ref | Reference to SYCL queue. |
[out] | result | Output array. |
[in] | size | Number of elements in the output array. |
[in] | dep_event_vec_ref | Reference to vector of SYCL events. |
DPCTLSyclEventRef dpnp_ones_like_c | ( | DPCTLSyclQueueRef | q_ref, |
void * | result, | ||
size_t | size, | ||
const DPCTLEventVectorRef | dep_event_vec_ref ) |
Implementation of ones_like function.
[in] | q_ref | Reference to SYCL queue. |
[out] | result | Output array. |
[in] | size | Number of elements in the output array. |
[in] | dep_event_vec_ref | Reference to vector of SYCL events. |
DPCTLSyclEventRef dpnp_partition_c | ( | DPCTLSyclQueueRef | q_ref, |
void * | array, | ||
void * | array2, | ||
void * | result, | ||
const size_t | kth, | ||
const shape_elem_type * | shape, | ||
const size_t | ndim, | ||
const DPCTLEventVectorRef | dep_event_vec_ref ) |
Return a partitioned copy of an array.
[in] | q_ref | Reference to SYCL queue. |
[in] | array | Input array. |
[in] | array2 | Copy input array. |
[out] | result | Result array. |
[in] | kth | Element index to partition by. |
[in] | shape | Shape of input array. |
[in] | ndim | Number of elements in shape. |
[in] | dep_event_vec_ref | Reference to vector of SYCL events. |
size_t dpnp_queue_is_cpu_c | ( | ) |
SYCL queue device status.
Return 1 if current queue is related to cpu device. return 0 otherwise.
DPCTLSyclEventRef dpnp_zeros_c | ( | DPCTLSyclQueueRef | q_ref, |
void * | result, | ||
size_t | size, | ||
const DPCTLEventVectorRef | dep_event_vec_ref ) |
Implementation of zeros function.
[in] | q_ref | Reference to SYCL queue. |
[out] | result | Output array. |
[in] | size | Number of elements in the output array. |
[in] | dep_event_vec_ref | Reference to vector of SYCL events. |
DPCTLSyclEventRef dpnp_zeros_like_c | ( | DPCTLSyclQueueRef | q_ref, |
void * | result, | ||
size_t | size, | ||
const DPCTLEventVectorRef | dep_event_vec_ref ) |
Implementation of zeros_like function.
[in] | q_ref | Reference to SYCL queue. |
[out] | result | Output array. |
[in] | size | Number of elements in the output array. |
[in] | dep_event_vec_ref | Reference to vector of SYCL events. |
DPNPFuncData_t get_dpnp_function_ptr | ( | DPNPFuncName | name, |
DPNPFuncType | first_type, | ||
DPNPFuncType | second_type = DPNPFuncType::DPNP_FT_NONE ) |
get runtime pointer to selected function
Runtime pointer to the backend API function from storage map<name, map<first_type, map<second_type, DPNPFuncData_t>>>
[in] | name | Name of the function in storage |
[in] | first_type | First type of the storage |
[in] | second_type | Second type of the storage |
void * get_dpnp_function_ptr1 | ( | DPNPFuncType & | result_type, |
DPNPFuncName | name, | ||
DPNPFuncType | first_type, | ||
DPNPFuncType | second_type = DPNPFuncType::DPNP_FT_NONE ) |
get runtime pointer to selected function
Same interface function as get_dpnp_function_ptr with a bit different interface
[out] | result_type | Type of the result provided by the backend API function |
[in] | name | Name of the function in storage |
[in] | first_type | First type of the storage |
[in] | second_type | Second type of the storage |
void MCG59_Delete | ( | mcg59_struct * | mcg59 | ) |
Release a MKL engine.
Release all resource required for storing of the MKL engine.
[in] | mcg59 | A structure with the MKL engine. |
void MCG59_InitScalarSeed | ( | mcg59_struct * | mcg59, |
DPCTLSyclQueueRef | q_ref, | ||
uint64_t | seed ) |
Create a MKL engine from scalar seed.
Invoke a common seed initialization of the engine for MCG59 algorithm.
[in] | mcg59 | A structure with MKL engine which will be filled with generated value by MKL. |
[in] | q_ref | A reference on SYCL queue which will be used to obtain random numbers. |
[in] | seed | An initial condition of the generator state. |
void MT19937_Delete | ( | mt19937_struct * | mt19937 | ) |
Release a MKL engine.
Release all resource required for storing of the MKL engine.
[in] | mt19937 | A structure with the MKL engine. |
void MT19937_InitScalarSeed | ( | mt19937_struct * | mt19937, |
DPCTLSyclQueueRef | q_ref, | ||
uint32_t | seed = 1 ) |
Create a MKL engine from scalar seed.
Invoke a common seed initialization of the engine for MT199374x32x10 algorithm.
[in] | mt19937 | A structure with MKL engine which will be filled with generated value by MKL. |
[in] | q_ref | A reference on SYCL queue which will be used to obtain random numbers. |
[in] | seed | An initial condition of the generator state. |
void MT19937_InitVectorSeed | ( | mt19937_struct * | mt19937, |
DPCTLSyclQueueRef | q_ref, | ||
uint32_t * | seed, | ||
unsigned int | n ) |
Create a MKL engine from seed vector.
Invoke an extended seed initialization of the engine for MT199374x32x10 algorithm..
[in] | mt19937 | A structure with MKL engine which will be filled with generated value by MKL. |
[in] | q_ref | A reference on SYCL queue which will be used to obtain random numbers. |
[in] | seed | A vector with the initial conditions of the generator state. |
[in] | n | Length of the vector. |