CLR 4.5: Maoni Stephens - Server Background GC
- Posted: Sep 21, 2011 at 10:24 AM
- 52,790 Views
- 11 Comments
Loading User Information from Channel 9
Something went wrong getting user information from Channel 9
Loading User Information from MSDN
Something went wrong getting user information from MSDN
Loading Visual Studio Achievements
Something went wrong getting the Visual Studio Achievements
Right click “Save as…”
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.
Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation,
please create a new thread in our Forums,
or
Contact Us and let us know.
Follow the Discussion
Oops, something didn't work.
What does this mean?
Following an item on Channel 9 allows you to watch for new content and comments that you are interested in. You need to be signed in to Channel 9 to use this feature.What does this mean?
Following an item on Channel 9 allows you to watch for new content and comments that you are interested in and view them all on your notifications page.sign up for email notifications?
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 ?
http://research.microsoft.com/apps/video/default.aspx?id=103698&l=i
Azul (who did a magical pauseless GC for Java (with special hardware)) has a Managed Runtime Initiative project
http://www.managedruntime.org/ the paper http://www.managedruntime.org/webfm_send/4
how did this project impact Microsoft ?
@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...
C
i've increasingly noticed charles really likes to say "rock on", "right on" and "rock n' roll".
Nice keyboard..
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.
@eatfrog: I've noticed that, too. Particularly the rock-and-roll part. Not sure what's going on with Charles (well, me). Hmm...
C
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!
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.
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.
@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.
C
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.
Remove this comment
Remove this thread
close