gko::experimental::distributed::Partition
¶
vectors and matrices are row-wise distributed
each row has an owning process
represented by partition
image to show partition
stored as collection of half-open intervals called ranges
each range belongs to a part, i.e. process
Creating¶
multiple creation patterns supported
specify the part for each index
provide only ranges and part-ids
can leave out part-ids, then each range will belong to part-id same as range-id
uniform sizes for a given global size and number of parts
partition can’t be changed after created
Helper Functions¶
require communication
each part specifies only its own size, global size and ranges are inferred
each part specifies only its own range, …, checks if no gaps globally
Accessing¶
only const accessors
scalar query functions
get_size
get_num_ranges
get_num_parts
get_num_empty_parts
array query functions
compressed range bounds
range starting indices
part id per range
part size