[Git][ghc/ghc][master] rts: Improve tracing message when nursery is resized

Marge Bot (@marge-bot) gitlab at gitlab.haskell.org
Fri Apr 12 17:14:13 UTC 2024



Marge Bot pushed to branch master at Glasgow Haskell Compiler / GHC


Commits:
c3489547 by Matthew Pickering at 2024-04-12T13:13:44-04:00
rts: Improve tracing message when nursery is resized

It is sometimes more useful to know how much bigger or smaller the
nursery got when it is resized.

In particular I am trying to investigate situations where we end up with
fragmentation due to the nursery (#24577)

- - - - -


1 changed file:

- rts/sm/Storage.c


Changes:

=====================================
rts/sm/Storage.c
=====================================
@@ -881,8 +881,8 @@ resizeNurseriesEach (W_ blocks)
 
         node = capNoToNumaNode(i);
         if (nursery_blocks < blocks) {
-            debugTrace(DEBUG_gc, "increasing size of nursery to %d blocks",
-                       blocks);
+            debugTrace(DEBUG_gc, "increasing size of nursery from %d to %d blocks",
+                       nursery_blocks, blocks);
             nursery->blocks = allocNursery(node, nursery->blocks,
                                            blocks-nursery_blocks);
         }
@@ -890,8 +890,8 @@ resizeNurseriesEach (W_ blocks)
         {
             bdescr *next_bd;
 
-            debugTrace(DEBUG_gc, "decreasing size of nursery to %d blocks",
-                       blocks);
+            debugTrace(DEBUG_gc, "decreasing size of nursery from %d to %d blocks",
+                       nursery_blocks, blocks);
 
             bd = nursery->blocks;
             while (nursery_blocks > blocks) {
@@ -905,6 +905,8 @@ resizeNurseriesEach (W_ blocks)
             // might have gone just under, by freeing a large block, so make
             // up the difference.
             if (nursery_blocks < blocks) {
+                debugTrace(DEBUG_gc, "reincreasing size of nursery from %d to %d blocks",
+                             nursery_blocks, blocks);
                 nursery->blocks = allocNursery(node, nursery->blocks,
                                                blocks-nursery_blocks);
             }



View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/c34895470fad6b1aa29fce53d54c76cf413225f5

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/c34895470fad6b1aa29fce53d54c76cf413225f5
You're receiving this email because of your account on gitlab.haskell.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20240412/5991d918/attachment-0001.html>


More information about the ghc-commits mailing list