Skip to content

Commit

Permalink
[RFC] Buffer Layout Padding (#77)
Browse files Browse the repository at this point in the history
* [RFC] Buffer Layout Padding

This RFC introduces a method to specify padding to be applied as part
of a buffer layout transformation, to be used when the desired layout
does not evenly tile the buffer being transformed, and simplifications
that can be performed based on these padded buffers.

The motivating examples are primarily in the "Implementation options"
section, which goes through several desired usages of the buffer
padding, and how they can be automatically derived using the
TIR primitives/transformations described in earlier sections.

* Updated number to match PR, added RFC PR link.

* Fixed erroneous lack of Chris Sullivan on author list

* Rename builtin::arbitrary to builtin::undef

Following @wrongtest's suggestion at
#77 (comment).

* Change sequential_buffer_access from a primitive to a utility

Following suggestion from @Hzfengsy at
#77 (comment)

* Updated to use T.assume everywhere, instead of BufferConstraint

* Added description of what may be necessary for split/hoisted stage

* Removed if statement in example

* Added reference to LLVM's __builtin_assume.

* Updated from discussion, when a PrimFunc's interface may be altered

* Updated table of contents and internal links

* Wording change on PrimFunc interface changes

* Added transformation rules on T.assume from discussion

* Removed trailing whitespace

* Corrected mistake in MergeConditionals example
  • Loading branch information
Lunderberg authored Jul 15, 2022
1 parent 22d1d11 commit ca695fe
Showing 1 changed file with 3,090 additions and 0 deletions.
Loading

0 comments on commit ca695fe

Please sign in to comment.