StarPU Handbook - StarPU Language Bindings
Task Lists

Data Structures

struct  starpu_task_list
 

Functions

void starpu_task_list_init (struct starpu_task_list *list)
 
void starpu_task_list_push_front (struct starpu_task_list *list, struct starpu_task *task)
 
void starpu_task_list_push_back (struct starpu_task_list *list, struct starpu_task *task)
 
struct starpu_taskstarpu_task_list_front (const struct starpu_task_list *list)
 
struct starpu_taskstarpu_task_list_back (const struct starpu_task_list *list)
 
int starpu_task_list_empty (const struct starpu_task_list *list)
 
void starpu_task_list_erase (struct starpu_task_list *list, struct starpu_task *task)
 
struct starpu_taskstarpu_task_list_pop_front (struct starpu_task_list *list)
 
struct starpu_taskstarpu_task_list_pop_back (struct starpu_task_list *list)
 
struct starpu_taskstarpu_task_list_begin (const struct starpu_task_list *list)
 
struct starpu_taskstarpu_task_list_end (const struct starpu_task_list *list STARPU_ATTRIBUTE_UNUSED)
 
struct starpu_taskstarpu_task_list_next (const struct starpu_task *task)
 
int starpu_task_list_ismember (const struct starpu_task_list *list, const struct starpu_task *look)
 
void starpu_task_list_move (struct starpu_task_list *ldst, struct starpu_task_list *lsrc)
 

Detailed Description


Data Structure Documentation

◆ starpu_task_list

struct starpu_task_list

Store a double-chained list of tasks

Data Fields
struct starpu_task * head

head of the list

struct starpu_task * tail

tail of the list

Function Documentation

◆ starpu_task_list_init()

void starpu_task_list_init ( struct starpu_task_list list)

Initialize a list structure. See SchedulingHelpers for more details.

◆ starpu_task_list_push_front()

void starpu_task_list_push_front ( struct starpu_task_list list,
struct starpu_task task 
)

Push task at the front of list. See SchedulingHelpers for more details.

◆ starpu_task_list_push_back()

void starpu_task_list_push_back ( struct starpu_task_list list,
struct starpu_task task 
)

Push task at the back of list. See SchedulingHelpers for more details.

◆ starpu_task_list_front()

struct starpu_task * starpu_task_list_front ( const struct starpu_task_list list)

Get the front of list (without removing it). See SchedulingHelpers for more details.

◆ starpu_task_list_back()

struct starpu_task * starpu_task_list_back ( const struct starpu_task_list list)

Get the back of list (without removing it). See SchedulingHelpers for more details.

◆ starpu_task_list_empty()

int starpu_task_list_empty ( const struct starpu_task_list list)

Test if list is empty. See SchedulingHelpers for more details.

◆ starpu_task_list_erase()

void starpu_task_list_erase ( struct starpu_task_list list,
struct starpu_task task 
)

Remove task from list. See SchedulingHelpers for more details.

◆ starpu_task_list_pop_front()

struct starpu_task * starpu_task_list_pop_front ( struct starpu_task_list list)

Remove the element at the front of list. See SchedulingHelpers for more details.

◆ starpu_task_list_pop_back()

struct starpu_task * starpu_task_list_pop_back ( struct starpu_task_list list)

Remove the element at the back of list. See SchedulingHelpers for more details.

◆ starpu_task_list_begin()

struct starpu_task * starpu_task_list_begin ( const struct starpu_task_list list)

Get the first task of list. See SchedulingHelpers for more details.

◆ starpu_task_list_end()

struct starpu_task * starpu_task_list_end ( const struct starpu_task_list *list  STARPU_ATTRIBUTE_UNUSED)

Get the end of list. See SchedulingHelpers for more details.

◆ starpu_task_list_next()

struct starpu_task * starpu_task_list_next ( const struct starpu_task task)

Get the next task of list. This is not erase-safe. See SchedulingHelpers for more details.

◆ starpu_task_list_ismember()

int starpu_task_list_ismember ( const struct starpu_task_list list,
const struct starpu_task look 
)

Test whether the given task look is contained in the list. See SchedulingHelpers for more details.

◆ starpu_task_list_move()

void starpu_task_list_move ( struct starpu_task_list ldst,
struct starpu_task_list lsrc 
)

Move list from one head lsrc to another ldst. See SchedulingHelpers for more details.