Page MenuHomePhabricator

tungld (Tung D. Le)
User

Projects

User does not belong to any projects.

User Details

User Since
Jan 6 2020, 10:36 PM (70 w, 6 d)

Recent Activity

Feb 24 2021

tungld added a comment to D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.

Just minor comments.

Done. Thanks!

Feb 24 2021, 7:09 PM · Restricted Project
tungld updated the diff for D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.

Edit lit tests according to @dcaballe's comments.

Feb 24 2021, 7:08 PM · Restricted Project
tungld added a comment to D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.

@dcaballe @bondhugula any further comments? Thanks!

Feb 24 2021, 4:25 PM · Restricted Project
tungld accepted D97347: [mlir] Check 'iter_args' in 'isLoopParallel' utility.

LGTM! Thanks!

Feb 24 2021, 4:18 PM · Restricted Project

Feb 23 2021

tungld added a comment to D97347: [mlir] Check 'iter_args' in 'isLoopParallel' utility.

Hi Diego,

Feb 23 2021, 6:12 PM · Restricted Project
tungld added a comment to D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.

@tungld could you please rebase and fix a conflict due to another revision that updated fusion?

Feb 23 2021, 4:49 PM · Restricted Project
tungld updated the diff for D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.

Rebase and fix a conflict

Feb 23 2021, 4:47 PM · Restricted Project
tungld added a comment to D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.

Hi Uday and Diego,

Feb 23 2021, 4:50 AM · Restricted Project
tungld updated the summary of D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.
Feb 23 2021, 4:39 AM · Restricted Project
tungld updated the diff for D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.

Edit comments and lit tests

Feb 23 2021, 4:15 AM · Restricted Project

Feb 22 2021

tungld added a comment to D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.

I moved the check of defining ops into getFusedLoopNestInsertionPoint and prevented loop nests with values from being fused. Also added TODO for loop nests with values. Thanks!

Feb 22 2021, 5:24 AM · Restricted Project
tungld updated the diff for D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.

Move the check into getFusedLoopNestInsertionPoint and prevent fusing loop nests that return values

Feb 22 2021, 5:18 AM · Restricted Project
tungld added a comment to D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.

We should prevent loops with iter_args to be fused

Hi Diego, do you prefer to have it in this patch? I could do it by simply checking the source and dest affine.for, if one of them uses iter_args (or returns a SSA value), we prevent them to be fused.

Feb 22 2021, 12:47 AM · Restricted Project
tungld added a comment to D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.

However, the following code would still fail after the patch, right @tungld?

affine.for %arg2 = 0 to 10 {
  %2 = affine.load %arg1[] : memref<f32>
  affine.store %2, %arg0[%arg2] : memref<10xf32>
}
%0 = affine.load %arg1[] : memref<f32>
%1 = addf %0, %0 : f32
affine.for %arg2 = 0 to 10 {
  %2 = affine.load %arg0[%arg2] : memref<10xf32>
  %3 = divf %1, %2 : f32
}

It worked because we had load in the first loop which has no write-read dependence to %0 = affine.load %arg1[] : memref<f32>. I got this output using this patch:

%0 = affine.load %arg1[] : memref<f32>
%1 = addf %0, %0 : f32
affine.for %arg2 = 0 to 10 {
  %2 = affine.load %arg1[] : memref<f32>
  affine.store %2, %arg0[%arg2] : memref<10xf32>
  %3 = affine.load %arg0[%arg2] : memref<10xf32>
  %4 = divf %1, %3 : f32
}
Feb 22 2021, 12:30 AM · Restricted Project

Feb 21 2021

tungld added a comment to D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.

Thanks for your comments! I just updated the patch.

Feb 21 2021, 5:49 PM · Restricted Project
tungld updated the diff for D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.

Reflect reviewers' comments

Feb 21 2021, 5:25 PM · Restricted Project

Feb 19 2021

tungld updated the diff for D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.

Check causal dependence

Feb 19 2021, 5:07 AM · Restricted Project
tungld updated the summary of D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.
Feb 19 2021, 1:15 AM · Restricted Project
tungld updated the diff for D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.

Clean the code

Feb 19 2021, 1:08 AM · Restricted Project

Feb 18 2021

tungld updated the diff for D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.

Remove a redundant method

Feb 18 2021, 10:58 PM · Restricted Project
tungld updated the summary of D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.
Feb 18 2021, 9:03 PM · Restricted Project
tungld added reviewers for D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops: dcaballe, andydavis1.
Feb 18 2021, 9:03 PM · Restricted Project
tungld requested review of D97030: [MLIR][affine-loop-fusion] Handle defining ops between the source and dest loops.
Feb 18 2021, 8:55 PM · Restricted Project

Feb 5 2021

tungld added a comment to D95668: [MLIR] [affine-loop-fusion] Fix a bug about non-result ops in affine-loop-fusion.

Thank you! Please help me to land it. My "name (email)" : "Tung D. Le (tung@jp.ibm.com)".

Feb 5 2021, 3:16 AM · Restricted Project

Feb 4 2021

tungld added inline comments to D95668: [MLIR] [affine-loop-fusion] Fix a bug about non-result ops in affine-loop-fusion.
Feb 4 2021, 5:09 PM · Restricted Project

Feb 2 2021

tungld added a comment to D95668: [MLIR] [affine-loop-fusion] Fix a bug about non-result ops in affine-loop-fusion.

@bondhugula any additional modification needed? thanks!

Feb 2 2021, 7:20 PM · Restricted Project

Feb 1 2021

tungld updated the diff for D95668: [MLIR] [affine-loop-fusion] Fix a bug about non-result ops in affine-loop-fusion.

Change the lit test name

Feb 1 2021, 12:56 AM · Restricted Project

Jan 31 2021

tungld updated the diff for D95668: [MLIR] [affine-loop-fusion] Fix a bug about non-result ops in affine-loop-fusion.

Readd the lit test into the new revision

Jan 31 2021, 10:15 PM · Restricted Project
tungld added a comment to D95668: [MLIR] [affine-loop-fusion] Fix a bug about non-result ops in affine-loop-fusion.

@bondhugula Thank you for your comments! I updated the patch.

Jan 31 2021, 5:59 PM · Restricted Project
tungld updated the diff for D95668: [MLIR] [affine-loop-fusion] Fix a bug about non-result ops in affine-loop-fusion.

Use MemWrite side effect to precisely capture the situation.

Jan 31 2021, 5:53 PM · Restricted Project

Jan 29 2021

tungld added a reviewer for D95668: [MLIR] [affine-loop-fusion] Fix a bug about non-result ops in affine-loop-fusion: bondhugula.
Jan 29 2021, 11:06 PM · Restricted Project

Jan 28 2021

tungld retitled D95668: [MLIR] [affine-loop-fusion] Fix a bug about non-result ops in affine-loop-fusion from This patch fixes the following bug when calling --affine-loop-fusion to [MLIR] [affine-loop-fusion] Fix a bug about non-result ops in affine-loop-fusion.
Jan 28 2021, 11:23 PM · Restricted Project
tungld requested review of D95668: [MLIR] [affine-loop-fusion] Fix a bug about non-result ops in affine-loop-fusion.
Jan 28 2021, 11:21 PM · Restricted Project

Jun 24 2020

tungld added a comment to D82158: [MLIR][Affine-loop-fusion] Fix a bug in affine-loop-fusion pass when there are non-affine operations.

Could you let me know what "name <email>" info you want on the commit?

Please use "Tung D. Le <tung@jp.ibm.com>". Thanks!

Jun 24 2020, 5:56 PM · Restricted Project

Jun 23 2020

tungld added a comment to D82158: [MLIR][Affine-loop-fusion] Fix a bug in affine-loop-fusion pass when there are non-affine operations.

@bondhugula it seems I don't have permission to push a commit. Could you please help me to land this patch? Many thanks!

Jun 23 2020, 9:35 PM · Restricted Project
tungld updated the diff for D82158: [MLIR][Affine-loop-fusion] Fix a bug in affine-loop-fusion pass when there are non-affine operations.

Thanks Uday! I updated the code based on your comments.

Jun 23 2020, 6:21 PM · Restricted Project

Jun 21 2020

tungld updated the diff for D82158: [MLIR][Affine-loop-fusion] Fix a bug in affine-loop-fusion pass when there are non-affine operations.

Add unit tests.

Jun 21 2020, 10:13 PM · Restricted Project
tungld added a comment to D82158: [MLIR][Affine-loop-fusion] Fix a bug in affine-loop-fusion pass when there are non-affine operations.

@bondhugula Thank you for your comments! I updated the code based on your comments.

Jun 21 2020, 8:06 PM · Restricted Project
tungld updated the diff for D82158: [MLIR][Affine-loop-fusion] Fix a bug in affine-loop-fusion pass when there are non-affine operations.

Update the code according to Uday Bondhugula's comments.

Jun 21 2020, 7:41 PM · Restricted Project

Jun 19 2020

tungld updated the diff for D82158: [MLIR][Affine-loop-fusion] Fix a bug in affine-loop-fusion pass when there are non-affine operations.

Add missing changes for mlir/lib/Transforms/LoopFusion.cpp

Jun 19 2020, 2:07 AM · Restricted Project
tungld created D82158: [MLIR][Affine-loop-fusion] Fix a bug in affine-loop-fusion pass when there are non-affine operations.
Jun 19 2020, 1:34 AM · Restricted Project