44 starpu_task_wait_for_all();
56 std::vector<unsigned int> *v= &(getTagIds());
58 std::vector<unsigned int>::iterator it = v->begin();
59 for(; it!= v->end(); it++)
70 template<
typename Function1>
71 void farm(Function1 *f1)
74 ((Task*)f1)->run_async();
78 #ifdef __GXX_EXPERIMENTAL_CXX0X__
84 unsigned count_arguments()
92 template<
typename Function1,
typename... FurtherFunctions>
93 unsigned count_arguments(Function1 *f1, FurtherFunctions... further_functions)
95 return 1 + count_arguments(std::forward<FurtherFunctions>(further_functions)...);
101 void call_with_task()
108 template<
typename Function1,
typename... FurtherFunctions>
109 void call_with_task(Function1 *f1, FurtherFunctions... further_functions)
111 ((Task*)f1)->run_async();
114 call_with_task(std::forward<FurtherFunctions>(further_functions)...);
121 template<
typename... Functions>
122 void farm(Functions... functions)
126 call_with_task(functions...);
128 setIsFormCall(
false);
131 starpu_task_wait_for_all();
139 template<
typename Function1,
typename Function2>
140 void farm(Function1 *f1, Function2 *f2)
144 ((
Task*)f1)->run_async();
145 ((
Task*)f2)->run_async();
147 setIsFormCall(
false);
150 starpu_task_wait_for_all();
void join_farm()
Definition: farm.h:54
Contains a class definition for Task.
A class representing a Task for the farm skeleton.
Definition: task.h:31
Contains a class declaration for Environment class.
void join_farm_all()
Definition: farm.h:42