Reference: Scheduling

Schedule

class islpy.Schedule(s=None, context=None)
align_params(self: islpy._isl.Schedule, space: islpy._isl.Space)object

align_params(self, space)

Parameters
Returns

Schedule

copy(self: islpy._isl.Schedule)object

copy(self)

Parameters

selfSchedule

Returns

Schedule

dump(self: islpy._isl.Schedule)None

dump(self)

Parameters

selfSchedule

Returns

None

static empty(space: islpy._isl.Space)object

empty(space)

Parameters

spaceSpace

Returns

Schedule

expand(self: islpy._isl.Schedule, contraction: islpy._isl.UnionPwMultiAff, expansion: islpy._isl.Schedule)object

expand(self, contraction, expansion)

Parameters
Returns

Schedule

foreach_schedule_node_top_down(self: islpy._isl.Schedule, fn: object) → islpy._isl.stat

foreach_schedule_node_top_down(self, fn)

Parameters
  • selfSchedule

  • fn – callback(node)

Returns

isl_stat

static from_domain(domain: islpy._isl.UnionSet)object

from_domain(domain)

Parameters

domainUnionSet

Returns

Schedule

get_ctx(self: islpy._isl.Schedule)object

get_ctx(self)

Parameters

selfSchedule

Returns

Context

get_domain(self: islpy._isl.Schedule)object

get_domain(self)

Parameters

selfSchedule

Returns

UnionSet

get_map(self: islpy._isl.Schedule)object

get_map(self)

Parameters

selfSchedule

Returns

UnionMap

get_root(self: islpy._isl.Schedule)object

get_root(self)

Parameters

selfSchedule

Returns

ScheduleNode

gist_domain_params(self: islpy._isl.Schedule, context: islpy._isl.Set)object

gist_domain_params(self, context)

Parameters
Returns

Schedule

insert_context(self: islpy._isl.Schedule, context: islpy._isl.Set)object

insert_context(self, context)

Parameters
Returns

Schedule

insert_guard(self: islpy._isl.Schedule, guard: islpy._isl.Set)object

insert_guard(self, guard)

Parameters
Returns

Schedule

insert_partial_schedule(self: islpy._isl.Schedule, partial: islpy._isl.MultiUnionPwAff)object

insert_partial_schedule(self, partial)

Parameters
Returns

Schedule

intersect_domain(self: islpy._isl.Schedule, domain: islpy._isl.UnionSet)object

intersect_domain(self, domain)

Parameters
Returns

Schedule

map_schedule_node_bottom_up(self: islpy._isl.Schedule, fn: object)object

map_schedule_node_bottom_up(self, fn)

Parameters
  • selfSchedule

  • fn – callback(node)

Returns

Schedule

plain_is_equal(self: islpy._isl.Schedule, schedule2: islpy._isl.Schedule)bool

plain_is_equal(self, schedule2)

Parameters
Returns

bool

pullback_union_pw_multi_aff(self: islpy._isl.Schedule, upma: islpy._isl.UnionPwMultiAff)object

pullback_union_pw_multi_aff(self, upma)

Parameters
Returns

Schedule

static read_from_str(ctx: islpy._isl.Context, str: str)object

read_from_str(ctx, str)

Parameters
Returns

Schedule

reset_user(self: islpy._isl.Schedule)object

reset_user(self)

Parameters

selfSchedule

Returns

Schedule

sequence(self: islpy._isl.Schedule, schedule2: islpy._isl.Schedule)object

sequence(self, schedule2)

Parameters
Returns

Schedule

set(self: islpy._isl.Schedule, schedule2: islpy._isl.Schedule)object

set(self, schedule2)

Parameters
Returns

Schedule

to_str(self: islpy._isl.Schedule)object

to_str(self)

Parameters

selfSchedule

Returns

string

Schedule Node

class islpy.ScheduleNode
align_params(self: islpy._isl.ScheduleNode, space: islpy._isl.Space)object

align_params(self, space)

Parameters
Returns

ScheduleNode

ancestor(self: islpy._isl.ScheduleNode, generation: int)object

ancestor(self, generation)

Parameters
Returns

ScheduleNode

band_get_ast_build_options(self: islpy._isl.ScheduleNode)object

band_get_ast_build_options(self)

Parameters

selfScheduleNode

Returns

UnionSet

band_get_ast_isolate_option(self: islpy._isl.ScheduleNode)object

band_get_ast_isolate_option(self)

Parameters

selfScheduleNode

Returns

Set

band_get_partial_schedule(self: islpy._isl.ScheduleNode)object

band_get_partial_schedule(self)

Parameters

selfScheduleNode

Returns

MultiUnionPwAff

band_get_partial_schedule_union_map(self: islpy._isl.ScheduleNode)object

band_get_partial_schedule_union_map(self)

Parameters

selfScheduleNode

Returns

UnionMap

band_get_permutable(self: islpy._isl.ScheduleNode)bool

band_get_permutable(self)

Parameters

selfScheduleNode

Returns

bool

band_get_space(self: islpy._isl.ScheduleNode)object

band_get_space(self)

Parameters

selfScheduleNode

Returns

Space

band_member_get_ast_loop_type(self: islpy._isl.ScheduleNode, pos: int) → islpy._isl.ast_loop_type

band_member_get_ast_loop_type(self, pos)

Parameters
Returns

isl_ast_loop_type

band_member_get_coincident(self: islpy._isl.ScheduleNode, pos: int)bool

band_member_get_coincident(self, pos)

Parameters
Returns

bool

band_member_get_isolate_ast_loop_type(self: islpy._isl.ScheduleNode, pos: int) → islpy._isl.ast_loop_type

band_member_get_isolate_ast_loop_type(self, pos)

Parameters
Returns

isl_ast_loop_type

band_member_set_ast_loop_type(self: islpy._isl.ScheduleNode, pos: int, type: islpy._isl.ast_loop_type)object

band_member_set_ast_loop_type(self, pos, type)

Parameters
Returns

ScheduleNode

band_member_set_coincident(self: islpy._isl.ScheduleNode, pos: int, coincident: int)object

band_member_set_coincident(self, pos, coincident)

Parameters
Returns

ScheduleNode

band_member_set_isolate_ast_loop_type(self: islpy._isl.ScheduleNode, pos: int, type: islpy._isl.ast_loop_type)object

band_member_set_isolate_ast_loop_type(self, pos, type)

Parameters
Returns

ScheduleNode

band_mod(self: islpy._isl.ScheduleNode, mv: islpy._isl.MultiVal)object

band_mod(self, mv)

Parameters
Returns

ScheduleNode

band_n_member(self: islpy._isl.ScheduleNode)int

band_n_member(self)

Parameters

selfScheduleNode

Returns

isl_size

band_scale(self: islpy._isl.ScheduleNode, mv: islpy._isl.MultiVal)object

band_scale(self, mv)

Parameters
Returns

ScheduleNode

band_scale_down(self: islpy._isl.ScheduleNode, mv: islpy._isl.MultiVal)object

band_scale_down(self, mv)

Parameters
Returns

ScheduleNode

band_set_ast_build_options(self: islpy._isl.ScheduleNode, options: islpy._isl.UnionSet)object

band_set_ast_build_options(self, options)

Parameters
Returns

ScheduleNode

band_set_permutable(self: islpy._isl.ScheduleNode, permutable: int)object

band_set_permutable(self, permutable)

Parameters
Returns

ScheduleNode

band_shift(self: islpy._isl.ScheduleNode, shift: islpy._isl.MultiUnionPwAff)object

band_shift(self, shift)

Parameters
Returns

ScheduleNode

band_sink(self: islpy._isl.ScheduleNode)object

band_sink(self)

Parameters

selfScheduleNode

Returns

ScheduleNode

band_split(self: islpy._isl.ScheduleNode, pos: int)object

band_split(self, pos)

Parameters
Returns

ScheduleNode

band_tile(self: islpy._isl.ScheduleNode, sizes: islpy._isl.MultiVal)object

band_tile(self, sizes)

Parameters
Returns

ScheduleNode

child(self: islpy._isl.ScheduleNode, pos: int)object

child(self, pos)

Parameters
Returns

ScheduleNode

context_get_context(self: islpy._isl.ScheduleNode)object

context_get_context(self)

Parameters

selfScheduleNode

Returns

Set

copy(self: islpy._isl.ScheduleNode)object

copy(self)

Parameters

selfScheduleNode

Returns

ScheduleNode

cut(self: islpy._isl.ScheduleNode)object

cut(self)

Parameters

selfScheduleNode

Returns

ScheduleNode

delete(self: islpy._isl.ScheduleNode)object

delete(self)

Parameters

selfScheduleNode

Returns

ScheduleNode

domain_get_domain(self: islpy._isl.ScheduleNode)object

domain_get_domain(self)

Parameters

selfScheduleNode

Returns

UnionSet

dump(self: islpy._isl.ScheduleNode)None

dump(self)

Parameters

selfScheduleNode

Returns

None

every_descendant(self: islpy._isl.ScheduleNode, test: object)bool

every_descendant(self, test)

Parameters
Returns

bool

expansion_get_contraction(self: islpy._isl.ScheduleNode)object

expansion_get_contraction(self)

Parameters

selfScheduleNode

Returns

UnionPwMultiAff

expansion_get_expansion(self: islpy._isl.ScheduleNode)object

expansion_get_expansion(self)

Parameters

selfScheduleNode

Returns

UnionMap

extension_get_extension(self: islpy._isl.ScheduleNode)object

extension_get_extension(self)

Parameters

selfScheduleNode

Returns

UnionMap

filter_get_filter(self: islpy._isl.ScheduleNode)object

filter_get_filter(self)

Parameters

selfScheduleNode

Returns

UnionSet

first_child(self: islpy._isl.ScheduleNode)object

first_child(self)

Parameters

selfScheduleNode

Returns

ScheduleNode

foreach_ancestor_top_down(self: islpy._isl.ScheduleNode, fn: object) → islpy._isl.stat

foreach_ancestor_top_down(self, fn)

Parameters
Returns

isl_stat

foreach_descendant_top_down(self: islpy._isl.ScheduleNode, fn: object) → islpy._isl.stat

foreach_descendant_top_down(self, fn)

Parameters
Returns

isl_stat

static from_domain(domain: islpy._isl.UnionSet)object

from_domain(domain)

Parameters

domainUnionSet

Returns

ScheduleNode

static from_extension(extension: islpy._isl.UnionMap)object

from_extension(extension)

Parameters

extensionUnionMap

Returns

ScheduleNode

get_ancestor_child_position(self: islpy._isl.ScheduleNode, ancestor: islpy._isl.ScheduleNode)int

get_ancestor_child_position(self, ancestor)

Parameters
Returns

isl_size

get_child(self: islpy._isl.ScheduleNode, pos: int)object

get_child(self, pos)

Parameters
Returns

ScheduleNode

get_child_position(self: islpy._isl.ScheduleNode)int

get_child_position(self)

Parameters

selfScheduleNode

Returns

isl_size

get_ctx(self: islpy._isl.ScheduleNode)object

get_ctx(self)

Parameters

selfScheduleNode

Returns

Context

get_domain(self: islpy._isl.ScheduleNode)object

get_domain(self)

Parameters

selfScheduleNode

Returns

UnionSet

get_parent_type(self: islpy._isl.ScheduleNode) → islpy._isl.schedule_node_type

get_parent_type(self)

Parameters

selfScheduleNode

Returns

isl_schedule_node_type

get_prefix_schedule_multi_union_pw_aff(self: islpy._isl.ScheduleNode)object

get_prefix_schedule_multi_union_pw_aff(self)

Parameters

selfScheduleNode

Returns

MultiUnionPwAff

get_prefix_schedule_relation(self: islpy._isl.ScheduleNode)object

get_prefix_schedule_relation(self)

Parameters

selfScheduleNode

Returns

UnionMap

get_prefix_schedule_union_map(self: islpy._isl.ScheduleNode)object

get_prefix_schedule_union_map(self)

Parameters

selfScheduleNode

Returns

UnionMap

get_prefix_schedule_union_pw_multi_aff(self: islpy._isl.ScheduleNode)object

get_prefix_schedule_union_pw_multi_aff(self)

Parameters

selfScheduleNode

Returns

UnionPwMultiAff

get_schedule(self: islpy._isl.ScheduleNode)object

get_schedule(self)

Parameters

selfScheduleNode

Returns

Schedule

get_schedule_depth(self: islpy._isl.ScheduleNode)int

get_schedule_depth(self)

Parameters

selfScheduleNode

Returns

isl_size

get_shared_ancestor(self: islpy._isl.ScheduleNode, node2: islpy._isl.ScheduleNode)object

get_shared_ancestor(self, node2)

Parameters
Returns

ScheduleNode

get_subtree_contraction(self: islpy._isl.ScheduleNode)object

get_subtree_contraction(self)

Parameters

selfScheduleNode

Returns

UnionPwMultiAff

get_subtree_expansion(self: islpy._isl.ScheduleNode)object

get_subtree_expansion(self)

Parameters

selfScheduleNode

Returns

UnionMap

get_subtree_schedule_union_map(self: islpy._isl.ScheduleNode)object

get_subtree_schedule_union_map(self)

Parameters

selfScheduleNode

Returns

UnionMap

get_tree_depth(self: islpy._isl.ScheduleNode)int

get_tree_depth(self)

Parameters

selfScheduleNode

Returns

isl_size

get_type(self: islpy._isl.ScheduleNode) → islpy._isl.schedule_node_type

get_type(self)

Parameters

selfScheduleNode

Returns

isl_schedule_node_type

get_universe_domain(self: islpy._isl.ScheduleNode)object

get_universe_domain(self)

Parameters

selfScheduleNode

Returns

UnionSet

graft_after(self: islpy._isl.ScheduleNode, graft: islpy._isl.ScheduleNode)object

graft_after(self, graft)

Parameters
Returns

ScheduleNode

graft_before(self: islpy._isl.ScheduleNode, graft: islpy._isl.ScheduleNode)object

graft_before(self, graft)

Parameters
Returns

ScheduleNode

group(self: islpy._isl.ScheduleNode, group_id: islpy._isl.Id)object

group(self, group_id)

Parameters
Returns

ScheduleNode

guard_get_guard(self: islpy._isl.ScheduleNode)object

guard_get_guard(self)

Parameters

selfScheduleNode

Returns

Set

has_children(self: islpy._isl.ScheduleNode)bool

has_children(self)

Parameters

selfScheduleNode

Returns

bool

has_next_sibling(self: islpy._isl.ScheduleNode)bool

has_next_sibling(self)

Parameters

selfScheduleNode

Returns

bool

has_parent(self: islpy._isl.ScheduleNode)bool

has_parent(self)

Parameters

selfScheduleNode

Returns

bool

has_previous_sibling(self: islpy._isl.ScheduleNode)bool

has_previous_sibling(self)

Parameters

selfScheduleNode

Returns

bool

insert_context(self: islpy._isl.ScheduleNode, context: islpy._isl.Set)object

insert_context(self, context)

Parameters
Returns

ScheduleNode

insert_filter(self: islpy._isl.ScheduleNode, filter: islpy._isl.UnionSet)object

insert_filter(self, filter)

Parameters
Returns

ScheduleNode

insert_guard(self: islpy._isl.ScheduleNode, context: islpy._isl.Set)object

insert_guard(self, context)

Parameters
Returns

ScheduleNode

insert_mark(self: islpy._isl.ScheduleNode, mark: islpy._isl.Id)object

insert_mark(self, mark)

Parameters
Returns

ScheduleNode

insert_partial_schedule(self: islpy._isl.ScheduleNode, schedule: islpy._isl.MultiUnionPwAff)object

insert_partial_schedule(self, schedule)

Parameters
Returns

ScheduleNode

insert_sequence(self: islpy._isl.ScheduleNode, filters: islpy._isl.UnionSetList)object

insert_sequence(self, filters)

Parameters
Returns

ScheduleNode

insert_set(self: islpy._isl.ScheduleNode, filters: islpy._isl.UnionSetList)object

insert_set(self, filters)

Parameters
Returns

ScheduleNode

is_equal(self: islpy._isl.ScheduleNode, node2: islpy._isl.ScheduleNode)bool

is_equal(self, node2)

Parameters
Returns

bool

is_subtree_anchored(self: islpy._isl.ScheduleNode)bool

is_subtree_anchored(self)

Parameters

selfScheduleNode

Returns

bool

map_descendant_bottom_up(self: islpy._isl.ScheduleNode, fn: object)object

map_descendant_bottom_up(self, fn)

Parameters
Returns

ScheduleNode

mark_get_id(self: islpy._isl.ScheduleNode)object

mark_get_id(self)

Parameters

selfScheduleNode

Returns

Id

n_children(self: islpy._isl.ScheduleNode)int

n_children(self)

Parameters

selfScheduleNode

Returns

isl_size

next_sibling(self: islpy._isl.ScheduleNode)object

next_sibling(self)

Parameters

selfScheduleNode

Returns

ScheduleNode

order_after(self: islpy._isl.ScheduleNode, filter: islpy._isl.UnionSet)object

order_after(self, filter)

Parameters
Returns

ScheduleNode

order_before(self: islpy._isl.ScheduleNode, filter: islpy._isl.UnionSet)object

order_before(self, filter)

Parameters
Returns

ScheduleNode

parent(self: islpy._isl.ScheduleNode)object

parent(self)

Parameters

selfScheduleNode

Returns

ScheduleNode

previous_sibling(self: islpy._isl.ScheduleNode)object

previous_sibling(self)

Parameters

selfScheduleNode

Returns

ScheduleNode

reset_user(self: islpy._isl.ScheduleNode)object

reset_user(self)

Parameters

selfScheduleNode

Returns

ScheduleNode

root(self: islpy._isl.ScheduleNode)object

root(self)

Parameters

selfScheduleNode

Returns

ScheduleNode

sequence_splice_child(self: islpy._isl.ScheduleNode, pos: int)object

sequence_splice_child(self, pos)

Parameters
Returns

ScheduleNode

to_str(self: islpy._isl.ScheduleNode)object

to_str(self)

Parameters

selfScheduleNode

Returns

string

ScheduleConstraints

class islpy.ScheduleConstraints(s=None, context=None)
apply(self: islpy._isl.ScheduleConstraints, umap: islpy._isl.UnionMap)object

apply(self, umap)

Parameters
Returns

ScheduleConstraints

compute_schedule(self: islpy._isl.ScheduleConstraints)object

compute_schedule(self)

Parameters

selfScheduleConstraints

Returns

Schedule

copy(self: islpy._isl.ScheduleConstraints)object

copy(self)

Parameters

selfScheduleConstraints

Returns

ScheduleConstraints

dump(self: islpy._isl.ScheduleConstraints)None

dump(self)

Parameters

selfScheduleConstraints

Returns

None

get_coincidence(self: islpy._isl.ScheduleConstraints)object

get_coincidence(self)

Parameters

selfScheduleConstraints

Returns

UnionMap

get_conditional_validity(self: islpy._isl.ScheduleConstraints)object

get_conditional_validity(self)

Parameters

selfScheduleConstraints

Returns

UnionMap

get_conditional_validity_condition(self: islpy._isl.ScheduleConstraints)object

get_conditional_validity_condition(self)

Parameters

selfScheduleConstraints

Returns

UnionMap

get_context(self: islpy._isl.ScheduleConstraints)object

get_context(self)

Parameters

selfScheduleConstraints

Returns

Set

get_ctx(self: islpy._isl.ScheduleConstraints)object

get_ctx(self)

Parameters

selfScheduleConstraints

Returns

Context

get_domain(self: islpy._isl.ScheduleConstraints)object

get_domain(self)

Parameters

selfScheduleConstraints

Returns

UnionSet

get_proximity(self: islpy._isl.ScheduleConstraints)object

get_proximity(self)

Parameters

selfScheduleConstraints

Returns

UnionMap

get_validity(self: islpy._isl.ScheduleConstraints)object

get_validity(self)

Parameters

selfScheduleConstraints

Returns

UnionMap

static on_domain(domain: islpy._isl.UnionSet)object

on_domain(domain)

Parameters

domainUnionSet

Returns

ScheduleConstraints

static read_from_str(ctx: islpy._isl.Context, str: str)object

read_from_str(ctx, str)

Parameters
Returns

ScheduleConstraints

set_coincidence(self: islpy._isl.ScheduleConstraints, coincidence: islpy._isl.UnionMap)object

set_coincidence(self, coincidence)

Parameters
Returns

ScheduleConstraints

set_conditional_validity(self: islpy._isl.ScheduleConstraints, condition: islpy._isl.UnionMap, validity: islpy._isl.UnionMap)object

set_conditional_validity(self, condition, validity)

Parameters
Returns

ScheduleConstraints

set_context(self: islpy._isl.ScheduleConstraints, context: islpy._isl.Set)object

set_context(self, context)

Parameters
Returns

ScheduleConstraints

set_proximity(self: islpy._isl.ScheduleConstraints, proximity: islpy._isl.UnionMap)object

set_proximity(self, proximity)

Parameters
Returns

ScheduleConstraints

set_validity(self: islpy._isl.ScheduleConstraints, validity: islpy._isl.UnionMap)object

set_validity(self, validity)

Parameters
Returns

ScheduleConstraints

to_str(self: islpy._isl.ScheduleConstraints)object

to_str(self)

Parameters

selfScheduleConstraints

Returns

string