Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Statement instance order and lex order map #479

Draft
wants to merge 409 commits into
base: main
Choose a base branch
from

Conversation

inducer
Copy link
Owner

@inducer inducer commented Aug 6, 2021

cc @jdsteve2

Subsumes #202 and #169.

See prior review progress

…ts for all relevant insn_ids simultaneously; then afterward process pairs individually; (also eliminate more unnecessary lex dims)
… that are not in {0,1} with {0,1} (we're only describing relative order, so higher int values are unnecessary and confusing)
…es in schedule outline creation since these are replaced with {0, 1} in the map simplification step. Further reduce number of lex dims in pairwise maps with the following strategy: once a lex tuple dimension is found where both tuples have non-matching integer values, remove any faster-updating lex dimensions where both tuples have integer values, even if the integers don't match.
…id_before, insn_id_after) tuples to (schedule_before, schedule_after) tuples
…ent_pairs(); don't hardcode expected lex order maps, instead create them to match expected dim size
…nsion is found where both tuples have non-matching integer values, remove all faster-updating lex dimensions.
…ts, keep all pairs in lists (of length 2) and operate on the lists with loops
…est; probably the wrong way to do this... (but it's not time to add this to tutorial yet)
…ements map to the exact same point(s) in the lex ordering, which is okay, but to represent this, our lex tuple cannot be empty, so map to (0))
…e_symbolic_map_from_tuples(), all dims will always be present by construction; rename insert_missing_dims_and_reorder_by_name()->reorder_dims_by_name()
jdsteve2 and others added 29 commits September 13, 2021 03:11
…ple inames tagged with the same parallel iname tag
…concurrent loops; enable removal of redundant pass over instructions by computing max_depth_of_barrier_loop in first pass
…nested_loops in _gather_blex_ordering_info()
…_info; rename loops_with_barriers->seq_loops_with_barriers for clarity
…ion _pad_tuples_and_assign_integer_vals_to_map_template
…ow computed by starting with TOP/BOTTOM and then applying the appropriate loop bound
…make our mechanisms that account for the effect of *local* barriers on execution order view *global* barriers as also having that effect
…so syncronize threads *within* a work-group, make our mechanisms that account for the effect of *local* barriers on execution order view *global* barriers as also having that effect)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants