[llvm-commits] [PATCH] Address Space Alias Analysis

Villmow, Micah Micah.Villmow at amd.com
Wed Oct 12 11:52:03 PDT 2011



From: llvm-commits-bounces at cs.uiuc.edu [mailto:llvm-commits-bounces at cs.uiuc.edu] On Behalf Of Justin Holewinski
Sent: Tuesday, October 11, 2011 7:55 PM
To: Sandeep Patel
Cc: llvm-commits
Subject: Re: [llvm-commits] [PATCH] Address Space Alias Analysis

On Tue, Oct 11, 2011 at 6:34 PM, Sandeep Patel <deeppatel1987 at gmail.com<mailto:deeppatel1987 at gmail.com>> wrote:
It seems like we could turn this on automatically if we ever see a use
of a non-default address space.

I hesitate to do this since some back-ends may not have the property that separate address spaces are entirely disjoint and cannot alias.  For PTX, we currently have this property because we use address spaces as a way to differentiate the different types of device memory.
[Villmow, Micah] What about adding a backend hook to see if the address spaces are disjoint. In the PTX backend and our AMDIL backend, this could default to true for everything.  For other back ends, it could be a case by case basis. This might lower when the pass can be run, but would help with this issue.


deep

On Tue, Oct 11, 2011 at 3:08 PM, Justin Holewinski
<justin.holewinski at gmail.com<mailto:justin.holewinski at gmail.com>> wrote:
> The attached patch provides a new alias analysis: Address Space Alias
> Analysis.  This pass is off-by-default and has no impact on generated code
> unless -asaa is provided to opt.
> This analysis signals NoAlias for pointers in different address spaces.  The
> primary target for this pass is GPU back-ends which use LLVM address spaces
> as a means for differentiating memory types (on-chip shared, off-chip
> global, etc.) and hence pointers in different address spaces cannot alias.
>  For OpenCL code compiled with the PTX back-end, this improves performance
> by over 2x in some of my test kernels due to LLVM using this alias
> information to remove redundant loads.
> Is this okay to commit?
>
> --
>
> Thanks,
> Justin Holewinski
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu<mailto:llvm-commits at cs.uiuc.edu>
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
>



--
Thanks,

Justin Holewinski

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20111012/f88bd1fd/attachment.html>


More information about the llvm-commits mailing list