Changes between Version 38 and Version 39 of NestedCPR


Ignore:
Timestamp:
Jan 14, 2014 3:04:48 PM (14 months ago)
Author:
nomeata
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • NestedCPR

    v38 v39  
    4141 
    4242=== Degradation exploration and explanation === 
    43  
    44 The following section is partly outdated, as with a fix (do not mess with the unfolding in WorkWrap if no wrapper is being added) and the case-to-body flow, no Allocation degradation is found any more! 
    4543 
    4644At one point, I thought that a major contributor to increased allocations is nested-CPR’ing things returning `String`, causing them to return `(# Char#, String #)`. But removing the `CPR` information from `C#` calls has zero effect on the allocations, both on `master` and on `nested-cpr`. It had very small (positive) effect on code size. Will have to look at Core... 
     
    106104 
    107105 * Can we use `Converges` CPR information to eagerly evaluate thunks? Yes, and there is a small gain there: #8655. 
     106  * Do it in Core to STG! 
    108107  * But why no allocation change? Understand this better! 
    109108  * Can we statically and/or dynamically count the number of thunks, and the number of CBV’ed thunks? 
     109    * Statically: Add debug statements 
     110    * Dynamically: Look for decrease in thunk allocations in ticky. 
    110111 * Can we use `Converges` in `exprOkForSpeculation`? 
    111112 * Why is `cacheprof` not deterministic? (→ #8611)