Re: GC pros and cons
Re: GC pros and cons
- Subject: Re: GC pros and cons
- From: Bill Bumgarner <email@hidden>
- Date: Thu, 25 Jun 2009 21:28:40 -0500
On Jun 25, 2009, at 9:20 PM, Rob Keniger wrote:
In single-core systems, even on the Mac, performance of Garbage
Collected code is very poor because the collector has to share CPU
time with the main thread. When Xcode 3 (a GC app) was first
released in the Leopard betas there were still quite a few people
with single-CPU PowerPC laptops who found that Xcode could barely
keep up with their typing. On dual-core machines it was fine.
I won't comment on anything iPhone related regarding GC and I would
ask that we keep the speculation off of the cocoa-dev list as it is
off-topic and unproductive.
To the above; When Xcode was first released in the Leopard betas,
Garbage Collection actually *didn't* run in a separate thread. That
wasn't ready yet and it was far more critical to get Xcode up and
running with GC on so as to shake out the entire system than it was to
optimize GC.
Thus, you are correct that the initial seeds of Xcode were pretty
darned slow, but they were pretty darned slow on multi-core systems,
too! The were doubleplus slow on single core systems, though, more
because of Xcodes use of thread and the lack of appropriate throttling
than because of GC.
By the time Leopard shipped, the collector had become significantly
more efficient and had been moved off to a separate thread. As well,
Xcode had also been tuned, along with a bunch of system frameworks,
and the overall performance was vastly improved.
Obviously, discussing details of Snow Leopard on cocoa-dev isn't yet
possible. If you want to know more about Snow Leopard specific
optimizations and have access, ask away in http://devforums.apple.com/.
b.bum
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden