StarPU Handbook

Functions
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