starpu_task_dep.h
Go to the documentation of this file.
/* StarPU --- Runtime system for heterogeneous multicore architectures.
*
* Copyright (C) 2009-2020 Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
* Copyright (C) 2011 Télécom-SudParis
* Copyright (C) 2016 Uppsala University
*
* StarPU is free software; you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; either version 2.1 of the License, or (at
* your option) any later version.
*
* StarPU is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*
* See the GNU Lesser General Public License in COPYING.LGPL for more details.
*/
#ifndef __STARPU_TASK_DEP_H__
#define __STARPU_TASK_DEP_H__
#include <starpu.h>
#ifdef __cplusplus
extern "C"
{
#endif
void starpu_task_declare_deps_array(struct starpu_task *task, unsigned ndeps, struct starpu_task *task_array[]);
void starpu_task_declare_deps(struct starpu_task *task, unsigned ndeps, ...);
void starpu_task_declare_end_deps_array(struct starpu_task *task, unsigned ndeps, struct starpu_task *task_array[]);
void starpu_task_declare_end_deps(struct starpu_task *task, unsigned ndeps, ...);
int starpu_task_get_task_succs(struct starpu_task *task, unsigned ndeps, struct starpu_task *task_array[]);
int starpu_task_get_task_scheduled_succs(struct starpu_task *task, unsigned ndeps, struct starpu_task *task_array[]);
void starpu_task_end_dep_add(struct starpu_task *t, int nb_deps);
void starpu_task_end_dep_release(struct starpu_task *t);
typedef uint64_t starpu_tag_t;
void starpu_tag_declare_deps(starpu_tag_t id, unsigned ndeps, ...);
void starpu_tag_declare_deps_array(starpu_tag_t id, unsigned ndeps, starpu_tag_t *array);
int starpu_tag_wait(starpu_tag_t id);
int starpu_tag_wait_array(unsigned ntags, starpu_tag_t *id);
void starpu_tag_restart(starpu_tag_t id);
void starpu_tag_remove(starpu_tag_t id);
void starpu_tag_notify_from_apps(starpu_tag_t id);
void starpu_tag_notify_restart_from_apps(starpu_tag_t id);
struct starpu_task *starpu_tag_get_task(starpu_tag_t id);
#ifdef __cplusplus
}
#endif
#endif /* __STARPU_TASK_DEP_H__ */
starpu_task
Definition: starpu_task.h:553
starpu_task_declare_end_deps
void starpu_task_declare_end_deps(struct starpu_task *task, unsigned ndeps,...)
starpu_task_end_dep_release
void starpu_task_end_dep_release(struct starpu_task *t)
starpu_task_declare_end_deps_array
void starpu_task_declare_end_deps_array(struct starpu_task *task, unsigned ndeps, struct starpu_task *task_array[])
starpu_task_get_task_succs
int starpu_task_get_task_succs(struct starpu_task *task, unsigned ndeps, struct starpu_task *task_array[])
starpu_tag_declare_deps
void starpu_tag_declare_deps(starpu_tag_t id, unsigned ndeps,...)
starpu_tag_notify_restart_from_apps
void starpu_tag_notify_restart_from_apps(starpu_tag_t id)
starpu_tag_declare_deps_array
void starpu_tag_declare_deps_array(starpu_tag_t id, unsigned ndeps, starpu_tag_t *array)
starpu_task_end_dep_add
void starpu_task_end_dep_add(struct starpu_task *t, int nb_deps)
starpu_tag_notify_from_apps
void starpu_tag_notify_from_apps(starpu_tag_t id)
starpu_tag_t
uint64_t starpu_tag_t
Definition: starpu_task_dep.h:127
starpu_task_declare_deps
void starpu_task_declare_deps(struct starpu_task *task, unsigned ndeps,...)
starpu_task_declare_deps_array
void starpu_task_declare_deps_array(struct starpu_task *task, unsigned ndeps, struct starpu_task *task_array[])
starpu_tag_remove
void starpu_tag_remove(starpu_tag_t id)
starpu_task_get_task_scheduled_succs
int starpu_task_get_task_scheduled_succs(struct starpu_task *task, unsigned ndeps, struct starpu_task *task_array[])
starpu_tag_restart
void starpu_tag_restart(starpu_tag_t id)
starpu_tag_wait
int starpu_tag_wait(starpu_tag_t id)
starpu_tag_wait_array
int starpu_tag_wait_array(unsigned ntags, starpu_tag_t *id)
starpu.h