bollu (Siddharth)
User

Projects

User does not belong to any projects.

User Details

User Since
Feb 20 2017, 1:20 PM (22 w, 1 h)

Recent Activity

Today

bollu abandoned D35060: [Polly] [PPCGCodegen] [Crash] [WIP] PPCG + invariant load hoisting.

as @grosser pointed out, this is fixed by r308187. Thanks!

Mon, Jul 24, 5:48 AM
bollu added inline comments to D35795: [Polly] [PPCGCodeGeneration] Skip arrays with empty extent..
Mon, Jul 24, 5:45 AM
bollu abandoned D35721: [Polly] [PPCGCodeGeneration] Handle 1-d pointers to scalars in array size..

Abandoned in favour of D35795 which actually solves the problem.

Mon, Jul 24, 5:42 AM
bollu committed rL308875: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform regex scop name….
[Polly] [NFC] [ScopDetection] Make `polly-only-func` perform regex scop name…
Mon, Jul 24, 5:41 AM
bollu closed D35728: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform regex scop name match. by committing rL308875: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform regex scop name….
Mon, Jul 24, 5:41 AM
bollu added inline comments to D35795: [Polly] [PPCGCodeGeneration] Skip arrays with empty extent..
Mon, Jul 24, 5:25 AM
bollu created D35795: [Polly] [PPCGCodeGeneration] Skip arrays with empty extent..
Mon, Jul 24, 5:23 AM
bollu updated the diff for D35728: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform regex scop name match..
  • [NFC wrt patch] removed return false because we call a noreturn function anyway
Mon, Jul 24, 4:43 AM
bollu updated the diff for D35728: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform regex scop name match..
  • [NFC wrt patch] change to use report_fatal_error
Mon, Jul 24, 4:36 AM
bollu added inline comments to D35703: [GPGPU] Add support for NVIDIA libdevice.
Mon, Jul 24, 3:18 AM · Restricted Project
bollu added inline comments to D35754: [ForwardOpTree] Introduce the -polly-optree pass..
Mon, Jul 24, 2:28 AM · Restricted Project
bollu committed rL308870: Convert GPUNodeBuilder::getArraySize to islcpp..
Convert GPUNodeBuilder::getArraySize to islcpp.
Mon, Jul 24, 2:09 AM
bollu closed D35771: [NFC] [Polly] Convert GPUNodeBuilder::getArraySize to islcpp. by committing rL308870: Convert GPUNodeBuilder::getArraySize to islcpp..
Mon, Jul 24, 2:09 AM
bollu added a comment to D35771: [NFC] [Polly] Convert GPUNodeBuilder::getArraySize to islcpp..
Mon, Jul 24, 2:01 AM
bollu updated the diff for D35771: [NFC] [Polly] Convert GPUNodeBuilder::getArraySize to islcpp..
  • [NFC wrt patch] copy Array->bound, don't acquire and release
Mon, Jul 24, 1:52 AM
bollu added a comment to D35771: [NFC] [Polly] Convert GPUNodeBuilder::getArraySize to islcpp..

@grosser I do not believe so, release sets the ptr within the isl::multi_pw_aff to nullptr. So, the destructor will not free anything.

Mon, Jul 24, 1:49 AM
bollu reopened D35771: [NFC] [Polly] Convert GPUNodeBuilder::getArraySize to islcpp..
Mon, Jul 24, 1:44 AM
bollu added a comment to D35771: [NFC] [Polly] Convert GPUNodeBuilder::getArraySize to islcpp..

The commit r308869 was incorrectly labeled - it was supposed to close D35770. Writing this here as documentation.

Mon, Jul 24, 1:44 AM
bollu closed D35770: [NFC] [Polly] Move PPCGCodeGeneration::pollyBuildAstExprForStmt to isl++..

This was closed by r308869. Unfortunately, the commit was mis-labeled, and wound up closing D35771

Mon, Jul 24, 1:43 AM
bollu committed rL308869: [NFC] Move PPCGCodeGeneration::pollyBuildAstExprForStmt to isl++..
[NFC] Move PPCGCodeGeneration::pollyBuildAstExprForStmt to isl++.
Mon, Jul 24, 1:35 AM
bollu closed D35771: [NFC] [Polly] Convert GPUNodeBuilder::getArraySize to islcpp. by committing rL308869: [NFC] Move PPCGCodeGeneration::pollyBuildAstExprForStmt to isl++..
Mon, Jul 24, 1:35 AM
bollu added a comment to D35728: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform regex scop name match..

@grosser - Then is every use of llvm_unreachable a bug?

Mon, Jul 24, 1:33 AM
bollu added a comment to D35728: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform regex scop name match..

@Meinersbur: I would like an LGTM on your part to be comfortable with upstreaming this.

Mon, Jul 24, 1:32 AM
bollu updated the diff for D35770: [NFC] [Polly] Move PPCGCodeGeneration::pollyBuildAstExprForStmt to isl++..
  • [NFC wrt patch] copy the isl_multi_pw_aff object rather than acquiring and releasing it.
Mon, Jul 24, 1:30 AM
bollu added inline comments to D35771: [NFC] [Polly] Convert GPUNodeBuilder::getArraySize to islcpp..
Mon, Jul 24, 1:27 AM
bollu added inline comments to D35728: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform regex scop name match..
Mon, Jul 24, 1:24 AM

Yesterday

bollu added a comment to D35721: [Polly] [PPCGCodeGeneration] Handle 1-d pointers to scalars in array size..

@grosser I'm not sure how to build up the correct access union map.

Sun, Jul 23, 7:17 AM
bollu added inline comments to D35728: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform regex scop name match..
Sun, Jul 23, 6:25 AM
bollu created D35771: [NFC] [Polly] Convert GPUNodeBuilder::getArraySize to islcpp..
Sun, Jul 23, 3:29 AM
bollu added a comment to D35770: [NFC] [Polly] Move PPCGCodeGeneration::pollyBuildAstExprForStmt to isl++..

@grosser I'm not entirely sure if this makes it cleaner due to the interfacing with PPCG. I think it's easier to see the transforms that are going on.

Sun, Jul 23, 3:17 AM
bollu created D35770: [NFC] [Polly] Move PPCGCodeGeneration::pollyBuildAstExprForStmt to isl++..
Sun, Jul 23, 3:03 AM
bollu updated the diff for D35728: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform regex scop name match..

[NFC wrt patch] return false indicating failure of regex match if regex did not compile

Sun, Jul 23, 2:27 AM
bollu updated the diff for D35728: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform regex scop name match..
  • [NFC] diff against master.
Sun, Jul 23, 2:27 AM
bollu added inline comments to D35728: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform regex scop name match..
Sun, Jul 23, 1:21 AM

Fri, Jul 21

bollu abandoned D35723: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform exact scop name match..
Fri, Jul 21, 8:17 AM
bollu added a comment to D35723: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform exact scop name match..

Abandoning in favour of allowing regexes to polly-only-func in D35728

Fri, Jul 21, 8:17 AM
bollu created D35728: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform regex scop name match..
Fri, Jul 21, 8:13 AM
bollu committed rL308743: [NFC] [RegisterPasses] Fix typo: To early -> too early..
[NFC] [RegisterPasses] Fix typo: To early -> too early.
Fri, Jul 21, 8:12 AM
bollu added a comment to D35703: [GPGPU] Add support for NVIDIA libdevice.

Is there some way to test this without having libdevice? The tests break on my mac.

Fri, Jul 21, 7:08 AM · Restricted Project
bollu added a reviewer for D35703: [GPGPU] Add support for NVIDIA libdevice: singam-sanjay.
Fri, Jul 21, 7:06 AM · Restricted Project
bollu added a comment to D35723: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform exact scop name match..

@grosser, @Meinersbur - Was the substring match intentional?

Fri, Jul 21, 6:16 AM
bollu retitled D35721: [Polly] [PPCGCodeGeneration] Handle 1-d pointers to scalars in array size. from [PPCGCodeGeneration] Handle 1-d pointers to scalars in array size. to [Polly] [PPCGCodeGeneration] Handle 1-d pointers to scalars in array size..
Fri, Jul 21, 6:12 AM
bollu created D35723: [Polly] [NFC] [ScopDetection] Make `polly-only-func` perform exact scop name match..
Fri, Jul 21, 6:12 AM
bollu created D35721: [Polly] [PPCGCodeGeneration] Handle 1-d pointers to scalars in array size..
Fri, Jul 21, 5:35 AM
bollu committed rL308727: [NFC] [PPCGCodeGeneration] Print `verifyModule` failure to debug stream..
[NFC] [PPCGCodeGeneration] Print `verifyModule` failure to debug stream.
Fri, Jul 21, 4:22 AM
bollu added inline comments to D35630: Remove Debug metadata from copied instruction to prevent Module verification failure.
Fri, Jul 21, 12:58 AM · Restricted Project

Thu, Jul 20

bollu added inline comments to D35703: [GPGPU] Add support for NVIDIA libdevice.
Thu, Jul 20, 3:54 PM · Restricted Project
bollu committed rL308623: [PPCG] [1/3] Bump up PPCG version to 0.07..
[PPCG] [1/3] Bump up PPCG version to 0.07.
Thu, Jul 20, 8:51 AM
bollu committed rL308625: [PPCGCodeGen] [3/3] Update PPCGCodeGen + tests to latest ppcg..
[PPCGCodeGen] [3/3] Update PPCGCodeGen + tests to latest ppcg.
Thu, Jul 20, 8:51 AM
bollu committed rL308624: [PPCG] [2/3] Make polly specific PPCG Changes..
[PPCG] [2/3] Make polly specific PPCG Changes.
Thu, Jul 20, 8:51 AM
bollu closed D35675: [Polly] [PPCG] [1/3] Bump up PPCG version to 0.07. by committing rL308623: [PPCG] [1/3] Bump up PPCG version to 0.07..
Thu, Jul 20, 8:51 AM
bollu accepted D35675: [Polly] [PPCG] [1/3] Bump up PPCG version to 0.07..

closed by r308623

Thu, Jul 20, 8:51 AM
bollu closed D35676: [Polly] [PPCG] [2/3] Collect all changes to `lib/External/*` due to PPCG update..

closed by r308624

Thu, Jul 20, 8:51 AM
bollu added a comment to D35675: [Polly] [PPCG] [1/3] Bump up PPCG version to 0.07..

closed by r308623

Thu, Jul 20, 8:51 AM
bollu closed D35677: [WIP] [Polly] [PPCGCodeGeneration + PPCG] [3/3] Collect changes to PPCGCodeGen because of PPCG upgrade..

closed by r308625

Thu, Jul 20, 8:51 AM
bollu updated the diff for D35677: [WIP] [Polly] [PPCGCodeGeneration + PPCG] [3/3] Collect changes to PPCGCodeGen because of PPCG upgrade..
  • Fix nits.
Thu, Jul 20, 8:40 AM
bollu updated the diff for D35677: [WIP] [Polly] [PPCGCodeGeneration + PPCG] [3/3] Collect changes to PPCGCodeGen because of PPCG upgrade..
  • Diff against latest version of [2/3] of these changes.
Thu, Jul 20, 8:34 AM
bollu updated the diff for D35676: [Polly] [PPCG] [2/3] Collect all changes to `lib/External/*` due to PPCG update..
  • Remove commented code.
Thu, Jul 20, 8:29 AM
bollu updated the diff for D35676: [Polly] [PPCG] [2/3] Collect all changes to `lib/External/*` due to PPCG update..
  • Change spaces to tabs, looks like PPCG uses tabs.
Thu, Jul 20, 8:29 AM
bollu updated the diff for D35676: [Polly] [PPCG] [2/3] Collect all changes to `lib/External/*` due to PPCG update..
  • Update again because SHA hashes changed, leading to an incorrect diff previously.
Thu, Jul 20, 8:22 AM
bollu updated the diff for D35676: [Polly] [PPCG] [2/3] Collect all changes to `lib/External/*` due to PPCG update..
  • diff with stuff moved to [1/3].
Thu, Jul 20, 8:18 AM
bollu updated the diff for D35675: [Polly] [PPCG] [1/3] Bump up PPCG version to 0.07..

Backport some changes from [2/3] to [1/3].

Thu, Jul 20, 8:13 AM
bollu updated the diff for D35677: [WIP] [Polly] [PPCGCodeGeneration + PPCG] [3/3] Collect changes to PPCGCodeGen because of PPCG upgrade..
  • update testcase of non-read-only-scalars
  • move preloadInvariantLoads to before the RTC is generated.
  • [NFC] style fixes
Thu, Jul 20, 8:08 AM
bollu added a comment to D35677: [WIP] [Polly] [PPCGCodeGeneration + PPCG] [3/3] Collect changes to PPCGCodeGen because of PPCG upgrade..

Just to be very sure, I took the .ll file from the testcase and compiled it with the exact commands that we run in the test case.

Thu, Jul 20, 6:31 AM
bollu added a comment to D35677: [WIP] [Polly] [PPCGCodeGeneration + PPCG] [3/3] Collect changes to PPCGCodeGen because of PPCG upgrade..

I compiled the program from non-read-only-scalars.ll and ran in on daint (Piz-daint).

Thu, Jul 20, 5:46 AM
bollu updated the diff for D35677: [WIP] [Polly] [PPCGCodeGeneration + PPCG] [3/3] Collect changes to PPCGCodeGen because of PPCG upgrade..
  • Use init_device and clear_device nodes in the schedule tree.
Thu, Jul 20, 5:24 AM
bollu added a comment to D35677: [WIP] [Polly] [PPCGCodeGeneration + PPCG] [3/3] Collect changes to PPCGCodeGen because of PPCG upgrade..

marked as WIP because the test cases need another look, and the init/clear_device issue is still being discussed.

Thu, Jul 20, 4:38 AM
bollu retitled D35677: [WIP] [Polly] [PPCGCodeGeneration + PPCG] [3/3] Collect changes to PPCGCodeGen because of PPCG upgrade. from [Polly] [PPCGCodeGeneration + PPCG] [3/3] Collect changes to PPCGCodeGen because of PPCG upgrade. to [WIP] [Polly] [PPCGCodeGeneration + PPCG] [3/3] Collect changes to PPCGCodeGen because of PPCG upgrade..
Thu, Jul 20, 4:38 AM
bollu added a comment to D35677: [WIP] [Polly] [PPCGCodeGeneration + PPCG] [3/3] Collect changes to PPCGCodeGen because of PPCG upgrade..

@singam-sanjay: We should move the discussion about init / clear device here.

Thu, Jul 20, 4:38 AM
bollu retitled D35677: [WIP] [Polly] [PPCGCodeGeneration + PPCG] [3/3] Collect changes to PPCGCodeGen because of PPCG upgrade. from [Polly] [PPCGCodeGeneration + PPCG] [2/3] Collect changes to PPCGCodeGen because of PPCG upgrade. to [Polly] [PPCGCodeGeneration + PPCG] [3/3] Collect changes to PPCGCodeGen because of PPCG upgrade..
Thu, Jul 20, 4:37 AM
bollu created D35677: [WIP] [Polly] [PPCGCodeGeneration + PPCG] [3/3] Collect changes to PPCGCodeGen because of PPCG upgrade..
Thu, Jul 20, 4:37 AM
bollu created D35676: [Polly] [PPCG] [2/3] Collect all changes to `lib/External/*` due to PPCG update..
Thu, Jul 20, 4:36 AM
bollu created D35675: [Polly] [PPCG] [1/3] Bump up PPCG version to 0.07..
Thu, Jul 20, 4:30 AM
bollu abandoned D35653: [WIP] [Polly] [PPCG] Bump up PPCG to v0.07.

Hm, perhaps updating this diff is too confusing. I am abandoning this huge change and splitting this into 3 chunks.

Thu, Jul 20, 4:29 AM
bollu updated the diff for D35653: [WIP] [Polly] [PPCG] Bump up PPCG to v0.07.

[Polly] [PPCG] [1/3] Bump up PPCG to vanilla 0.07

Thu, Jul 20, 4:29 AM
bollu added a comment to D35653: [WIP] [Polly] [PPCG] Bump up PPCG to v0.07.

@grosser: I wanted to rebase and get a clean history, but PPCGCodeGeneration can be reviewed. The test cases I am dubious about are:

Thu, Jul 20, 2:07 AM

Wed, Jul 19

bollu created D35653: [WIP] [Polly] [PPCG] Bump up PPCG to v0.07.
Wed, Jul 19, 5:19 PM

Tue, Jul 18

bollu added a comment to D35060: [Polly] [PPCGCodegen] [Crash] [WIP] PPCG + invariant load hoisting.

I can no longer reproduce this on HEAD. I'll bisect and see what caused the change.

Tue, Jul 18, 8:23 AM
bollu updated the diff for D35486: [Polly] [PPCGCodeGeneration] [WIP] Do not consider writes to killable scalars as scalar stores.
  • [WIP] previous commmit makes no sense, that checks if we care about the value at the *end* of a scop, not in between loop iterations
Tue, Jul 18, 4:12 AM
bollu added a comment to D35486: [Polly] [PPCGCodeGeneration] [WIP] Do not consider writes to killable scalars as scalar stores.

@grosser - with this change, we break the test test/GPGPU/invariant-load-hoisting-with-failing-scop.ll which gets triggered when we have a BuildSuccessful = 0 with invariant load hoisting. However, the only way to trigger this is either

Tue, Jul 18, 3:49 AM
bollu updated the diff for D35486: [Polly] [PPCGCodeGeneration] [WIP] Do not consider writes to killable scalars as scalar stores.
  • Cleanup code.
Tue, Jul 18, 2:32 AM
bollu committed rL308279: [NFC] [PPCGCodeGeneration] cleanup kills related code..
[NFC] [PPCGCodeGeneration] cleanup kills related code.
Tue, Jul 18, 2:15 AM
bollu added a comment to D35486: [Polly] [PPCGCodeGeneration] [WIP] Do not consider writes to killable scalars as scalar stores.

From what I can tell, PPCG does seem to pass "private" scalars:

Tue, Jul 18, 1:46 AM
bollu added inline comments to D33441: [Polly] [DependenceInfo] Fix isParallel: accept dependences comprised of different spaces..
Tue, Jul 18, 1:33 AM

Mon, Jul 17

bollu added a comment to D35458: [Polly][PM][WIP] Polly pass registration.

A question from someone following this as an "outsider" with no context -
Does this allow others to obtain, say, Scop information (outside of polly) the way one can access DomTree / SCEV information?

Mon, Jul 17, 3:22 PM · Restricted Project
bollu committed rL308187: [PPCGCodeGeneration] Generate invariant loads before trying to generate IR..
[PPCGCodeGeneration] Generate invariant loads before trying to generate IR.
Mon, Jul 17, 8:57 AM
bollu closed D35410: [Polly] [PPCGCodeGeneration] Make sure invariant loads are generated before trying to generate LLVM from GPUNodeBuilder. [NFC] by committing rL308187: [PPCGCodeGeneration] Generate invariant loads before trying to generate IR..
Mon, Jul 17, 8:57 AM
bollu resigned from D35404: Email Test 2.
Mon, Jul 17, 8:54 AM
bollu added a comment to D35486: [Polly] [PPCGCodeGeneration] [WIP] Do not consider writes to killable scalars as scalar stores.

@grosser - does the change make sense to you? I'll clean it once I know that this is a sane change.

Mon, Jul 17, 8:50 AM
bollu retitled D35486: [Polly] [PPCGCodeGeneration] [WIP] Do not consider writes to killable scalars as scalar stores from [Polly] [PPCGCodeGeneration] [WIP] Do not consider writes to killable scalars as scalar stores - If a scalar can be killed, then the order of writes into it does not matter, since we don't read it later anyway. So, do not track these as scalar... to [Polly] [PPCGCodeGeneration] [WIP] Do not consider writes to killable scalars as scalar stores.
Mon, Jul 17, 8:49 AM
bollu created D35486: [Polly] [PPCGCodeGeneration] [WIP] Do not consider writes to killable scalars as scalar stores.
Mon, Jul 17, 8:22 AM
bollu retitled D35410: [Polly] [PPCGCodeGeneration] Make sure invariant loads are generated before trying to generate LLVM from GPUNodeBuilder. [NFC] from [Polly] [BlockGenerators] [NFC] to [Polly] [PPCGCodeGeneration] Make sure invariant loads are generated before trying to generate LLVM from GPUNodeBuilder. [NFC].
Mon, Jul 17, 7:33 AM
bollu retitled D35410: [Polly] [PPCGCodeGeneration] Make sure invariant loads are generated before trying to generate LLVM from GPUNodeBuilder. [NFC] from [Polly] [BlockGenerators] Teach BlockGenerators to skip copying invariant loads. [NFC] to [Polly] [BlockGenerators] [NFC].
Mon, Jul 17, 7:31 AM
bollu updated the diff for D35410: [Polly] [PPCGCodeGeneration] Make sure invariant loads are generated before trying to generate LLVM from GPUNodeBuilder. [NFC].
  • [NFC wrt patch] remove debug metadata from testcase.
Mon, Jul 17, 7:30 AM
bollu added a comment to D35410: [Polly] [PPCGCodeGeneration] Make sure invariant loads are generated before trying to generate LLVM from GPUNodeBuilder. [NFC].

here's the generated code for this example.

Mon, Jul 17, 6:32 AM
bollu updated the diff for D35410: [Polly] [PPCGCodeGeneration] Make sure invariant loads are generated before trying to generate LLVM from GPUNodeBuilder. [NFC].
  • Call preloadInvariantLoads() before invoking GPUNodeBuilder::create.
Mon, Jul 17, 6:26 AM

Fri, Jul 14

bollu planned changes to D35410: [Polly] [PPCGCodeGeneration] Make sure invariant loads are generated before trying to generate LLVM from GPUNodeBuilder. [NFC].

Nope, this is definitely incorrect, we generate incorrect IR in the kernel module.

Fri, Jul 14, 5:22 AM
bollu added inline comments to D35410: [Polly] [PPCGCodeGeneration] Make sure invariant loads are generated before trying to generate LLVM from GPUNodeBuilder. [NFC].
Fri, Jul 14, 4:52 AM
bollu created D35410: [Polly] [PPCGCodeGeneration] Make sure invariant loads are generated before trying to generate LLVM from GPUNodeBuilder. [NFC].
Fri, Jul 14, 4:50 AM
bollu abandoned D35353: [WIP] [Polly] [PPCGCodeGeneration] [NFC] Fix runtime check adjustments since they make assumptions about BB layout..

@grosser: It would appear that since you blocked on the "changes required", I can no longer close the revision (which is upstreamed with r308010). Hence, I am abandoning this revision.

Fri, Jul 14, 4:10 AM