[D-runtime] Fw: [phobos] newCapacity function in array appending

Steve Schveighoffer schveiguy at yahoo.com
Tue Jul 13 13:59:18 PDT 2010


Didn't know this list existed until just now.

Moving the related discussion below to the runtime list

-Steve



----- Forwarded Message ----
> From: Steve Schveighoffer <schveiguy at yahoo.com>
> To: Phobos <phobos at puremagic.com>
> Sent: Tue, July 13, 2010 3:54:09 PM
> Subject: [phobos] newCapacity function in array appending
> 
> There is a couple issues with the growth rate of arrays in the array append 
> function.
> 
> First, the newCapacity function is only called when the  array must be 
> reallocated.  I believe this to be an error, I think the  newCapacity function 

> should always be used, even if pages can be  added.  This would use less cycles 
>
> searching for pages to  append.
> 
> Second, the newCapacity function seems to use the size of the  element to 
> determine a percentage growth.  I feel this is an  error.  I think the growth 
> factor should strictly be related to the  amount of memory being requested, 
>which 
>
> already takes into account the size  of the element.
> 
> At present, this means that arrays of ints grow 4x as  fast as arrays of 
>bytes.  
>
> And that's 4x in percentage terms, not in 4x  the memory used.  The memory used 
>
> actually grows 16x  faster.
> 
> Does everyone agree with this?
> 
> The relevant bug for this  is  
>http://d.puremagic.com/issues/show_bug.cgi?id=4412
> 
> -Steve
> 
> 
> 
>        
> _______________________________________________
> phobos  mailing list
> phobos at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/phobos
> 


      


More information about the D-runtime mailing list