Blog Post

CLR 4.5: Maoni Stephens - Server Background GC

Download this episode

Download Video


Maoni Stephens is the lead developer of the CLR's garbage collector (as you can imagine, she's a native(C/C++) developer). Here, she tells us about background GC for server-side .NET applications and services and also touches on improvements in large heap management, generally in the next release of .NET.

In the next release of .NET (4.5), managed server applications and services will reap the benefits of background collections. This is a feature the CLR team is excited about and for good reason. It means less pausing, better overall performance. In the 4.0 release, the client CLR supported background GC. You learned about that here (from Maoni). Moving this feature to the cloud (well, to the server-side) means more performance and less pausing for ASP.NET applications, for example. This is great news.

Tune in. Enjoy.



Available formats for this video:

Actual format may change based on video formats available and browser capability.

    The Discussion

    • User profile image

      Well, its all server side stuff in GC 4.5:(

      Apparently MSR and the TSI teams are playing with some more radical stuff on GC, which is a main problem for CLR in some scenarios, eg. in XNA, especially when modern C++ got share_ptr stuff, the GC makes .NET looking bad in some sense.

      Erez Petrank showed off a concurrent GC to MSR in 2008, how does these research projects impact the CLR GC ?

      Azul (who did a magical pauseless GC for Java (with special hardware)) has a Managed Runtime Initiative project the paper

      how did this project impact Microsoft ?

    • User profile image

      @felix9: No. The topic of this conversation is GC improvements for server-side .NET. Obviously, Maoni has made some improvements to the client GC, but that's not in scope here...


    • User profile image

      i've increasingly noticed charles really likes to say "rock on", "right on" and "rock n' roll". Big Smile

    • User profile image

      Nice keyboard.. Cool

      Generic Comment Image
    • User profile image

      Wow, what a great way to describe an article about the CLR, summing up all the important part, and even having place to repeat them.
      Next time don't forget to mention a 3rd time that thanks to C++, ASP.NET will have less PAUSE, maybe someone missed that part.

    • User profile image

      @eatfrog: I've noticed that, too. Particularly the rock-and-roll part. Not sure what's going on with Charles (well, me). Hmm...


    • User profile image

      Great work Maoni. I know optimizing the GC has to be brutally tough work given all the world's use cases. Every optimization is greatly appreciated. I heard the WindowsPhone meeting reminder go off in the beginning and thought it was mine.

      Btw, that keyboard is wild!

    • User profile image

      Cool stuff. It would be awesome if you could really go into the workings of the garbage collector in one episode. I mean explaining what the GC algorithm is doing on the whiteboard with pseudo code.

    • User profile image

      I enjoyed the indepth discussion of the GC changes in 4.5.

      I want to add that some of the interviewer's commentary is off-putting.  Native vs. managed to me is a subject of the right tool for the job.  I agree that native code is the tool for this particular job.  However, it's not necessary to hear comments like "Why would you use anything else?"  I say that because it distracts from the topic and is unprofessional.  Responses like "rock and roll" and "rock on" are also unprofessional.  It's okay to interject levity and personality, but that can be done without sounding like a YouTube video.

    • User profile image

      @tgrt: Fair enough. I agree that for some reason, unknown to me, I've been saying "rock and roll" a lot. Will try to catch myself. In terms of the native versus managed, this wasn't the point. I simply called out that Maoni is a native developer. She writes C++ all day, every day. Not a this versus that thing.


    • User profile image

      I work hard on reducing the number of threads in my server applications, and now you're adding more? I hope that the new threads aren't sitting around taking up memory most of the time.

    Comments closed

    Comments have been closed since this content was published more than 30 days ago, but if you'd like to send us feedback you can Contact Us.