浏览代码

define function starpu_data_get_nb_children()

Nathalie Furmento 15 年之前
父节点
当前提交
9e55f6b493
共有 2 个文件被更改,包括 12 次插入3 次删除
  1. 4 0
      include/starpu_data_filters.h
  2. 8 3
      src/datawizard/filters.c

+ 4 - 0
include/starpu_data_filters.h

@@ -38,6 +38,7 @@ struct starpu_data_filter {
 void starpu_data_partition(starpu_data_handle initial_handle, struct starpu_data_filter *f);
 void starpu_data_unpartition(starpu_data_handle root_data, uint32_t gathering_node);
 
+int starpu_data_get_nb_children(starpu_data_handle handle);
 starpu_data_handle starpu_data_get_child(starpu_data_handle handle, unsigned i);
 
 /* unsigned list */
@@ -60,6 +61,9 @@ void starpu_block_filter_func_vector(void *father_interface, void *child_interfa
 void starpu_vector_list_filter_func(void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts);
 void starpu_vector_divide_in_2_filter_func(void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts);
 
+/* for block */
+void starpu_block_filter_func_block(void *father_interface, void *child_interface, struct starpu_data_filter *f, unsigned id, unsigned nparts);
+
 #ifdef __cplusplus
 }
 #endif

+ 8 - 3
src/datawizard/filters.c

@@ -56,9 +56,11 @@ void starpu_data_map_filters(starpu_data_handle root_handle, unsigned nfilters,
 	va_end(pa);
 }
 
-/*
- * example starpu_data_get_sub_data(starpu_data_handle root_handle, 3, 42, 0, 1);
- */
+int starpu_data_get_nb_children(starpu_data_handle handle)
+{
+        return handle->nchildren;
+}
+
 starpu_data_handle starpu_data_get_child(starpu_data_handle handle, unsigned i)
 {
 	STARPU_ASSERT(i < handle->nchildren);
@@ -66,6 +68,9 @@ starpu_data_handle starpu_data_get_child(starpu_data_handle handle, unsigned i)
 	return &handle->children[i];
 }
 
+/*
+ * example starpu_data_get_sub_data(starpu_data_handle root_handle, 3, 42, 0, 1);
+ */
 starpu_data_handle starpu_data_get_sub_data(starpu_data_handle root_handle, unsigned depth, ... )
 {
 	STARPU_ASSERT(root_handle);