Maoni's WebLog

CLR Garbage Collector

  • Maoni's WebLog

    Suspending and resuming threads for GC

    First of all, suspension and resumption of threads is not really part of the GC. GC calls functions to do the suspension and the resumption as a service provided in the CLR. Other components in the CLR also use this service such as the debugger implementation...
  • Maoni's WebLog

    When memory is running low…

    When I say memory I mean physical memory. Let’s assume that you have enough virtual memory space. When the physical memory gets low you may start getting OOMs or start paging. You can experiment and see how you can avoid getting into the low memory...
  • Maoni's WebLog

    Large Object Heap

    LOH (Large Object Heap) contains objects that are 85,000 bytes or bigger (there’s also some objects that are less than 85,000 bytes that are allocated on the LOH by the runtime itself but usually they are very small and we’ll ignore them for this discussion...
  • Maoni's WebLog

    Workstation GC for server applications?

    In Using GC Efficiently – Part 2 I talked about different flavors of GC that exist in the CLR and how you choose which flavor is good for your applications, and I said that the Server GC flavor is designed for server applications. As with any performance...
  • Maoni's WebLog

    Thank you all for your comments!

    I will write about the things you asked in my last blog entry's comments in the next few blog entries.
  • Maoni's WebLog

    What do you want to know?

    In my previous Using GC Efficiently entries I've basically covered all the big areas of GC in the CLR. There are of course a lot of things to write about GC but I want to keep GC users as my target audience, not GC designers/implementors. So I would really...
  • Maoni's WebLog

    So, what’s new in the CLR 2.0 GC?

    Certainly that’s one of the most frequently asked questions I get (at the PDC too!). So since PDC already happened I can tell the rest of you about the new stuff happened in GC in CLR 2.0. The slides can be downloaded here . And I will be referring to...
  • Maoni's WebLog

    GC talk at the 2005 PDC

    I will be giving a GC talk at the PDC this September. This talk is to give you a close up view of the CLR GC so I hope to see all you hard core .NET developers there! I will talk about some internal details of generations, allocations, different flavors...
  • Maoni's WebLog

    Using GC Efficiently – Part 4

    In this article I’ll talk about things you want to look for when you look at the managed heap in your applications to determine if you have a healthy heap. I’ll touch on some topics related to large heaps and the implications you want to be aware of when...
  • Maoni's WebLog

    Using GC Efficiently – Part 3

    In this article I’ll talk about pinning and weak references – stuff related to GC handles. (I was planning on talking about finalization in this part of the “Using GC Efficiently” series but since I already covered it in pretty much detail in one of my...
  • Maoni's WebLog

    Tools that help diagnose managed memory related issues

    I was writing an internal wiki page on performance and thought this info is useful to many external readers as well so here it goes. vadump is a good start. It’s an mstools tool – meaning you can find it on your NT CD under bin\mstools. You can take a...
  • Maoni's WebLog

    Clearing up some confusion over finalization and other areas in GC

    In the WinDev conference that I just went to, there seems to be some confusion over finalization (such as why it even exists and etc) and other areas. I hope the following will clear up that confusion. If not, let me know. Finalization 1) Why we have...
  • Maoni's WebLog

    Using GC Efficiently – Part 2

    In this article I’ll talk about different flavors of GC, the design goals behind each of them and how they work differently from each other so you can make a good decision of which flavor of GC you should choose for your applications. Existing GC flavors...
  • Maoni's WebLog

    WinDev in Boston

    I am going to WinDev this year to give 2 performance talks. Check out: (it's from Oct 25 to 29) Below is the description: C5 - CLR Performance Write faster managed code! Learn about performance engineering, tools...
  • Maoni's WebLog

    Using GC Efficiently – Part 1

    So the goal here is to explain the cost of things so you can make good decisions in your managed memory usage – it’s not to explain GC itself - it’s to explain how to use it. I assume most of you are more interested in using a garbage...
  • Maoni's WebLog

    Hello World

    Yep, now I have a blog too. I work on the CLR Performance Team so naturally I will be writing about performance.
  • Maoni's WebLog

    GC Performance Counters

    There are many .NET Memory Performance Counters and this is meant to give you some guidelines in interpreting the counter data and how to correlate them. This assumes you have a basic understanding of GC. First thing you may want to look at is “% Time...
Page 2 of 2 (42 items) 12