Loading...
Searching...
No Matches
starpu_data_filters.h File Reference
`#include <starpu.h>`
`#include <stdarg.h>`

Go to the source code of this file.

## Data Structures

struct | starpu_data_filter

## Functions

Basic API
void | starpu_data_partition (starpu_data_handle_t initial_handle, struct starpu_data_filter *f)
void | starpu_data_unpartition (starpu_data_handle_t root_data, unsigned gathering_node)
starpu_data_handle_t | starpu_data_get_child (starpu_data_handle_t handle, unsigned i)
int | starpu_data_get_nb_children (starpu_data_handle_t handle)
starpu_data_handle_t | starpu_data_get_sub_data (starpu_data_handle_t root_data, unsigned depth,...)
starpu_data_handle_t | starpu_data_vget_sub_data (starpu_data_handle_t root_data, unsigned depth, va_list pa)
void | starpu_data_map_filters (starpu_data_handle_t root_data, unsigned nfilters,...)
void | starpu_data_vmap_filters (starpu_data_handle_t root_data, unsigned nfilters, va_list pa)
void | starpu_data_map_filters_parray (starpu_data_handle_t root_handle, int nfilters, struct starpu_data_filter **filters)
void | starpu_data_map_filters_array (starpu_data_handle_t root_handle, int nfilters, struct starpu_data_filter *filters)
Asynchronous API
void | starpu_data_partition_plan (starpu_data_handle_t initial_handle, struct starpu_data_filter *f, starpu_data_handle_t *children)
void | starpu_data_partition_submit (starpu_data_handle_t initial_handle, unsigned nparts, starpu_data_handle_t *children)
void | starpu_data_partition_readonly_submit (starpu_data_handle_t initial_handle, unsigned nparts, starpu_data_handle_t *children)
void | starpu_data_partition_readonly_submit_sequential_consistency (starpu_data_handle_t initial_handle, unsigned nparts, starpu_data_handle_t *children, int sequential_consistency)
void | starpu_data_partition_readwrite_upgrade_submit (starpu_data_handle_t initial_handle, unsigned nparts, starpu_data_handle_t *children)
void | starpu_data_partition_readonly_downgrade_submit (starpu_data_handle_t initial_handle, unsigned nparts, starpu_data_handle_t *children)
void | starpu_data_unpartition_submit (starpu_data_handle_t initial_handle, unsigned nparts, starpu_data_handle_t *children, int gathering_node)
void | starpu_data_unpartition_readonly_submit (starpu_data_handle_t initial_handle, unsigned nparts, starpu_data_handle_t *children, int gathering_node)
void | starpu_data_partition_clean (starpu_data_handle_t root_data, unsigned nparts, starpu_data_handle_t *children)
void | starpu_data_partition_clean_node (starpu_data_handle_t root_data, unsigned nparts, starpu_data_handle_t *children, int gather_node)
void | starpu_data_unpartition_submit_sequential_consistency_cb (starpu_data_handle_t initial_handle, unsigned nparts, starpu_data_handle_t *children, int gather_node, int sequential_consistency, void(*callback_func)(void *), void *callback_arg)
void | starpu_data_partition_submit_sequential_consistency (starpu_data_handle_t initial_handle, unsigned nparts, starpu_data_handle_t *children, int sequential_consistency)
void | starpu_data_unpartition_submit_sequential_consistency (starpu_data_handle_t initial_handle, unsigned nparts, starpu_data_handle_t *children, int gathering_node, int sequential_consistency)
Predefined BCSR Filter Functions
Predefined partitioning functions for BCSR data. Examples on how to use them are shown in PartitioningData.
void | starpu_bcsr_filter_canonical_block (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
unsigned | starpu_bcsr_filter_canonical_block_get_nchildren (struct starpu_data_filter *f, starpu_data_handle_t handle)
struct starpu_data_interface_ops * | starpu_bcsr_filter_canonical_block_child_ops (struct starpu_data_filter *f, unsigned child)
void | starpu_bcsr_filter_vertical_block (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
Predefined CSR Filter Functions
Predefined partitioning functions for CSR data. Examples on how to use them are shown in PartitioningData.
void | starpu_csr_filter_vertical_block (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
Predefined Matrix Filter Functions
Predefined partitioning functions for matrix data. Examples on how to use them are shown in PartitioningData. Note: this is using the C element order which is row-major, i.e. elements with consecutive x coordinates are consecutive in memory.
void | starpu_matrix_filter_block (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_matrix_filter_block_shadow (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_matrix_filter_vertical_block (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_matrix_filter_vertical_block_shadow (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_matrix_filter_pick_vector_y (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
struct starpu_data_interface_ops * | starpu_matrix_filter_pick_vector_child_ops (struct starpu_data_filter *f, unsigned child)
void | starpu_matrix_filter_pick_variable (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
struct starpu_data_interface_ops * | starpu_matrix_filter_pick_variable_child_ops (struct starpu_data_filter *f, unsigned child)
Predefined Vector Filter Functions
Predefined partitioning functions for vector data. Examples on how to use them are shown in PartitioningData.
void | starpu_vector_filter_block (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_vector_filter_block_shadow (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_vector_filter_list_long (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_vector_filter_list (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_vector_filter_divide_in_2 (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_vector_filter_pick_variable (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
struct starpu_data_interface_ops * | starpu_vector_filter_pick_variable_child_ops (struct starpu_data_filter *f, unsigned child)
Predefined Block Filter Functions
Predefined partitioning functions for block data. Examples on how to use them are shown in PartitioningData. An example is available in `examples/filters/shadow3d.c` Note: this is using the C element order which is row-major, i.e. elements with consecutive x coordinates are consecutive in memory.
void | starpu_block_filter_block (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_block_filter_block_shadow (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_block_filter_vertical_block (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_block_filter_vertical_block_shadow (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_block_filter_depth_block (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_block_filter_depth_block_shadow (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_block_filter_pick_matrix_z (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_block_filter_pick_matrix_y (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
struct starpu_data_interface_ops * | starpu_block_filter_pick_matrix_child_ops (struct starpu_data_filter *f, unsigned child)
void | starpu_block_filter_pick_variable (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
struct starpu_data_interface_ops * | starpu_block_filter_pick_variable_child_ops (struct starpu_data_filter *f, unsigned child)
Predefined Tensor Filter Functions
Predefined partitioning functions for tensor data.
void | starpu_tensor_filter_block (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_tensor_filter_block_shadow (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_tensor_filter_vertical_block (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_tensor_filter_vertical_block_shadow (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_tensor_filter_depth_block (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_tensor_filter_depth_block_shadow (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_tensor_filter_time_block (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_tensor_filter_time_block_shadow (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_tensor_filter_pick_block_t (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_tensor_filter_pick_block_z (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_tensor_filter_pick_block_y (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
struct starpu_data_interface_ops * | starpu_tensor_filter_pick_block_child_ops (struct starpu_data_filter *f, unsigned child)
void | starpu_tensor_filter_pick_variable (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
struct starpu_data_interface_ops * | starpu_tensor_filter_pick_variable_child_ops (struct starpu_data_filter *f, unsigned child)
Predefined Ndim Filter Functions
Predefined partitioning functions for ndim array data.
void | starpu_ndim_filter_block (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_ndim_filter_block_shadow (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_ndim_filter_to_tensor (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_ndim_filter_to_block (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_ndim_filter_to_matrix (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_ndim_filter_to_vector (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_ndim_filter_to_variable (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_ndim_filter_pick_ndim (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_ndim_filter_5d_pick_tensor (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_ndim_filter_4d_pick_block (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_ndim_filter_3d_pick_matrix (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_ndim_filter_2d_pick_vector (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_ndim_filter_1d_pick_variable (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
void | starpu_ndim_filter_pick_variable (void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts)
struct starpu_data_interface_ops * | starpu_ndim_filter_pick_tensor_child_ops (struct starpu_data_filter *f, unsigned child)
struct starpu_data_interface_ops * | starpu_ndim_filter_pick_block_child_ops (struct starpu_data_filter *f, unsigned child)
struct starpu_data_interface_ops * | starpu_ndim_filter_pick_matrix_child_ops (struct starpu_data_filter *f, unsigned child)
struct starpu_data_interface_ops * | starpu_ndim_filter_pick_vector_child_ops (struct starpu_data_filter *f, unsigned child)
struct starpu_data_interface_ops * | starpu_ndim_filter_pick_variable_child_ops (struct starpu_data_filter *f, unsigned child)
struct starpu_data_interface_ops * | starpu_ndim_filter_to_tensor_child_ops (struct starpu_data_filter *f, unsigned child)
struct starpu_data_interface_ops * | starpu_ndim_filter_to_block_child_ops (struct starpu_data_filter *f, unsigned child)
struct starpu_data_interface_ops * | starpu_ndim_filter_to_matrix_child_ops (struct starpu_data_filter *f, unsigned child)
struct starpu_data_interface_ops * | starpu_ndim_filter_to_vector_child_ops (struct starpu_data_filter *f, unsigned child)
struct starpu_data_interface_ops * | starpu_ndim_filter_to_variable_child_ops (struct starpu_data_filter *f, unsigned child)
void | starpu_filter_nparts_compute_chunk_size_and_offset (unsigned n, unsigned nparts, size_t elemsize, unsigned id, unsigned blocksize, unsigned *chunk_size, size_t *offset)