Hi.

This is great. I guess there is still major problems with SourceForge CVS, since there doesn't seem to be any updates in the open repository?

/O

At 23:01 2006-04-09, you wrote:
  I committed changes to make RubyString use a StringBuffer instead of
a String.  This should make a large difference in the code in question.
I also fixed a bunch of String functions while I was at it.

-Tom

On Sat, 08 Apr 2006, Thomas E Enebo defenestrated me:

>   Actually, I think I have the major performance problem figured out....
> String concatenation.  The result << line is the major time sucker
> in this.  On my laptop when I change RubyString to use a
> StringBuffer instead of String a 10,000 line file takes
> 0.6 seconds to run while it takes 242 seconds as a String.
> The full gemspec runs in about 6 seconds versus 0.21 in ruby so
> we are still a ways off, but it seems closer to general
> interpreter performance (e.g. eval'ing nodes).  Regexp creation
> probably is the only other measurable difference.
>
>   I am looking into doing this conversion now (I did a fairly naive
> modification that sucks for all the non-stringbuffer-friendly functions).
>
> -Tom
>
> On Sat, 08 Apr 2006, Ola Bini defenestrated me:
>
> > Ok, next point of interest, regexp substitions with String.sub
> > With my former optimizations for Regexps I got this:
> > D:\Project\jruby>ruby testRegSubPerformance.rb
> > Time1 0.581
> > Time2 0.58
> >
> > D:\Project\jruby>bin\jruby testRegSubPerformance.rb
> > Time1 8.623
> > Time2 5.428
> >
> > where the test is more or less similar to other one.
> > With the attached patch applied I get this:
> > D:\Project\jruby>bin\jruby testRegSubPerformance.rb
> > Time1 6.48
> > Time2 5.1770000000000005
> >
> > which is quite good. And the only difference was to replace a RubyString
> > with a StringBuffer in two lines which used append. I guess these small
> > kinds of optimizations could get us some good performance at last.
> >
> > Regards
> >  Ola Bini
> >
> >
> > ----- Original Message -----
> > From: Ola Bini <[EMAIL PROTECTED]>
> > Date: Saturday, April 8, 2006 11:27 am
> > Subject: Re: [Jruby-devel] Regexp performance.
> > To: jruby-devel@lists.sourceforge.net
> >
> > > Ok, the second approach gave a little bit more:
> > >
> > > D:\Project\jruby>bin\jruby testRegexpPerformance.rb
> > > Time1 5.168 for sum 150000
> > > Time2 3.9450000000000003 for sum 150000
> > >
> > > But it's still not great. Anyway, I've attached the patch if this is
> > > something we should continue work on.
> > >
> > > Regards
> > > Ola Bini
> > >
> > > ----- Original Message -----
> > > From: Ola Bini <[EMAIL PROTECTED]>
> > > Date: Saturday, April 8, 2006 11:23 am
> > > Subject: Re: [Jruby-devel] Regexp performance.
> > > To: jruby-devel@lists.sourceforge.net
> > >
> > > > Once again, a very small test where I replaced the
> > > Pattern.compile in
> > > > RegexpTranslator into a getPattern which saves all earlier
> > > patterns
> > > > in a
> > > > hashmap. This actually worsens the performance slightly, so that's
> > > > probably not the right way to go. I will try to apply this
> > > approach to
> > > > the whole RegexpTranslator.translate method instead and see what
> > > > happens.
> > > > Regards
> > > > Ola Bini
> > > >
> > > > ----- Original Message -----
> > > > From: Ola Bini <[EMAIL PROTECTED]>
> > > > Date: Saturday, April 8, 2006 10:53 am
> > > > Subject: [Jruby-devel] Regexp performance.
> > > > To: jruby-devel@lists.sourceforge.net
> > > >
> > > > > Hi there,
> > > > >
> > > > > I made a highly unscientific test of performance of regexps in
> > > Ruby> > compared to JRuby.
> > > > > The attached script is what I used to test this. The output is as
> > > > > follows for 100 000 repetitions of the same regexp applying:
> > > > > D:\Project\jruby>ruby testRegexpPerformance.rb
> > > > > Time1 0.201 for sum 150000
> > > > > Time2 0.22 for sum 150000
> > > > >
> > > > > D:\Project\jruby>bin\jruby testRegexpPerformance.rb
> > > > > Time1 5.698 for sum 150000
> > > > > Time2 3.986 for sum 150000
> > > > >
> > > > > This seems fairly good, actually, we're only an order of magnitude
> > > > > slower, which is not so bad if you think about all the stuff
> > > that's> > going on. The difference between Time1 and Time2 is what
> > > happens
> > > > if I
> > > > > save the regexp in a variable before the loop, or not. As you
> > > can
> > > > see,> we could save pretty much performance here.
> > > > >
> > > > > Regards
> > > > > Ola Bini
> > > > >
> > > >
> > > >
> > > > -------------------------------------------------------
> > > > This SF.Net email is sponsored by xPML, a groundbreaking
> > > scripting
> > > > languagethat extends applications into web and mobile media.
> > > Attend
> > > > the live webcast
> > > > and join the prime developer group breaking into this new coding
> > > > territory!http://sel.as-
> > > >
> > >
> > us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642_______________________________________________
> > > > Jruby-devel mailing list
> > > > Jruby-devel@lists.sourceforge.net
> > > > https://lists.sourceforge.net/lists/listinfo/jruby-devel
> > > >
> > >
>
>
>
> --
> + http://www.tc.umn.edu/~enebo +---- mailto:[EMAIL PROTECTED] ----+
> | Thomas E Enebo, Protagonist  | "Luck favors the prepared    |
> |                              |  mind." -Louis Pasteur       |
>
>
> -------------------------------------------------------
> This SF.Net email is sponsored by xPML, a groundbreaking scripting language
> that extends applications into web and mobile media. Attend the live webcast
> and join the prime developer group breaking into this new coding territory!
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
> _______________________________________________
> Jruby-devel mailing list
> Jruby-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/jruby-devel

--
+ http://www.tc.umn.edu/~enebo +---- mailto:[EMAIL PROTECTED] ----+
| Thomas E Enebo, Protagonist  | "Luck favors the prepared    |
|                              |  mind." -Louis Pasteur       |


-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
Jruby-devel mailing list
Jruby-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jruby-devel





-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
Jruby-devel mailing list
Jruby-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jruby-devel

Reply via email to