|
@@ -29,6 +29,8 @@ Return a 32bit footprint which characterizes the data size.
|
|
Compare the data size of two interfaces.
|
|
Compare the data size of two interfaces.
|
|
\var starpu_data_interface_ops::display
|
|
\var starpu_data_interface_ops::display
|
|
Dump the sizes of a handle to a file.
|
|
Dump the sizes of a handle to a file.
|
|
|
|
+\var starpu_data_interface_ops::describe
|
|
|
|
+Describe the data into a string.
|
|
\var starpu_data_interface_ops::interfaceid
|
|
\var starpu_data_interface_ops::interfaceid
|
|
An identifier that is unique to each interface.
|
|
An identifier that is unique to each interface.
|
|
\var starpu_data_interface_ops::interface_size
|
|
\var starpu_data_interface_ops::interface_size
|
|
@@ -241,6 +243,12 @@ starpu_data_handle_t var_handle;
|
|
starpu_variable_data_register(&var_handle, STARPU_MAIN_RAM, (uintptr_t)&var, sizeof(var));
|
|
starpu_variable_data_register(&var_handle, STARPU_MAIN_RAM, (uintptr_t)&var, sizeof(var));
|
|
\endcode
|
|
\endcode
|
|
|
|
|
|
|
|
+\fn void starpu_variable_ptr_register(starpu_data_handle_t handle, unsigned node, uintptr_t ptr, uintptr_t dev_handle, size_t offset)
|
|
|
|
+\ingroup API_Data_Interfaces
|
|
|
|
+Register into the \p handle that to store data on node \p node it should use the
|
|
|
|
+buffer located at \p ptr, or device handle \p dev_handle and offset \p offset
|
|
|
|
+(for OpenCL, notably)
|
|
|
|
+
|
|
\fn void starpu_vector_data_register(starpu_data_handle_t *handle, unsigned home_node, uintptr_t ptr, uint32_t nx, size_t elemsize)
|
|
\fn void starpu_vector_data_register(starpu_data_handle_t *handle, unsigned home_node, uintptr_t ptr, uint32_t nx, size_t elemsize)
|
|
\ingroup API_Data_Interfaces
|
|
\ingroup API_Data_Interfaces
|
|
Register the \p nx elemsize-byte elements pointed to by \p ptr and initialize \p handle to represent it.
|
|
Register the \p nx elemsize-byte elements pointed to by \p ptr and initialize \p handle to represent it.
|
|
@@ -252,6 +260,12 @@ starpu_data_handle_t vector_handle;
|
|
starpu_vector_data_register(&vector_handle, STARPU_MAIN_RAM, (uintptr_t)vector, NX, sizeof(vector[0]));
|
|
starpu_vector_data_register(&vector_handle, STARPU_MAIN_RAM, (uintptr_t)vector, NX, sizeof(vector[0]));
|
|
\endcode
|
|
\endcode
|
|
|
|
|
|
|
|
+\fn void starpu_vector_ptr_register(starpu_data_handle_t handle, unsigned node, uintptr_t ptr, uintptr_t dev_handle, size_t offset)
|
|
|
|
+\ingroup API_Data_Interfaces
|
|
|
|
+Register into the \p handle that to store data on node \p node it should use the
|
|
|
|
+buffer located at \p ptr, or device handle \p dev_handle and offset \p offset
|
|
|
|
+(for OpenCL, notably)
|
|
|
|
+
|
|
\fn void starpu_matrix_data_register(starpu_data_handle_t *handle, unsigned home_node, uintptr_t ptr, uint32_t ld, uint32_t nx, uint32_t ny, size_t elemsize)
|
|
\fn void starpu_matrix_data_register(starpu_data_handle_t *handle, unsigned home_node, uintptr_t ptr, uint32_t ld, uint32_t nx, uint32_t ny, size_t elemsize)
|
|
\ingroup API_Data_Interfaces
|
|
\ingroup API_Data_Interfaces
|
|
Register the \p nx x \p ny 2D matrix of \p elemsize-byte elements pointed
|
|
Register the \p nx x \p ny 2D matrix of \p elemsize-byte elements pointed
|
|
@@ -267,6 +281,12 @@ matrix = (float*)malloc(width * height * sizeof(float));
|
|
starpu_matrix_data_register(&matrix_handle, STARPU_MAIN_RAM, (uintptr_t)matrix, width, width, height, sizeof(float));
|
|
starpu_matrix_data_register(&matrix_handle, STARPU_MAIN_RAM, (uintptr_t)matrix, width, width, height, sizeof(float));
|
|
\endcode
|
|
\endcode
|
|
|
|
|
|
|
|
+\fn void starpu_matrix_ptr_register(starpu_data_handle_t handle, unsigned node, uintptr_t ptr, uintptr_t dev_handle, size_t offset, uint32_t ld)
|
|
|
|
+\ingroup API_Data_Interfaces
|
|
|
|
+Register into the \p handle that to store data on node \p node it should use the
|
|
|
|
+buffer located at \p ptr, or device handle \p dev_handle and offset \p offset
|
|
|
|
+(for OpenCL, notably), with \p ld elements between rows.
|
|
|
|
+
|
|
\fn void starpu_block_data_register(starpu_data_handle_t *handle, unsigned home_node, uintptr_t ptr, uint32_t ldy, uint32_t ldz, uint32_t nx, uint32_t ny, uint32_t nz, size_t elemsize)
|
|
\fn void starpu_block_data_register(starpu_data_handle_t *handle, unsigned home_node, uintptr_t ptr, uint32_t ldy, uint32_t ldz, uint32_t nx, uint32_t ny, uint32_t nz, size_t elemsize)
|
|
\ingroup API_Data_Interfaces
|
|
\ingroup API_Data_Interfaces
|
|
Register the \p nx x \p ny x \p nz 3D matrix of \p elemsize byte elements
|
|
Register the \p nx x \p ny x \p nz 3D matrix of \p elemsize byte elements
|
|
@@ -281,6 +301,12 @@ block = (float*)malloc(nx*ny*nz*sizeof(float));
|
|
starpu_block_data_register(&block_handle, STARPU_MAIN_RAM, (uintptr_t)block, nx, nx*ny, nx, ny, nz, sizeof(float));
|
|
starpu_block_data_register(&block_handle, STARPU_MAIN_RAM, (uintptr_t)block, nx, nx*ny, nx, ny, nz, sizeof(float));
|
|
\endcode
|
|
\endcode
|
|
|
|
|
|
|
|
+\fn void starpu_block_ptr_register(starpu_data_handle_t handle, unsigned node, uintptr_t ptr, uintptr_t dev_handle, size_t offset, uint32_t ldy, uint32_t ldz)
|
|
|
|
+\ingroup API_Data_Interfaces
|
|
|
|
+Register into the \p handle that to store data on node \p node it should use the
|
|
|
|
+buffer located at \p ptr, or device handle \p dev_handle and offset \p offset
|
|
|
|
+(for OpenCL, notably), with \p ldy elements between rows and \ldz elements between z planes.
|
|
|
|
+
|
|
\fn void starpu_bcsr_data_register(starpu_data_handle_t *handle, unsigned home_node, uint32_t nnz, uint32_t nrow, uintptr_t nzval, uint32_t *colind, uint32_t *rowptr, uint32_t firstentry, uint32_t r, uint32_t c, size_t elemsize)
|
|
\fn void starpu_bcsr_data_register(starpu_data_handle_t *handle, unsigned home_node, uint32_t nnz, uint32_t nrow, uintptr_t nzval, uint32_t *colind, uint32_t *rowptr, uint32_t firstentry, uint32_t r, uint32_t c, size_t elemsize)
|
|
\ingroup API_Data_Interfaces
|
|
\ingroup API_Data_Interfaces
|
|
This variant of starpu_data_register() uses the BCSR (Blocked
|
|
This variant of starpu_data_register() uses the BCSR (Blocked
|