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

Index Tree Fusion Does Not Work for MTTKRP #35

Open
johnpzh opened this issue Oct 11, 2023 · 1 comment
Open

Index Tree Fusion Does Not Work for MTTKRP #35

johnpzh opened this issue Oct 11, 2023 · 1 comment

Comments

@johnpzh
Copy link
Collaborator

johnpzh commented Oct 11, 2023

The current fusion implementation of the Index Tree dialect does not work for MTTKRP. MTTKRP's Index Tree dialect after fusion does not change and still has 2 roots (itree nodes).

The correct fused index tree should only have 1 root and 3 compute nodes.

// MTTKRP: 
Aij = Bikl * Clj * Dkj
// -> Current index tree has 2 roots and each one has 1 compute node
Tikj = Bikl * Clj
Aij = Tikj * Dkj
// -> Fused index tree should have 1 root with 3 compute nodes
Tj = 0
Tj = Bikl * Clj
Aij = Tj * Dkj
@gkestor
Copy link
Contributor

gkestor commented Oct 16, 2023

We need to a cost model to enable fusion. The preliminary experiments demonstrate that fusion of dense MTTKRP is not efficient due to low data locality.

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

No branches or pull requests

2 participants