bollu (Siddharth)
User

Projects

User does not belong to any projects.

User Details

User Since
Feb 20 2017, 1:20 PM (30 w, 2 d)

Recent Activity

Fri, Sep 15

bollu created D37901: [Polly] [Strided arrays, multidimensional indexing, fortran support] Teach Polly multidimensional strided array indexing. [WIP].
Fri, Sep 15, 7:06 AM

Thu, Sep 7

bollu committed rL312715: [PPCGCodeGen] Document pre-composition with Zero in getExtent. [NFC].
[PPCGCodeGen] Document pre-composition with Zero in getExtent. [NFC]
Thu, Sep 7, 5:00 AM

Fri, Sep 1

bollu added a comment to D37379: [Polly] [ISLNodeBuilder] [Fortran Arrays] Materialize Fortran array sizes of arrays without memory accesses..

Review please, this was a quick bugfix.

Fri, Sep 1, 7:33 AM
bollu created D37379: [Polly] [ISLNodeBuilder] [Fortran Arrays] Materialize Fortran array sizes of arrays without memory accesses..
Fri, Sep 1, 7:31 AM

Thu, Aug 31

bollu closed D37056: [Polly] [PPCGCodeGeneration] Convert intrinsics to libdevice functions whenever possible. by committing rL312239: [PPCGCodeGen] Convert intrinsics to libdevice functions whenever possible..
Thu, Aug 31, 6:06 AM

Tue, Aug 29

bollu committed rL311995: [ScopInfo] Fix comment grammar. "..to be build" -> "..to be built". [NFC].
[ScopInfo] Fix comment grammar. "..to be build" -> "..to be built". [NFC]
Tue, Aug 29, 4:47 AM

Mon, Aug 28

bollu added a comment to D37056: [Polly] [PPCGCodeGeneration] Convert intrinsics to libdevice functions whenever possible..

@efriedma I made the changes you requested. Could you have a final look, please?

Mon, Aug 28, 3:31 AM
bollu updated the diff for D37056: [Polly] [PPCGCodeGeneration] Convert intrinsics to libdevice functions whenever possible..
  • [Diff update] Update diff with latest master.
Mon, Aug 28, 2:37 AM
bollu updated the diff for D37056: [Polly] [PPCGCodeGeneration] Convert intrinsics to libdevice functions whenever possible..
  • Don't parse the function name, keep a static map from intrinsic names to libdevice names
Mon, Aug 28, 2:19 AM

Sun, Aug 27

bollu accepted D37191: [Polly][GPGPU] Fixed undefined reference for CUDA's managed memory in Runtime library..

LGTM, thanks for generalising it :) I'm sorry, I'll keep the mixed CUDA/OpenCL thing in mind next time I mess with GPUJIt.

Sun, Aug 27, 4:58 AM

Fri, Aug 25

bollu added a comment to D37056: [Polly] [PPCGCodeGeneration] Convert intrinsics to libdevice functions whenever possible..

@grosser ping, review please.

Fri, Aug 25, 8:18 AM
bollu added a comment to D37061: [Polly] Third Updated translating the function Scop::foldSizeConstantsToRight() to isl C++.

Also, for future reference, note that an old review can be updated: There is an update diff option to the right hand side at the top of the web page. That way, we won't have multiple revisions like D37061 and D36843. This reduces the number of places someone needs to look to see the total change :). Thanks!

Fri, Aug 25, 2:52 AM
bollu created D37135: [Polly] [PPCGCodeGeneration] Allow PPCGCodeGeneration to run without libdevice..
Fri, Aug 25, 2:24 AM

Thu, Aug 24

bollu added a comment to D37056: [Polly] [PPCGCodeGeneration] Convert intrinsics to libdevice functions whenever possible..

@efriedma - The NVPTX backend does not lower either llvm.exp.* or llvm.powi.* (Unless I am doing something wrong).

Thu, Aug 24, 3:01 AM
bollu committed rL311648: [Polly] [PPCGCodeGeneration] Mild refactoring of checking validity of functions….
[Polly] [PPCGCodeGeneration] Mild refactoring of checking validity of functions…
Thu, Aug 24, 2:55 AM
bollu closed D37058: [Polly] [PPCGCodeGeneration] Mild refactoring of checking validity of functions in a kernel. by committing rL311648: [Polly] [PPCGCodeGeneration] Mild refactoring of checking validity of functions….
Thu, Aug 24, 2:55 AM

Wed, Aug 23

bollu created D37067: [Polly] [WIP] [ManagedMemoryRewrite] Rewrite global structs to managed memory..
Wed, Aug 23, 9:00 AM
bollu updated the diff for D37056: [Polly] [PPCGCodeGeneration] Convert intrinsics to libdevice functions whenever possible..
  • [Test] upadte tests to refect state of exp, powi in PPCGCodeGen
Wed, Aug 23, 5:21 AM
bollu added a comment to D37056: [Polly] [PPCGCodeGeneration] Convert intrinsics to libdevice functions whenever possible..

I should probably split this into two patches, but I wanted to run the idea by. I can split it when I commit (or split it now). Review, please.

Wed, Aug 23, 4:50 AM
bollu retitled D37056: [Polly] [PPCGCodeGeneration] Convert intrinsics to libdevice functions whenever possible. from [Polly] [PPCGCodeGeneration] [WIP] Convert intrinsics to libdevice functions whenever possible. to [Polly] [PPCGCodeGeneration] Convert intrinsics to libdevice functions whenever possible..
Wed, Aug 23, 4:48 AM
bollu updated the diff for D37056: [Polly] [PPCGCodeGeneration] Convert intrinsics to libdevice functions whenever possible..
  • [Bugfix] add powi to the list of instructions that the NVPTX backend cannot lower.
  • [NFC] remove debug code
Wed, Aug 23, 4:47 AM
bollu created D37058: [Polly] [PPCGCodeGeneration] Mild refactoring of checking validity of functions in a kernel..
Wed, Aug 23, 4:37 AM
bollu created D37056: [Polly] [PPCGCodeGeneration] Convert intrinsics to libdevice functions whenever possible..
Wed, Aug 23, 3:11 AM

Tue, Aug 22

bollu committed rL311471: [GPUJIT] Make max managed pointers an environment variable..
[GPUJIT] Make max managed pointers an environment variable.
Tue, Aug 22, 10:33 AM
bollu closed D37012: [GPUJIT] Make max managed pointers an environment variable by committing rL311471: [GPUJIT] Make max managed pointers an environment variable..
Tue, Aug 22, 10:33 AM
bollu added inline comments to D37010: [Polly][PM] Properly require and preservation of OptimizationRemarkEmitter..
Tue, Aug 22, 9:36 AM · Restricted Project
bollu added inline comments to D36852: [Polly] [ScopInliner] [WIP] Teach ScopInliner to inline not-fully-scop'd functions..
Tue, Aug 22, 6:46 AM
bollu updated the diff for D36852: [Polly] [ScopInliner] [WIP] Teach ScopInliner to inline not-fully-scop'd functions..
  • [Diff fix] Upload correct arc diff.
Tue, Aug 22, 6:42 AM
bollu added inline comments to D35992: [Polly] [PPCGCodeGeneration] [NFC] [WIP] Add option to fail if a store to a scalar occursin a kernel..
Tue, Aug 22, 6:40 AM
bollu created D37012: [GPUJIT] Make max managed pointers an environment variable.
Tue, Aug 22, 6:37 AM
bollu updated the diff for D36852: [Polly] [ScopInliner] [WIP] Teach ScopInliner to inline not-fully-scop'd functions..
  • Use LegacyInlinerBase as the starting point for our inliner pass.
  • Cache inlining results because polyhedral analysis is expensive.
Tue, Aug 22, 6:31 AM
bollu committed rL311440: [ManagedMemoryRewrite] Use `unit64_t` to store size, not `int`..
[ManagedMemoryRewrite] Use `unit64_t` to store size, not `int`.
Tue, Aug 22, 2:31 AM
bollu committed rL311439: [ManagedMemoryRewrite] Get size in bytes rather than in bits and dividing by 8..
[ManagedMemoryRewrite] Get size in bytes rather than in bits and dividing by 8.
Tue, Aug 22, 2:28 AM

Aug 21 2017

bollu committed rL311361: [ManagedMemoryRewrite] slightly tweak debug output style. [NFC].
[ManagedMemoryRewrite] slightly tweak debug output style. [NFC]
Aug 21 2017, 11:59 AM
bollu committed rL311360: [ManagedMemoryRewrite] Print reasons for skipping global array to dbgs(). [NFC].
[ManagedMemoryRewrite] Print reasons for skipping global array to dbgs(). [NFC]
Aug 21 2017, 11:53 AM
bollu committed rL311331: [ManagedMemoryRewrite] hide debug output behing DEBUG(...). [NFC].
[ManagedMemoryRewrite] hide debug output behing DEBUG(...). [NFC]
Aug 21 2017, 5:53 AM
bollu abandoned D35988: [Polly] [WIP] [PPCGCodeGeneration] Failing test case from COSMO.

Test now passes. Probably succeeds due to rL311042

Aug 21 2017, 5:20 AM
bollu abandoned D35486: [Polly] [PPCGCodeGeneration] [WIP] Do not consider writes to killable scalars as scalar stores.

Abandoned because rL311259 contains changes that this patch was supposed to perform.

Aug 21 2017, 5:15 AM
bollu committed rL311329: [ScopInfo] Add option to treat all function parameters as dereferencible..
[ScopInfo] Add option to treat all function parameters as dereferencible.
Aug 21 2017, 4:58 AM
bollu closed D36461: [Polly] [Fortran Support] [Hack] [WIP] add option to treat function parameters as dereferencable by committing rL311329: [ScopInfo] Add option to treat all function parameters as dereferencible..
Aug 21 2017, 4:58 AM
bollu updated the diff for D36461: [Polly] [Fortran Support] [Hack] [WIP] add option to treat function parameters as dereferencable.
  • [NFC] fix whitespace and debug print (Fix screwed up diff due to rebase).
Aug 21 2017, 4:51 AM
bollu updated the diff for D36461: [Polly] [Fortran Support] [Hack] [WIP] add option to treat function parameters as dereferencable.
  • [NFC] fix whitespace and debug print
Aug 21 2017, 4:49 AM
bollu committed rL311328: [PPCGCodeGeneration] Enable `polly-codegen-perf-monitoring` for PPCGCodegen..
[PPCGCodeGeneration] Enable `polly-codegen-perf-monitoring` for PPCGCodegen.
Aug 21 2017, 4:45 AM
bollu closed D36934: [PPCGCodeGeneration] Enable `polly-codegen-perf-monitoring` for PPCGCodegen. by committing rL311328: [PPCGCodeGeneration] Enable `polly-codegen-perf-monitoring` for PPCGCodegen..
Aug 21 2017, 4:45 AM
bollu added a comment to D36934: [PPCGCodeGeneration] Enable `polly-codegen-perf-monitoring` for PPCGCodegen..

@annanay25 - I believe that was changed by people upstream due to the PostDomTree changes. (specifically, D35851).

Aug 21 2017, 4:43 AM
bollu added a comment to D36461: [Polly] [Fortran Support] [Hack] [WIP] add option to treat function parameters as dereferencable.

@grosser - review please.

Aug 21 2017, 4:32 AM
bollu updated the diff for D36461: [Polly] [Fortran Support] [Hack] [WIP] add option to treat function parameters as dereferencable.
  • Update code and add test case.
Aug 21 2017, 4:32 AM
bollu added a comment to D36934: [PPCGCodeGeneration] Enable `polly-codegen-perf-monitoring` for PPCGCodegen..

@grosser @philip.pfaffe @Meinersbur @singam-sanjay ping, review please.

Aug 21 2017, 2:28 AM

Aug 20 2017

bollu added a comment to D36939: [Polly] Codegen for simple full function Scops.

Thanks a lot for the patch! I have some stylistic comments to make. However, I do not understand the related codebase well enough, so I'll leave that for the others :).

Aug 20 2017, 4:26 PM
bollu created D36934: [PPCGCodeGeneration] Enable `polly-codegen-perf-monitoring` for PPCGCodegen..
Aug 20 2017, 8:11 AM
bollu committed rL311289: [GPUJIT] Switch from Runtime API calls for managed memory to Driver API calls..
[GPUJIT] Switch from Runtime API calls for managed memory to Driver API calls.
Aug 20 2017, 6:39 AM
bollu closed D36921: [Polly] [GPUJIT] [Untested] Switch from Runtime API calls for managed memory to Driver API calls. by committing rL311289: [GPUJIT] Switch from Runtime API calls for managed memory to Driver API calls..
Aug 20 2017, 6:39 AM
bollu retitled D36921: [Polly] [GPUJIT] [Untested] Switch from Runtime API calls for managed memory to Driver API calls. from [Polly] [GPUJIT] [Untested] Switch from Runtime API calls for managed memory to Driver API calls. [NFC] to [Polly] [GPUJIT] [Untested] Switch from Runtime API calls for managed memory to Driver API calls..
Aug 20 2017, 6:34 AM

Aug 19 2017

bollu committed rL311261: [ManagedMemoryRewrite] Iterate over operands of the expanded instruction, not….
[ManagedMemoryRewrite] Iterate over operands of the expanded instruction, not…
Aug 19 2017, 1:53 PM
bollu closed D36923: [Polly] [ManagedMemoryRewrite] Iterate over operands of the expanded instruction, not the constantexpr itself. by committing rL311261: [ManagedMemoryRewrite] Iterate over operands of the expanded instruction, not….
Aug 19 2017, 1:53 PM
bollu accepted D36929: [GPGPU] Correctly initialize array order and fixed_element information.

Please add the comment I requested for cc->isLatestScalarKind() ? isl_bool_true : isl_bool_false; and the test cases. LGTM.

Aug 19 2017, 1:18 PM · Restricted Project
bollu requested changes to D36929: [GPGPU] Correctly initialize array order and fixed_element information.

It's cool that invariant-load-hoisting-with-failing-scop.ll now succeeds, but that's not the purpose of the test case :)

Aug 19 2017, 12:45 PM · Restricted Project
bollu updated the diff for D36923: [Polly] [ManagedMemoryRewrite] Iterate over operands of the expanded instruction, not the constantexpr itself..
  • [NFC] reorder statements
Aug 19 2017, 11:01 AM
bollu updated the diff for D36923: [Polly] [ManagedMemoryRewrite] Iterate over operands of the expanded instruction, not the constantexpr itself..
  • [NFC] remove empty line
Aug 19 2017, 11:00 AM
bollu updated the diff for D36923: [Polly] [ManagedMemoryRewrite] Iterate over operands of the expanded instruction, not the constantexpr itself..
  • Don't call DeleteValue on the ConstantExpr because there can be multiple use sites
Aug 19 2017, 10:46 AM
bollu updated the diff for D36923: [Polly] [ManagedMemoryRewrite] Iterate over operands of the expanded instruction, not the constantexpr itself..
  • Invalidate Cur by deleting it and setting it to nullptr
Aug 19 2017, 10:42 AM
bollu added inline comments to D36923: [Polly] [ManagedMemoryRewrite] Iterate over operands of the expanded instruction, not the constantexpr itself..
Aug 19 2017, 10:42 AM
bollu retitled D36923: [Polly] [ManagedMemoryRewrite] Iterate over operands of the expanded instruction, not the constantexpr itself. from [Polly] [ManagedMemoryRewrite] Iterate over operands of the expanded instruction, not the constantexpr itself [NFC] to [Polly] [ManagedMemoryRewrite] Iterate over operands of the expanded instruction, not the constantexpr itself..
Aug 19 2017, 9:17 AM
bollu created D36923: [Polly] [ManagedMemoryRewrite] Iterate over operands of the expanded instruction, not the constantexpr itself..
Aug 19 2017, 9:12 AM
bollu updated the diff for D36921: [Polly] [GPUJIT] [Untested] Switch from Runtime API calls for managed memory to Driver API calls..
  • [NFC] remove blank line
Aug 19 2017, 8:20 AM
bollu added a comment to D36921: [Polly] [GPUJIT] [Untested] Switch from Runtime API calls for managed memory to Driver API calls..

@PhilippSchaad - Can you confirm that this now allows you to link on a machine without CUDA? Sorry for letting this slip by, I mixed up the runtime/driver APIs.

Aug 19 2017, 8:20 AM
bollu added a reviewer for D36921: [Polly] [GPUJIT] [Untested] Switch from Runtime API calls for managed memory to Driver API calls.: PhilippSchaad.
Aug 19 2017, 8:19 AM
bollu created D36921: [Polly] [GPUJIT] [Untested] Switch from Runtime API calls for managed memory to Driver API calls..
Aug 19 2017, 8:18 AM
bollu accepted D36920: [GPGPU] Collect parameter dimension used in MemoryAccesses.

Thanks! Other than nits, LGTM.

Aug 19 2017, 5:54 AM · Restricted Project
bollu requested changes to D36920: [GPGPU] Collect parameter dimension used in MemoryAccesses.

I would like to discuss the isl::space ParamSpace issue before LGTM'ing this patch.

Aug 19 2017, 5:26 AM · Restricted Project

Aug 18 2017

bollu committed rL311158: [Polly] [PPCGCodeGeneration] Print current Scop and loop depth in PPCGCodeGen..
[Polly] [PPCGCodeGeneration] Print current Scop and loop depth in PPCGCodeGen.
Aug 18 2017, 6:19 AM
bollu closed D36871: [Polly] [PPCGCodeGeneration] Print current Scop and loop depth in PPCGCodeGen. [NFC] by committing rL311158: [Polly] [PPCGCodeGeneration] Print current Scop and loop depth in PPCGCodeGen..
Aug 18 2017, 6:19 AM
bollu created D36871: [Polly] [PPCGCodeGeneration] Print current Scop and loop depth in PPCGCodeGen. [NFC].
Aug 18 2017, 5:33 AM
bollu accepted D36867: [GPGPU] Synchronize after each kernel, not each copy out.

Does this patch depend on some other patch? If so, please record this information by creating a Parent Revision. (Edit Related Revisions -> Edit Parent Revision). If some other patch depends on this, then make this a parent of that patch. Helps when looking up revisions later on.

Aug 18 2017, 4:53 AM · Restricted Project
bollu accepted D36869: [GPGPU] Simplify PPCGSCop to reduce compile time [NFC].
Aug 18 2017, 4:51 AM · Restricted Project
bollu accepted D36868: [GPGPU] Do not create copy statements when targetting managed memory.

LGTM

Aug 18 2017, 4:51 AM · Restricted Project
bollu added a comment to D36869: [GPGPU] Simplify PPCGSCop to reduce compile time [NFC].

Other than comments, LGTM :)

Aug 18 2017, 4:45 AM · Restricted Project

Aug 17 2017

bollu created D36852: [Polly] [ScopInliner] [WIP] Teach ScopInliner to inline not-fully-scop'd functions..
Aug 17 2017, 4:44 PM
bollu committed rL311130: [ScpInliner] Move DEBUG-TYPE to below all includes to prevent cross-module….
[ScpInliner] Move DEBUG-TYPE to below all includes to prevent cross-module…
Aug 17 2017, 3:24 PM
bollu committed rL311126: [ScopInliner] Add a simple Scop-based inliner to polly..
[ScopInliner] Add a simple Scop-based inliner to polly.
Aug 17 2017, 2:58 PM
bollu closed D36832: [Polly] [ScopInliner] Implement basic scop inlining pass. by committing rL311126: [ScopInliner] Add a simple Scop-based inliner to polly..
Aug 17 2017, 2:58 PM
bollu updated the diff for D36832: [Polly] [ScopInliner] Implement basic scop inlining pass..
  • [NFC] remove metadata from tests
Aug 17 2017, 2:43 PM
bollu added inline comments to D36832: [Polly] [ScopInliner] Implement basic scop inlining pass..
Aug 17 2017, 2:22 PM
bollu updated the diff for D36832: [Polly] [ScopInliner] Implement basic scop inlining pass..
  • [Bugfix, Debug] Actually skip declarations and add better debug prints.
Aug 17 2017, 2:22 PM
bollu updated the diff for D36832: [Polly] [ScopInliner] Implement basic scop inlining pass..
  • [NFC] run through check-polly, slightly restructure code.
Aug 17 2017, 1:32 PM
bollu closed D36825: [Polly] [ManagedMemoryRewrite] Rewrite malloc, free correctly so it works inside bitcasts as well. by committing rL311121: [ManagedMemoryRewrite] Rewrite malloc, free correctly inside `Constant`s..
Aug 17 2017, 1:28 PM
bollu updated the diff for D36825: [Polly] [ManagedMemoryRewrite] Rewrite malloc, free correctly so it works inside bitcasts as well..
  • [NFC] rename function as what Tobias suggested and add comment explaining why
Aug 17 2017, 1:09 PM
bollu added a comment to D36825: [Polly] [ManagedMemoryRewrite] Rewrite malloc, free correctly so it works inside bitcasts as well..

@grosser Dont, added tests.

Aug 17 2017, 12:05 PM
bollu updated the diff for D36825: [Polly] [ManagedMemoryRewrite] Rewrite malloc, free correctly so it works inside bitcasts as well..
  • [NFC] add testcase
Aug 17 2017, 11:57 AM
bollu updated the diff for D36832: [Polly] [ScopInliner] Implement basic scop inlining pass..
  • [NFC] fix style comments, make ScopInliner check that -polly-allow-full-func is enabled
Aug 17 2017, 8:51 AM
bollu created D36832: [Polly] [ScopInliner] Implement basic scop inlining pass..
Aug 17 2017, 8:06 AM
bollu added inline comments to D36825: [Polly] [ManagedMemoryRewrite] Rewrite malloc, free correctly so it works inside bitcasts as well..
Aug 17 2017, 5:14 AM
bollu created D36825: [Polly] [ManagedMemoryRewrite] Rewrite malloc, free correctly so it works inside bitcasts as well..
Aug 17 2017, 5:14 AM
bollu retitled D36825: [Polly] [ManagedMemoryRewrite] Rewrite malloc, free correctly so it works inside bitcasts as well. from [ManagedMemoryRewrite] Rewrite malloc, free correctly so it works inside bitcasts as well. Reuse the machinery built for replacing global arrays to replace malloc/free as well. Example replacement that was missed earlier: ```ll call void... to [Polly] [ManagedMemoryRewrite] Rewrite malloc, free correctly so it works inside bitcasts as well..
Aug 17 2017, 5:14 AM
bollu closed D36516: [WIP] [Polly] [ManagedMemoryRewrite] Rewrite global arrays with global pointers that are polly_mallocManage'd by committing rL311080: [ManagedMemoryRewrite] Learn how to rewrite global arrays, allocas..
Aug 17 2017, 4:23 AM
bollu updated the diff for D36516: [WIP] [Polly] [ManagedMemoryRewrite] Rewrite global arrays with global pointers that are polly_mallocManage'd.
  • [NFC] remove 0 address space because that is the default value.
Aug 17 2017, 3:41 AM
bollu updated the diff for D36516: [WIP] [Polly] [ManagedMemoryRewrite] Rewrite global arrays with global pointers that are polly_mallocManage'd.
  • [NFC] Discuss algorithm with phillip offline, he helped to simplify it further.
  • [Linkage] Update linkage code to use the correct linker options as well as the ignore linkage flag. Update test case to match this change
  • [ReplaceUsesOfWith] remove double-loop that was not required.
Aug 17 2017, 2:34 AM
bollu updated the diff for D36516: [WIP] [Polly] [ManagedMemoryRewrite] Rewrite global arrays with global pointers that are polly_mallocManage'd.
  • [Merge] Merged with master, hoping that GPUJIT does not show up from arc diff this time.
Aug 17 2017, 1:36 AM
bollu updated the diff for D36516: [WIP] [Polly] [ManagedMemoryRewrite] Rewrite global arrays with global pointers that are polly_mallocManage'd.
  • [Re-upload] diff against the newest HEAD.
Aug 17 2017, 1:32 AM
bollu added a comment to D36516: [WIP] [Polly] [ManagedMemoryRewrite] Rewrite global arrays with global pointers that are polly_mallocManage'd.

@philip.pfaffe Another round of review, please?

Aug 17 2017, 1:29 AM