<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Drogomir: mod_rubinius</title>
    <link>http://blog.drogomir.com/articles/2008/01/31/mod_rubinius</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description></description>
    <item>
      <title>mod_rubinius</title>
      <description>&lt;p&gt;Jaki&#347; czas temu pisa&#322;em ,&#380;e &lt;a href="http://blog.drogomir.com/articles/2008/01/10/zmiany-w-deploymencie-ruby-on-rails-na-horyzoncie"&gt;mog&#261; szykowa&#263; si&#281; zmiany w deploymencie rails&#243;w&lt;/a&gt;. Dzisiaj przeczyta&#322;em, &#380;e &lt;a href="http://www.novemberain.com/2008/1/25/6th-fulltimer-to-work-on-rubinius-will-be-doing-mod_rubinius-for-nginx-and-apache"&gt;Ezra Zygmuntowicz zatrudni&#322; sz&#243;stego programist&#281;&lt;/a&gt;, kt&#243;rego zadaniem b&#281;dzie praca nad mod_rubinius dla serwer&#243;w Nginx i Apache. Wi&#281;cej w &lt;a href="http://railspodcast.dreamhosters.com/system/audio/2008/rails-064-ezra-zygmuntowicz.mp3"&gt;podca&#347;cie z udzia&#322;em Ezry&lt;/a&gt;&lt;/p&gt;


Ma&#322;y cytat:
&lt;blockquote&gt;
More interesting things from the podcast:

&lt;ul&gt;
  &lt;li&gt;In like one night Evan Phoenix implemented a multiple Rubinius VM running in single OS process in native threads and passing each other messages like it happens in Erlang). This can lead to a great solution to shared hostings and Ruby deployment problem David Hansson wrote about recently.&lt;/li&gt;
    &lt;li&gt; Rubinius may support native code compilation along side with bytecode that Rubinius VM can run. Sounds interesting. Ryan Davis is working on Rubinius at Engine Yard and his Ruby2C experiments may be useful.&lt;/li&gt;
&lt;/blockquote&gt;</description>
      <pubDate>Thu, 31 Jan 2008 10:09:00 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:37512f59-d7ad-46d3-b26f-1683e5ce504d</guid>
      <author>Piotr Sarnacki</author>
      <link>http://blog.drogomir.com/articles/2008/01/31/mod_rubinius</link>
      <category>Ruby on Rails</category>
      <category>ruby</category>
      <category>on</category>
      <category>rails</category>
      <category>rubinius</category>
      <category>mod_rubinius</category>
      <category>ezra</category>
      <category>zygmuntowicz</category>
      <category>deployment</category>
      <trackback:ping>http://blog.drogomir.com/articles/trackback/43</trackback:ping>
    </item>
    <item>
      <title>"mod_rubinius" by Radarek</title>
      <description>&lt;p&gt;ps. benchmark oczywi&#347;cie nie dotyczy zdania &amp;#8220;Przyk&#322;adowo operacje na stringach s&#261; w tej chwili oko&#322;o 55x wolniejsze.&amp;#8221;, ale og&#243;lnie pokazuje &#380;e jest co optymalizowa&#263;.&lt;/p&gt;</description>
      <pubDate>Thu, 31 Jan 2008 18:52:56 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:5ced3a10-a945-4f3d-ae88-a978d09b1e1c</guid>
      <link>http://blog.drogomir.com/articles/2008/01/31/mod_rubinius#comment-262</link>
    </item>
    <item>
      <title>"mod_rubinius" by Radarek</title>
      <description>&lt;p&gt;Tak&#380;e &#347;ledz&#281; poczynania Rubiniusa i jego tw&#243;rc&#243;w i wszystko idzie w dobrym kierunku. Jednak p&#243;ki co Rubinius nie nadaje si&#281; do produkcyjnego u&#380;ycia. Zar&#243;wno je&#347;li chodzi o stabilno&#347;&#263;, a tak&#380;e o wydajno&#347;&#263;. W microbenchmarkach Rubinius jest szybszy od MRI 1.8.6, jednak w wi&#281;kszych aplikacjach (jak ju&#380; uda si&#281; je odpali&#263;) nie jest tak r&#243;&#380;owo. Przyk&#322;adowo operacje na stringach s&#261; w tej chwili oko&#322;o 55x wolniejsze. Prosty benchmark:&lt;/p&gt;


&lt;pre&gt;
==========
require "benchmark" 
include Benchmark

module Kernel
  # rubinius is missing this method... (needed by benchmark module)
  class &amp;lt;&amp;lt; self
    alias :format :sprintf
  end
end

a = (1..100_000).to_a.map! {|e| rand(10000) }
bm(10) do |make|
  make.report do
    a.sort!
  end
end
===========
$ ruby1.8 test.rb
                user     system      total        real
            0.130000   0.000000   0.130000 (  0.141255)
$ ruby1.9 test.rb
                user     system      total        real
            0.080000   0.000000   0.080000 (  0.090821)
$ rubinius test.rb 
                user     system      total        real
           11.579243   0.000000  11.579243 ( 11.579231)
$ jruby -J-server -J-Djruby.compile.mode=FORCE test.rb
                user     system      total        real
            1.101000   0.000000   1.101000 (  1.014000)
===========
&lt;/pre&gt;

	&lt;p&gt;(dla jruby to za ma&#322;y test &#380;eby m&#243;g&#322; si&#281; rozgrza&#263;)&lt;/p&gt;


	&lt;p&gt;Oczywi&#347;cie nie oznacza to, &#380;e rubinius b&#281;dzie wolny. Po prostu p&#243;ki co skupiaj&#261; si&#281; &#380;eby powsta&#322;a wersja 1.0, kt&#243;ra b&#281;dzie dzia&#322;a&#263;. W kwestii wydajno&#347;ci nie robili prawie nic.&lt;/p&gt;


	&lt;p&gt;Dlatego uzbrajamy si&#281; w cierpliwo&#347;&#263; i czekamy na kolejne wie&#347;ci z EY ;).&lt;/p&gt;</description>
      <pubDate>Thu, 31 Jan 2008 18:49:53 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:f81866ee-3f84-4508-9bde-73062bb8fd11</guid>
      <link>http://blog.drogomir.com/articles/2008/01/31/mod_rubinius#comment-261</link>
    </item>
  </channel>
</rss>
