On Tue, Sep 30, 2014 at 12:06 PM, vtamara <[email protected]> wrote:

> First thank you for your work with ruby on OpenBSD, I'm doing some
> projects on RoR with it.
>
> I have not tested much rubinius --just I see that some of my projects
> compile with rbx on travis-ci.
>
> However I notice:
> * Recent rbx supports mri 2.1  (http://rubini.us/doc/en/
> guides/migrating-from-mri-to-rubinius/)
>

First, this is false, rubinius does not implement the ruby 2.1 API.  There
are significant ruby 2.0 features that rubinius doesn't implement, such as
refinements.  It's basically ruby 2.1 minus the things rubinius doesn't
implement.


> * There are some good results in benchmarks for rbx compared to mri and
> even jruby -- http://miguelcamba.com/blog/2013/10/05/benchmarking-the-
> ruby-2-dot-1-and-rubinius-2-dot-0/


Those are probably using an LLVM-enabled rubinius, and our rubinius port
isn't LLVM-enabled as it doesn't support the version of LLVM in ports.
Performance for non-LLVM-enabled rubinius is significantly worse than MRI
or JRuby.   Truth be told, even when rubinius was LLVM-enabled, performance
wasn't good compared to MRI if you were using any C extensions.

 Since possibly you have more experience on this, do you think there is
noticiable difference

> for a Rails application when used with rbx over mri ?
>

It will be noticeably slower.  It's possible that multi-threaded code could
perform better (as rubinius does not have a giant lock like MRI does), but
that is unlikely.


> If that is the case I would like to test the ports *-rbx, for the projects
> I have I think I would test
> at least postgresql and bcrypt.
>

Testing is about all the rubinius port is really good for currently.  Note
that you can still build rbx-* versions of all of the ports manually using
FLAVOR=rbx, they will just no longer be built by default.

Yes, this is a pain if you want to test your code with rubinius, and I
probably do that more than any other OpenBSD user.  But as I mentioned in
my previous email, if we are no longer building ruby 1.8 and 1.9 ports, it
doesn't make sense to build rubinius ports.

Thanks,
Jeremy

Reply via email to