Page MenuHomePhabricator

nandini12396 (Nandini Singhal)
User

Projects

User does not belong to any projects.

User Details

User Since
Feb 27 2017, 7:29 AM (219 w, 1 d)

Recent Activity

Dec 9 2017

nandini12396 updated the diff for D36056: [Polly] Pass around Domain of BB to getPwAff(). NFC..

@Meinersbur : I dont know what to do with the Context in buildConditionSets(). Could you please suggest?

Dec 9 2017, 9:37 AM
nandini12396 updated the diff for D37337: [Polly] Split statements on encountering store instructions..
Dec 9 2017, 5:33 AM · Restricted Project
nandini12396 created D41047: [Polly] Fix typo. NFC.
Dec 9 2017, 5:32 AM

Oct 4 2017

nandini12396 updated the diff for D37337: [Polly] Split statements on encountering store instructions..

rebase

Oct 4 2017, 10:03 AM · Restricted Project
nandini12396 added a comment to D37337: [Polly] Split statements on encountering store instructions..

@Meinersbur : After your commit rL314665, these tests no longer fail.

Oct 4 2017, 9:52 AM · Restricted Project

Sep 29 2017

nandini12396 added a comment to D38403: [Polly][ScopBuilder] Introduce -polly-stmt-granularity=scalar-indep option..

ForwardOpTree cannot forward everything, only 'speculatable' instructions and loads that are known to not have changed.

Sep 29 2017, 9:26 AM · Restricted Project
nandini12396 added a comment to D38403: [Polly][ScopBuilder] Introduce -polly-stmt-granularity=scalar-indep option..

@Meinersbur : A quick q. Even if the split introduced new scalar dependences, wouldnt forward op tree pass take care of it?

Sep 29 2017, 7:35 AM · Restricted Project

Sep 28 2017

nandini12396 added a comment to D37337: [Polly] Split statements on encountering store instructions..

@Meinersbur: Oh I see that. Thank you, I will try that now.

Sep 28 2017, 5:14 AM · Restricted Project

Sep 27 2017

nandini12396 updated the diff for D38322: [Polly] Fix typo. NFC..
Sep 27 2017, 9:54 AM · Restricted Project
nandini12396 created D38322: [Polly] Fix typo. NFC..
Sep 27 2017, 9:50 AM · Restricted Project
nandini12396 updated the diff for D37337: [Polly] Split statements on encountering store instructions..
Sep 27 2017, 9:06 AM · Restricted Project
nandini12396 updated the diff for D37982: [Polly][WIP] Create polly statement for every instruction..
Sep 27 2017, 9:06 AM

Sep 18 2017

nandini12396 added a comment to D37982: [Polly][WIP] Create polly statement for every instruction..

[todo]: two different assertion failures: Assertion PhysUse.getKind() == VirtUse.getKind() for Simplify/redundant_region_scalar.ll and Assertion ArrayAccess && "No array access found for instruction!" for ScopInfo/zero_ext_of_truncate_2.ll.

Sep 18 2017, 11:00 AM
nandini12396 created D37982: [Polly][WIP] Create polly statement for every instruction..
Sep 18 2017, 10:39 AM
nandini12396 added a comment to D37337: [Polly] Split statements on encountering store instructions..

but, those test-case fail when we add -polly-stmt-granularity=store still. Do we need to fix them?

Sep 18 2017, 10:17 AM · Restricted Project
nandini12396 updated the diff for D37337: [Polly] Split statements on encountering store instructions..

Hello Sir,

Sep 18 2017, 10:12 AM · Restricted Project

Sep 2 2017

nandini12396 added a comment to D37337: [Polly] Split statements on encountering store instructions..

Hello Sir,

no need to change tests. I would just run this once over polybench to see if anything fails.

I ran LNT on the llvm test-suite with cflags -O3 -mllvm -polly -mllvm -polly-process-unprofitable and there are no failures.
However, there are some assertion fails in polly/tests/ itself. One such example is test/Isl/CodeGen/non-affine-dominance-generated-entering.ll.
I will try to understand this and let you know.

Sep 2 2017, 6:12 AM · Restricted Project

Sep 1 2017

nandini12396 updated the diff for D37337: [Polly] Split statements on encountering store instructions..

@Meinersbur : Should I change the checks in all the failing tests? But I think they may change again after the way of split is modified.

Sep 1 2017, 3:47 AM · Restricted Project

Aug 31 2017

nandini12396 updated the diff for D37147: [Polly] Fix Memory Access of failing tests..

I apologise. It somehow got modified.

Aug 31 2017, 10:22 AM · Restricted Project
nandini12396 created D37337: [Polly] Split statements on encountering store instructions..
Aug 31 2017, 8:02 AM · Restricted Project
nandini12396 updated the diff for D37147: [Polly] Fix Memory Access of failing tests..

rebase

Aug 31 2017, 7:49 AM · Restricted Project

Aug 30 2017

nandini12396 updated the diff for D37147: [Polly] Fix Memory Access of failing tests..
Aug 30 2017, 6:50 AM · Restricted Project
nandini12396 added a comment to D37147: [Polly] Fix Memory Access of failing tests..

oh yes. Thank you very much for catching this! :-)

Aug 30 2017, 4:50 AM · Restricted Project

Aug 29 2017

nandini12396 updated the diff for D37147: [Polly] Fix Memory Access of failing tests..

Passes test/ScopInfo/stmt_split_scalar_dependence.ll.

Aug 29 2017, 11:44 PM · Restricted Project
nandini12396 updated the diff for D36402: [Polly] Introduce metadata for splitting of scop statement..

sorry, removed unused variable.

Aug 29 2017, 8:52 AM · Restricted Project

Aug 26 2017

nandini12396 added a comment to D37147: [Polly] Fix Memory Access of failing tests..

@Meinersbur : there is something absurd.. I added the following just before buildSchedule:

diff --git a/lib/Analysis/ScopBuilder.cpp b/lib/Analysis/ScopBuilder.cpp
index 8bad622..a0d5d59 100644
--- a/lib/Analysis/ScopBuilder.cpp
+++ b/lib/Analysis/ScopBuilder.cpp
@@ -1051,6 +1051,13 @@ void ScopBuilder::buildScop(Region &R, AssumptionCache &AC) {
     return;
   }
Aug 26 2017, 3:49 AM · Restricted Project

Aug 25 2017

nandini12396 created D37147: [Polly] Fix Memory Access of failing tests..
Aug 25 2017, 8:26 AM · Restricted Project
nandini12396 updated the diff for D36402: [Polly] Introduce metadata for splitting of scop statement..

addressed comments.

Aug 25 2017, 8:26 AM · Restricted Project

Aug 23 2017

nandini12396 updated the diff for D36402: [Polly] Introduce metadata for splitting of scop statement..

forgot to capitalise

Aug 23 2017, 6:34 AM · Restricted Project
nandini12396 updated the diff for D36402: [Polly] Introduce metadata for splitting of scop statement..
Aug 23 2017, 6:25 AM · Restricted Project
nandini12396 updated the diff for D36402: [Polly] Introduce metadata for splitting of scop statement..

Addressed @Meinersbur's comments.

Aug 23 2017, 6:21 AM · Restricted Project

Aug 22 2017

nandini12396 added inline comments to D36402: [Polly] Introduce metadata for splitting of scop statement..
Aug 22 2017, 7:45 AM · Restricted Project
nandini12396 updated the diff for D36402: [Polly] Introduce metadata for splitting of scop statement..

missed out 2 in prev diff.

Aug 22 2017, 5:16 AM · Restricted Project
nandini12396 updated the diff for D36402: [Polly] Introduce metadata for splitting of scop statement..
  • add automatically working test cases.
Aug 22 2017, 4:53 AM · Restricted Project

Aug 21 2017

nandini12396 updated the diff for D36402: [Polly] Introduce metadata for splitting of scop statement..

[todo] fix naming

Aug 21 2017, 11:03 PM · Restricted Project

Aug 16 2017

nandini12396 added a comment to D36402: [Polly] Introduce metadata for splitting of scop statement..

Hi Sir,

Aug 16 2017, 6:22 AM · Restricted Project
nandini12396 added a comment to D36402: [Polly] Introduce metadata for splitting of scop statement..

From just comparing the output, it seems that there are some memory accesses which are not getting identified by this change. This one I am very suprised about and have no clue.
Regarding the Assertion `SAI && "No ScopArrayInfo available for this base pointer"' fail, I am trying to add assert statements to check if the statements match.

Aug 16 2017, 3:28 AM · Restricted Project
nandini12396 added a comment to D36402: [Polly] Introduce metadata for splitting of scop statement..

@Meinersbur : Please suggest what I can to do to fix these failures?

Aug 16 2017, 2:43 AM · Restricted Project

Aug 15 2017

nandini12396 updated the diff for D36402: [Polly] Introduce metadata for splitting of scop statement..
Aug 15 2017, 7:46 PM · Restricted Project
nandini12396 updated the diff for D36402: [Polly] Introduce metadata for splitting of scop statement..

use correct check.

Aug 15 2017, 7:00 PM · Restricted Project
nandini12396 created D36760: [Polly] Fix typo in comment. NFC..
Aug 15 2017, 11:20 AM
nandini12396 updated the diff for D36402: [Polly] Introduce metadata for splitting of scop statement..
  • gives correct memory access for statement.ll but various tests fail. Trying to fix them.
Aug 15 2017, 10:50 AM · Restricted Project

Aug 13 2017

nandini12396 created D36660: [Polly] Move ScopStmt::getSchedule to islpp. NFC..
Aug 13 2017, 10:49 PM
nandini12396 created D36659: [Polly] Move Scop::restrictDomains to islpp. NFC..
Aug 13 2017, 10:24 PM

Aug 9 2017

nandini12396 updated the diff for D35663: [Polly] Remove dependency of `Scop::getStmtFor(Inst)` on `getStmtFor(BB)`. [NFC]..

split if condition.

Aug 9 2017, 5:09 AM · Restricted Project

Aug 8 2017

nandini12396 added a comment to D36402: [Polly] Introduce metadata for splitting of scop statement..

[todo] add codegen testcase.

Aug 8 2017, 3:11 PM · Restricted Project
nandini12396 updated the summary of D36402: [Polly] Introduce metadata for splitting of scop statement..
Aug 8 2017, 3:01 PM · Restricted Project
nandini12396 updated the diff for D36402: [Polly] Introduce metadata for splitting of scop statement..
Aug 8 2017, 3:00 PM · Restricted Project
nandini12396 updated the diff for D35663: [Polly] Remove dependency of `Scop::getStmtFor(Inst)` on `getStmtFor(BB)`. [NFC]..

Address comments

Aug 8 2017, 2:34 PM · Restricted Project
nandini12396 added a comment to D36402: [Polly] Introduce metadata for splitting of scop statement..

oh yes. thank you!

Aug 8 2017, 5:35 AM · Restricted Project
nandini12396 added a comment to D36402: [Polly] Introduce metadata for splitting of scop statement..

ok. The issue seems to be that the IR it is reading is wrong. It expects some other arguments probably. I will look into it.

Aug 8 2017, 12:01 AM · Restricted Project

Aug 7 2017

nandini12396 added a comment to D36402: [Polly] Introduce metadata for splitting of scop statement..

@Meinersbur : Ping.

Aug 7 2017, 11:40 PM · Restricted Project
nandini12396 created D36402: [Polly] Introduce metadata for splitting of scop statement..
Aug 7 2017, 8:12 AM · Restricted Project

Aug 6 2017

nandini12396 updated the diff for D35663: [Polly] Remove dependency of `Scop::getStmtFor(Inst)` on `getStmtFor(BB)`. [NFC]..

Rebase & fix test-case failure as suggested.

Aug 6 2017, 9:17 PM · Restricted Project

Aug 5 2017

nandini12396 created D36356: [Polly] Fix typo. NFC..
Aug 5 2017, 7:59 AM

Aug 3 2017

nandini12396 created D36268: [Polly] [VirtualInstruction] Avoid use of getStmtFor(BB). NFC..
Aug 3 2017, 7:34 AM · Restricted Project
nandini12396 updated the diff for D35663: [Polly] Remove dependency of `Scop::getStmtFor(Inst)` on `getStmtFor(BB)`. [NFC]..

@Meinersbur : This change leads to failure of ForwardOpTree/noforward_synthesizable_unknownit.ll because getStmtFor synthesizable instruction returns nullptr, which makes DefStmt null in line 227.

Aug 3 2017, 4:52 AM · Restricted Project

Aug 1 2017

nandini12396 added a comment to D35460: [Polly] [WIP] Move Scop::DomainMap to a local scope.

Rebased over D36056.

Aug 1 2017, 11:46 AM · Restricted Project
nandini12396 updated the diff for D35460: [Polly] [WIP] Move Scop::DomainMap to a local scope.
Aug 1 2017, 11:44 AM · Restricted Project
nandini12396 added a comment to D36056: [Polly] Pass around Domain of BB to getPwAff(). NFC..

Thank you for your comments and sorry for being late on this.
I addressed your remark but some tests still fail. I have no idea why? Could you please have a look.

Aug 1 2017, 10:04 AM
nandini12396 updated the diff for D36056: [Polly] Pass around Domain of BB to getPwAff(). NFC..
Aug 1 2017, 10:02 AM

Jul 30 2017

nandini12396 created D36056: [Polly] Pass around Domain of BB to getPwAff(). NFC..
Jul 30 2017, 1:10 AM

Jul 26 2017

nandini12396 updated the diff for D35663: [Polly] Remove dependency of `Scop::getStmtFor(Inst)` on `getStmtFor(BB)`. [NFC]..
Jul 26 2017, 10:29 AM · Restricted Project
nandini12396 updated the diff for D35663: [Polly] Remove dependency of `Scop::getStmtFor(Inst)` on `getStmtFor(BB)`. [NFC]..
Jul 26 2017, 10:28 AM · Restricted Project

Jul 25 2017

nandini12396 updated the diff for D35691: [Polly] [ScopInfo] Avoid use of getStmtFor(BB). NFC..

Add assertion.

Jul 25 2017, 11:46 PM · Restricted Project
nandini12396 updated the diff for D35691: [Polly] [ScopInfo] Avoid use of getStmtFor(BB). NFC..

Oh, I overlooked. Since we will be freeing the domain (take), we need a reference counted copy! Thank you.

Jul 25 2017, 10:14 AM · Restricted Project
nandini12396 created D35838: Rename ScopStmt::contains(BB) to represents(BB). NFC..
Jul 25 2017, 7:17 AM · Restricted Project
nandini12396 added inline comments to D35663: [Polly] Remove dependency of `Scop::getStmtFor(Inst)` on `getStmtFor(BB)`. [NFC]..
Jul 25 2017, 6:11 AM · Restricted Project
nandini12396 added inline comments to D35663: [Polly] Remove dependency of `Scop::getStmtFor(Inst)` on `getStmtFor(BB)`. [NFC]..
Jul 25 2017, 6:01 AM · Restricted Project
nandini12396 added inline comments to D35663: [Polly] Remove dependency of `Scop::getStmtFor(Inst)` on `getStmtFor(BB)`. [NFC]..
Jul 25 2017, 5:34 AM · Restricted Project
nandini12396 updated the diff for D35691: [Polly] [ScopInfo] Avoid use of getStmtFor(BB). NFC..

@Meinersbur : I got the basic block of the call instruction, if it belongs to the scop and the region's entry block if not. Im really not sure what is the reason of the failure of these 5 tests.

Jul 25 2017, 5:07 AM · Restricted Project

Jul 24 2017

nandini12396 added a comment to D35754: [ForwardOpTree] Introduce the -polly-optree pass..

Could you please explain what is the meaning of 'forwarding' of operand trees?

Suppose you have two statements:

StmtA:
  %add = fadd double 21.0,21.0
  bl label %StmtB

StmtB:
  store double %add, double*A

This would induce a scalar dependency from %StmtA to %StmtB. To avoid, we can recompute %add in %StmtB instead:

StmtA:
  %add = fadd double 21.0,21.0
  bl label %StmtB

StmtB:
  %add_ = fadd double 21.0,21.0
  store double %add_, double*A

This "forwards" %add (and its operand tree/DAG) to StmtB.

Thank you. This is really nice idea. Do you have some cost modeling for when to allow this forwarding?

I am open to naming it differently. I considered "reverse code motion".

Jul 24 2017, 6:04 AM · Restricted Project

Jul 23 2017

nandini12396 added a comment to D35754: [ForwardOpTree] Introduce the -polly-optree pass..

Could you please explain what is the meaning of 'forwarding' of operand trees?

Jul 23 2017, 10:19 PM · Restricted Project

Jul 20 2017

nandini12396 added a comment to D35691: [Polly] [ScopInfo] Avoid use of getStmtFor(BB). NFC..

Hello Sir,

Jul 20 2017, 10:49 AM · Restricted Project
nandini12396 created D35691: [Polly] [ScopInfo] Avoid use of getStmtFor(BB). NFC..
Jul 20 2017, 10:49 AM · Restricted Project
nandini12396 updated the diff for D35663: [Polly] Remove dependency of `Scop::getStmtFor(Inst)` on `getStmtFor(BB)`. [NFC]..

Addressed comments.

Jul 20 2017, 8:25 AM · Restricted Project
nandini12396 updated the diff for D35665: [Polly] Remove dependency of `Scop::getLastStmtFor(BB)` on `getStmtFor(BB)`. [NFC]..

Addressed comments.

Jul 20 2017, 8:25 AM · Restricted Project
nandini12396 added a comment to D35679: [Polly] Get a list of statements for a Region Node. [NFC].

Rebased over D35665.

Jul 20 2017, 5:31 AM · Restricted Project
nandini12396 created D35679: [Polly] Get a list of statements for a Region Node. [NFC].
Jul 20 2017, 5:28 AM · Restricted Project
nandini12396 created D35665: [Polly] Remove dependency of `Scop::getLastStmtFor(BB)` on `getStmtFor(BB)`. [NFC]..
Jul 20 2017, 1:26 AM · Restricted Project
nandini12396 updated the diff for D35610: [Polly] Avoid use of `getStmtFor(BB)` in ScopBuilder. [NFC].

Addressed comments as suggested by Michael Sir.

Jul 20 2017, 1:01 AM · Restricted Project
nandini12396 added a comment to D35610: [Polly] Avoid use of `getStmtFor(BB)` in ScopBuilder. [NFC].

How did you upload the diff? arc patch could not apply it, had to do it manually.

Oh, I have no idea why it didnt work. I used git diff as usual.

Please don't forget a summary.

Sorry for not remarking earlier: This is actually not going to work. The function tries to iterate over all instructions in the ScoP. For each instruction, it needs to know which statement it is in. when done like here, it will run over the instruction of a BasicBlock multiple times, once for each ScopStmt the BasicBlock has, even if the instruction is not in that ScopStmt. The latter cannot work well.

Oh yes. I didnt notice the inner loop at all. Thank you for pointing it out.

What we rather need is to determine which stmt an instruction is in:

for (auto *BB : S->getRegion().blocks()) {
  for (auto &Inst : *BB) {
    auto Stmt = getStmtFor(Inst);
    if (!Stmt)
      continue;
    ...
  }
}
Jul 20 2017, 12:57 AM · Restricted Project
nandini12396 created D35663: [Polly] Remove dependency of `Scop::getStmtFor(Inst)` on `getStmtFor(BB)`. [NFC]..
Jul 20 2017, 12:57 AM · Restricted Project

Jul 19 2017

nandini12396 updated the diff for D35610: [Polly] Avoid use of `getStmtFor(BB)` in ScopBuilder. [NFC].

fixed a typo

Jul 19 2017, 8:39 AM · Restricted Project
nandini12396 updated the diff for D35610: [Polly] Avoid use of `getStmtFor(BB)` in ScopBuilder. [NFC].

@Meinersbur : thank you for your comments. This worked.

Jul 19 2017, 7:31 AM · Restricted Project

Jul 18 2017

nandini12396 created D35610: [Polly] Avoid use of `getStmtFor(BB)` in ScopBuilder. [NFC].
Jul 18 2017, 10:50 PM · Restricted Project
nandini12396 added inline comments to rL308149: Fix typo in comment [NFC].
Jul 18 2017, 8:01 AM
nandini12396 added inline comments to rL308149: Fix typo in comment [NFC].
Jul 18 2017, 5:00 AM
nandini12396 added inline comments to rL308152: ScopInfo: Remove not-in-DomainMap statements in separate function.
Jul 18 2017, 4:23 AM
nandini12396 added inline comments to rL308152: ScopInfo: Remove not-in-DomainMap statements in separate function.
Jul 18 2017, 4:10 AM

Jul 16 2017

nandini12396 added a comment to D35460: [Polly] [WIP] Move Scop::DomainMap to a local scope.

Hello Sir,

Jul 16 2017, 7:55 AM · Restricted Project
nandini12396 created D35460: [Polly] [WIP] Move Scop::DomainMap to a local scope.
Jul 16 2017, 7:53 AM · Restricted Project
nandini12396 created D35459: [Polly] Fix a typo.
Jul 16 2017, 5:34 AM · Restricted Project

Jul 15 2017

nandini12396 created D35457: [Polly] [Docs] Update islpp documentation.
Jul 15 2017, 11:52 AM · Restricted Project
nandini12396 updated the diff for D35300: [Polly] Avoid use of `getStmtFor(BB)` in PolyhedralInfo. NFC.
Jul 15 2017, 9:37 AM · Restricted Project
nandini12396 created D35453: [Polly] Translate Scop::DomainMap to islpp.
Jul 15 2017, 5:32 AM · Restricted Project
nandini12396 added a comment to D35308: [Polly] Use Isl c++ for InvalidDomainMap.

OK. Then we should highlight this in *bold* at an obvious place of our documentation.

Jul 15 2017, 2:38 AM · Restricted Project
nandini12396 added a comment to D35308: [Polly] Use Isl c++ for InvalidDomainMap.

OK, can you share (and maybe document) what you misunderstood? Others likely make similar mistakes, so it is good to have this documented and explained.

Jul 15 2017, 2:30 AM · Restricted Project
nandini12396 added a comment to D35308: [Polly] Use Isl c++ for InvalidDomainMap.

Hi Nandini,

this works now. Thanks a lot! I committed the change for you!

There are two good directions to proceed:

  1. Take other (small) chunks of code and translate them to C++
  2. Copy/Import and Improve the C++ bindings documentation that you referenced here and add it into our SPINX documentation.
Jul 15 2017, 2:21 AM · Restricted Project
nandini12396 updated the diff for D35308: [Polly] Use Isl c++ for InvalidDomainMap.

Addressed mistakes, as suggested by Tobias Sir.

Jul 15 2017, 1:51 AM · Restricted Project