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

PDC 2008 happened not long ago so I get to write another “what’s new in GC” blog entry. For quite a while now I’ve been working on a new concurrent GC that replaces the existing one. And this new concurrent GC is called “background GC”. First of all let me apologize for having not written…

24

He’s live… he’s live not… he’s live…

I was making some code changes today and thought this was interesting to share. As you know, the WeakReference class has a getter and a setter method to get and set the Target which is what the weakref points to. See Using GC Efficiently – Part 3 for more details on WeakReference.   Note that…

10

Check out the CLR Lead Architect’s New Blog

Many people know Patrick Dussud by his outstanding work on Garbage Collection. But did you know he was one of the founders of the CLR? In his intro blog entry he talks about how the CLR came to life. I am sure it will be a great read for those of you who are curious…

7

New MSDN Article – Investigating Memory Issues

We have a new MSDN article out in the November issue that talks about investigating managed memory issues. http://msdn.microsoft.com/msdnmag/issues/06/11/CLRInsideOut/default.aspx?loc=en Take a look and let me know what you think. Oh, and it’s also in 6 other languages (German, Spanish, French, Russian, Portuguese and Chinese) for readers that prefer one of those languages.

10

I Am a Happy Janitor – Part 1: Finding garbage

Indeed what I do is very much like the job of the janitors – like the ones who clean your building, or janitors you see at a food court, or yourself when you are taking care of garbage at your house. Doubtful you say? Let me prove it to you.   Finding garbage   What…

21

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. But it’s true that suspending and resuming because of…

8

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).   The way LOH is implemented changed dramatically from 1.0…

21

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 some of the slides. I must…

19

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 of GC and fragmentation (what…

1

WinDev in Boston

I am going to WinDev this year to give 2 performance talks. Check out: http://butrain.bu.edu/windev/track2.asp (it’s from Oct 25 to 29) Below is the description: C5 – CLR PerformanceWrite faster managed code! Learn about performance engineering, tools and issues specific to managed code including: garbage collection (GC), managed code deployment and common managed code pitfalls. The…

2