Skip to content
This repository has been archived by the owner on Dec 1, 2018. It is now read-only.

Aligned load becomes unaligned load because of type conversion #264

Open
yaqiz01 opened this issue May 18, 2018 · 0 comments
Open

Aligned load becomes unaligned load because of type conversion #264

yaqiz01 opened this issue May 18, 2018 · 0 comments
Assignees
Labels

Comments

@yaqiz01
Copy link
Contributor

yaqiz01 commented May 18, 2018

Not sure whether this is a bug or feature. I was trying figure out why certain apps have unaligned loads/stores when tile size is a multiple of burst size. And it turns out to be the type conversion on loop indices mess up constant propagation in spatial.

For example in GEMM_Blocked,

a_sram load a_dram(ii+i, kk::kk.to[Index]+tileSize)

is a unaligned load while

a_sram load a_dram(ii+i, kk::kk+tileSize)

is a aligned load. because requestLength.s in DRAMTransfersInternal is not statically known. I would assume loop bound is already of type Index so .to[Index] effectively should be a no op?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

3 participants