cornell-zhang / heterocl

HeteroCL: A Multi-Paradigm Programming Infrastructure for Software-Defined Heterogeneous Computing
https://cornell-zhang.github.io/heterocl/
Apache License 2.0
322 stars 92 forks source link

[Refactor] Make compute_at more robust #97

Closed seanlatias closed 5 years ago

seanlatias commented 5 years ago

In this PR, the following changes are made.

  1. Now compute_at support compute patterns with data reuse. Namely, the allocated memory size is now correct.
  2. Users cannot perform loop transformation before using compute_at. Any loop transformation should happen after compute_at.
  3. The infer bound pass of the original TVM is not useful for ExternOp, thus we can safely remove it.
  4. Now compute_at can deal with cases that have different bounds between consumers and producers.

==