[PATCH][Review Requested][Compilation Time] Using hashing in getVTList()

Nowicki, Tyler tyler.nowicki at intel.com
Wed Feb 27 11:18:44 PST 2013


Sure, here it is.

Tyler

-----Original Message-----
From: Bill Wendling [mailto:wendling at apple.com] 
Sent: Wednesday, February 27, 2013 2:07 PM
To: Nowicki, Tyler
Cc: Chris Lattner; llvm-commits at cs.uiuc.edu
Subject: Re: [PATCH][Review Requested][Compilation Time] Using hashing in getVTList()

Hi Tyler,

I don't see the patch here. Could you repost please?

-bw

On Feb 26, 2013, at 7:59 AM, "Nowicki, Tyler" <tyler.nowicki at intel.com> wrote:

> Could I get a review/comment on this patch?
>  
> Thanks,
>  
> Tyler
>  
> From: llvm-commits-bounces at cs.uiuc.edu [mailto:llvm-commits-bounces at cs.uiuc.edu] On Behalf Of Nowicki, Tyler
> Sent: Thursday, February 14, 2013 6:44 PM
> To: Chris Lattner
> Cc: llvm-commits at cs.uiuc.edu
> Subject: RE: [PATCH][Review Requested][Compilation Time] Using hashing in getVTList()
>  
> Hi Chris,
>  
> Thanks for the review. We have committed the const change.
>  
> FoldingSet - We have experimented with using FoldingSet on another compile-time optimization however we found that it was slower. Sriram Murali posted a message discussing our findings on this. See `RE: [PATCH][Review Requested][Compilation Time] Calculate hash   value and equality comparison within SCEV node itself'
>  
> Hashing - The patch uses bucket hashing. It is simple and fast. Can you suggest something better?
>  
> Tyler
>  
> From: Chris Lattner [mailto:clattner at apple.com] 
> Sent: Wednesday, February 13, 2013 12:05 AM
> To: Nowicki, Tyler
> Cc: llvm-commits at cs.uiuc.edu
> Subject: Re: [PATCH][Review Requested][Compilation Time] Using hashing in getVTList()
>  
>  
> On Jan 31, 2013, at 2:54 PM, "Nowicki, Tyler" <tyler.nowicki at intel.com> wrote:
>  
> 
> Hi,
>  
> This patch aims to improve compile time performance by replacing a sequential search over an std::vector in the function getVTList() with a look up into a SmallVector where the index is calculated by hashing the input VTs and a sequential search through a smaller VT bucket.
>  
> This patch is part of a series of compile time improvements. Although these were originally produced by our colleague Wan Xiaofei, our team consisting of preston.gurd at intel.com;sriram.murali at intel.com and myself, are assuming all responsibility for this work.
>  
> Hi Tyler,
>  
> Marking stuff const is obvious, please commit that.  For the actual algorithm here, have you considered using a FoldingSet or a hash table of some sort to unique the lists instead of switching the order of the linear scan?
>  
> -Chris
>  
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

-------------- next part --------------
A non-text attachment was scrubbed...
Name: Hashing-svn.patch
Type: application/octet-stream
Size: 4498 bytes
Desc: Hashing-svn.patch
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130227/2c37ff35/attachment.obj>


More information about the llvm-commits mailing list