[vector] #66: ! allocates needlessly

vector vector at projects.haskell.org
Sun Nov 27 15:52:44 GMT 2011


#66: ! allocates needlessly
----------------------+-----------------------------------------------------
Reporter:  Khudyakov  |        Owner:        
    Type:  defect     |       Status:  closed
Priority:  critical   |    Milestone:  0.9.1 
 Version:             |   Resolution:  fixed 
Keywords:             |  
----------------------+-----------------------------------------------------
Changes (by rl):

  * status:  new => closed
  * resolution:  => fixed
  * milestone:  => 0.9.1


Comment:

 Very well spotted, thanks a lot for the excellent bug report, and mostly
 in Russian, too! Fixed by:

 {{{
 Sun Nov 27 15:42:30 GMT 2011  Roman Leshchinskiy <rl at cse.unsw.edu.au>
   * Manually worker/wrapper error functions (fixes #66)
 }}}

 Allocation stats before:

 {{{
 safe:
      800,056,892 bytes allocated in the heap
           11,760 bytes copied during GC
           27,248 bytes maximum residency (1 sample(s))
           17,292 bytes maximum slop
                1 MB total memory in use (0 MB lost due to fragmentation)

 unsafe:
           57,176 bytes allocated in the heap
            1,508 bytes copied during GC
           42,380 bytes maximum residency (1 sample(s))
           19,060 bytes maximum slop
                1 MB total memory in use (0 MB lost due to fragmentation)
 }}}

 After:

 {{{
 safe:
           56,892 bytes allocated in the heap
            1,508 bytes copied during GC
           42,380 bytes maximum residency (1 sample(s))
           19,060 bytes maximum slop
                1 MB total memory in use (0 MB lost due to fragmentation)

 unsafe:
           57,176 bytes allocated in the heap
            1,508 bytes copied during GC
           42,380 bytes maximum residency (1 sample(s))
           19,060 bytes maximum slop
                1 MB total memory in use (0 MB lost due to fragmentation)
 }}}

 I wish I knew why the version with bounds checking allocates a little less
 that the one without.

-- 
Ticket URL: <http://trac.haskell.org/vector/ticket/66#comment:2>
vector <http://trac.haskell.org/vector>
Package vector


More information about the vector mailing list