Richard Kilmer
2/28/2008 9:14:00 PM
On Feb 28, 2008, at 3:40 PM, Laurent Sansonetti wrote:
> On Thu, Feb 28, 2008 at 2:49 AM, Charles Oliver Nutter
> <charles.nutter@sun.com> wrote:
>> Laurent Sansonetti wrote:
>>> Hi,
>>>
>>> I am honored to announce the beginning of the MacRuby project!
>>
>> Can you talk about about expected performance? I imagine it's still
>> early days for the project, but being based on 1.9 I'd expect
>> performance to be somewhat similar. However on a few quick benchmarks
>> I've run it seems there's some degradation in MacRuby over Ruby 1.9.
>> Have you started to look at execution performance much yet?
>
> Yes I have been looking at some benchmarks, a few weeks ago. In
> benchmarks measuring object creation, MacRuby is slower because
> allocating an object in vanilla Ruby is cheap. On the other side, GC
> cycles seem to be faster.
>
> But it's definitely early to compare performances yet. And there are a
> few things we can do in MacRuby to improve allocations, and more.
>
> Laurent
>
The most important thing for me re: performance in MacRuby is how
well the Ruby code performs for OS X applications, and since MacRuby
has no bridging costs the performance is exceedingly better than the
performance of bridged runtimes (like RubyCocoa).
What's nice is you can still drop into C or Objective-C trivially with
MacRuby if performance is critical but for most application logic
MacRuby will be quick enough I think.
For server based applications that are mostly pure Ruby (like
Rails) the raw Ruby performance numbers are important, but it is early
and I think performance will pick up.
One cool thing Apple did with the MacRuby GC was have it execute
in a background native thread so garbage collection does not lock
up the program execution flow.
Rich