StarPU Internal Handbook

Data Structures | Functions
sched_ctx_list.h File Reference

Go to the source code of this file.

## Data Structures
struct | _starpu_sched_ctx_list
struct | _starpu_sched_ctx_elt
struct | _starpu_sched_ctx_list_iterator

## Functions
struct _starpu_sched_ctx_elt * | _starpu_sched_ctx_elt_find (struct _starpu_sched_ctx_list *list, unsigned sched_ctx)
void | _starpu_sched_ctx_elt_ensure_consistency (struct _starpu_sched_ctx_list *list, unsigned sched_ctx)
void | _starpu_sched_ctx_elt_init (struct _starpu_sched_ctx_elt *elt, unsigned sched_ctx)
struct _starpu_sched_ctx_elt * | _starpu_sched_ctx_elt_add_after (struct _starpu_sched_ctx_list *list, unsigned sched_ctx)
struct _starpu_sched_ctx_elt * | _starpu_sched_ctx_elt_add_before (struct _starpu_sched_ctx_list *list, unsigned sched_ctx)
struct _starpu_sched_ctx_elt * | _starpu_sched_ctx_elt_add (struct _starpu_sched_ctx_list *list, unsigned sched_ctx)
void | _starpu_sched_ctx_elt_remove (struct _starpu_sched_ctx_list *list, struct _starpu_sched_ctx_elt *elt)
int | _starpu_sched_ctx_elt_exists (struct _starpu_sched_ctx_list *list, unsigned sched_ctx)
int | _starpu_sched_ctx_elt_get_priority (struct _starpu_sched_ctx_list *list, unsigned sched_ctx)
struct _starpu_sched_ctx_list * | _starpu_sched_ctx_list_find (struct _starpu_sched_ctx_list *list, unsigned prio)
struct _starpu_sched_ctx_elt * | _starpu_sched_ctx_list_add_prio (struct _starpu_sched_ctx_list **list, unsigned prio, unsigned sched_ctx)
int | _starpu_sched_ctx_list_add (struct _starpu_sched_ctx_list **list, unsigned sched_ctx)
void | _starpu_sched_ctx_list_remove_elt (struct _starpu_sched_ctx_list **list, struct _starpu_sched_ctx_elt *rm)
int | _starpu_sched_ctx_list_remove (struct _starpu_sched_ctx_list **list, unsigned sched_ctx)
int | _starpu_sched_ctx_list_move (struct _starpu_sched_ctx_list **list, unsigned sched_ctx, unsigned prio_to)
int | _starpu_sched_ctx_list_exists (struct _starpu_sched_ctx_list *list, unsigned prio)
void | _starpu_sched_ctx_list_remove_all (struct _starpu_sched_ctx_list *list)
void | _starpu_sched_ctx_list_delete (struct _starpu_sched_ctx_list **list)
int | _starpu_sched_ctx_list_push_event (struct _starpu_sched_ctx_list *list, unsigned sched_ctx)
int | _starpu_sched_ctx_list_pop_event (struct _starpu_sched_ctx_list *list, unsigned sched_ctx)
int | _starpu_sched_ctx_list_pop_all_event (struct _starpu_sched_ctx_list *list, unsigned sched_ctx)
int | _starpu_sched_ctx_list_iterator_init (struct _starpu_sched_ctx_list *list, struct _starpu_sched_ctx_list_iterator *it)
int | _starpu_sched_ctx_list_iterator_has_next (struct _starpu_sched_ctx_list_iterator *it)
struct _starpu_sched_ctx_elt * | _starpu_sched_ctx_list_iterator_get_next (struct _starpu_sched_ctx_list_iterator *it)

## Data Structure Documentation

## ◆ _starpu_sched_ctx_list

struct _starpu_sched_ctx_list

Data Fields
struct _starpu_sched_ctx_list * | prev |
struct _starpu_sched_ctx_list * | next |
struct _starpu_sched_ctx_elt * | head |
unsigned | priority |

## ◆ _starpu_sched_ctx_elt

struct _starpu_sched_ctx_elt

Represents a circular list of sched context.

Data Fields
struct _starpu_sched_ctx_elt * | prev |
struct _starpu_sched_ctx_elt * | next |
struct _starpu_sched_ctx_list * | parent |
unsigned | sched_ctx |
long | task_number |
unsigned | last_poped |

## ◆ _starpu_sched_ctx_list_iterator

struct _starpu_sched_ctx_list_iterator

Data Fields
struct _starpu_sched_ctx_list * | list_head |
struct _starpu_sched_ctx_elt * | cursor |

## Function Documentation

## ◆ _starpu_sched_ctx_elt_find()

struct _starpu_sched_ctx_elt * _starpu_sched_ctx_elt_find | ( | struct _starpu_sched_ctx_list * | list,
|  | unsigned | sched_ctx
| ) |  |

Element (sched_ctx) level operations

## ◆ _starpu_sched_ctx_list_find()

struct _starpu_sched_ctx_list * _starpu_sched_ctx_list_find | ( | struct _starpu_sched_ctx_list * | list,
|  | unsigned | prio
| ) |  |

List (priority) level operations

## ◆ _starpu_sched_ctx_list_push_event()

int _starpu_sched_ctx_list_push_event | ( | struct _starpu_sched_ctx_list * | list,
|  | unsigned | sched_ctx
| ) |  |

Task number management

## ◆ _starpu_sched_ctx_list_iterator_init()

int _starpu_sched_ctx_list_iterator_init | ( | struct _starpu_sched_ctx_list * | list,
|  | struct _starpu_sched_ctx_list_iterator * | it
| ) |  |

Iterator operations