StarPU Handbook
Bitmap

This is the interface for the bitmap utilities provided by StarPU. More...

Functions

struct starpu_bitmap * starpu_bitmap_create (void) STARPU_ATTRIBUTE_MALLOC
 
void starpu_bitmap_destroy (struct starpu_bitmap *b)
 
void starpu_bitmap_set (struct starpu_bitmap *b, int e)
 
void starpu_bitmap_unset (struct starpu_bitmap *b, int e)
 
void starpu_bitmap_unset_all (struct starpu_bitmap *b)
 
int starpu_bitmap_get (struct starpu_bitmap *b, int e)
 
void starpu_bitmap_unset_and (struct starpu_bitmap *a, struct starpu_bitmap *b, struct starpu_bitmap *c)
 
void starpu_bitmap_or (struct starpu_bitmap *a, struct starpu_bitmap *b)
 
int starpu_bitmap_and_get (struct starpu_bitmap *b1, struct starpu_bitmap *b2, int e)
 
int starpu_bitmap_cardinal (struct starpu_bitmap *b)
 
int starpu_bitmap_first (struct starpu_bitmap *b)
 
int starpu_bitmap_last (struct starpu_bitmap *b)
 
int starpu_bitmap_next (struct starpu_bitmap *b, int e)
 
int starpu_bitmap_has_next (struct starpu_bitmap *b, int e)
 

Detailed Description

This is the interface for the bitmap utilities provided by StarPU.

Function Documentation

◆ starpu_bitmap_create()

struct starpu_bitmap* starpu_bitmap_create ( void  )

create a empty starpu_bitmap

◆ starpu_bitmap_destroy()

void starpu_bitmap_destroy ( struct starpu_bitmap *  b)

free b

◆ starpu_bitmap_set()

void starpu_bitmap_set ( struct starpu_bitmap *  b,
int  e 
)

set bit e in b

◆ starpu_bitmap_unset()

void starpu_bitmap_unset ( struct starpu_bitmap *  b,
int  e 
)

unset bit e in b

◆ starpu_bitmap_unset_all()

void starpu_bitmap_unset_all ( struct starpu_bitmap *  b)

unset all bits in b

◆ starpu_bitmap_get()

int starpu_bitmap_get ( struct starpu_bitmap *  b,
int  e 
)

return true iff bit e is set in b

◆ starpu_bitmap_unset_and()

void starpu_bitmap_unset_and ( struct starpu_bitmap *  a,
struct starpu_bitmap *  b,
struct starpu_bitmap *  c 
)

Basically compute starpu_bitmap_unset_all(a) ; a = b & c;

◆ starpu_bitmap_or()

void starpu_bitmap_or ( struct starpu_bitmap *  a,
struct starpu_bitmap *  b 
)

Basically compute a |= b

◆ starpu_bitmap_and_get()

int starpu_bitmap_and_get ( struct starpu_bitmap *  b1,
struct starpu_bitmap *  b2,
int  e 
)

return 1 iff e is set in b1 AND e is set in b2

◆ starpu_bitmap_cardinal()

int starpu_bitmap_cardinal ( struct starpu_bitmap *  b)

return the number of set bits in b

◆ starpu_bitmap_first()

int starpu_bitmap_first ( struct starpu_bitmap *  b)

return the index of the first set bit of b, -1 if none

◆ starpu_bitmap_last()

int starpu_bitmap_last ( struct starpu_bitmap *  b)

return the position of the last set bit of b, -1 if none

◆ starpu_bitmap_next()

int starpu_bitmap_next ( struct starpu_bitmap *  b,
int  e 
)

return the position of set bit right after e in b, -1 if none

◆ starpu_bitmap_has_next()

int starpu_bitmap_has_next ( struct starpu_bitmap *  b,
int  e 
)

todo