tally kicks MRI's ass performance-wise. Reality is not so
cool though: applications are typically a tad slower on JRuby than on
MRI.
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://
, it blows permgen out of all
proportion. Not surprising, since each JITed method requires its own
class and classloader, Mingle has a lot of methods, and there are 9
copies of everything. Sigh...
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://r
ny problems, I shall fix them pronto.
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://rubyworks.thoughtworks.com]
-
To unsubscribe from this list please visit:
http://xircle
rev 5284
Reporter: Alexey Verkhovsky
This script leaks several kilobytes per iteration:
{quote}
loop do
previous = trap('TERM') { }
trap('TERM', previous)
end
{quote}
Ola and myself are working on a fix.
Critical importance of this issue is in the fact th
Project: JRuby
Issue Type: Bug
Environment: JRuby rev 5230
Reporter: Alexey Verkhovsky
Assignee: Thomas E Enebo
1. create a skeleton Rails app
2. try to run it with +C option. Enjoy the fireworks.
[EMAIL PROTECTED]:~/src$ rails foo
...
[EMAIL PROTECTED]:~/s
[PATCH] Bad format for "frozen" error messages
--
Key: JRUBY-1706
URL: http://jira.codehaus.org/browse/JRUBY-1706
Project: JRuby
Issue Type: Bug
Reporter: Alexey
ago. Not anymore. However, it's still 3 times slower
than Java Petstore. So, yeah, ioptimizing anything in the runtime is
largely a death by thousand cuts by now. Either that, or awe-inspiring
heroics, like regex replacement and Ruby compiler.
--
Alexey Verkhovsky
CruiseCo
On Nov 10, 2007 9:36 PM, Ola Bini <[EMAIL PROTECTED]> wrote:
> I would definitely be available. =)
+1
-
To unsubscribe from this list please visit:
http://xircles.codehaus.org/manage_email
+1, same reasons as Tom (in a nutshell, people don't read manuals).
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://rubyworks.thoughtworks.com]
-
To unsubscribe from this
On 10/23/07, Eric Armstrong <[EMAIL PROTECTED]> wrote:
>How did you get tasks named "safe:clean", etc?
namespace :foo do
task :bar do
...
end
end
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://rubywor
Reporter: Alexey Verkhovsky
Assignee: Thomas E Enebo
Priority: Minor
[EMAIL PROTECTED]:~$ jruby -e 'ARGF.rewind' /etc/passwd
-e:1: Illegal seek (Errno::ESPIPE)
[EMAIL PROTECTED]:~$
[EMAIL PROTECTED]:~$ ruby -e 'ARGF.rewind' /etc/passwd
[EMAIL PROTECTED]:~$
: JRuby 1.x
Environment: trunk rev 4652, Ubuntu 7 Linux
Reporter: Alexey Verkhovsky
Assignee: Thomas E Enebo
Priority: Minor
system() treats < as an argument, not as an STDIN redirect.
[EMAIL PROTECTED]:~/src/jruby$ jruby -e "system %{jruby -e
: trunk rev 4628
Reporter: Alexey Verkhovsky
Assignee: Thomas E Enebo
[EMAIL PROTECTED]:~/src/jruby/test$ jruby -e 'argf = ARGF.clone'
# no problem
[EMAIL PROTECTED]:~/src/jruby/test$ jruby -S irb
irb(main):001:0> argf = ARGF.clone
Exception in
On 10/16/07, Christian Seiler <[EMAIL PROTECTED]> wrote:
> I don't really know what to do. One thing that worries me a bit is that all
> of you guys seem to be using
> OS-X
Nope, I'm doing all this on a Dell D620 running Ubuntu.
--
Alexey Verkhovs
> On 10/15/07, Chris Nelson <[EMAIL PROTECTED]> wrote:
> > don't guess". It seems like we could do something fairly easily using the
> > eventHook stuff we've been using for jruby-debug,
There are beginnings of a sampling profiler on the trunk, since about
, not Petstore does eval() repeatedly.
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://rubyworks.thoughtworks.com]
-
To unsubscribe from this list please visit:
http://x
Components: Core Classes/Modules
Environment: rev 4585
Reporter: Alexey Verkhovsky
While running Petstore shootout, I sometimes get the following error:
Exception in thread "Ruby Thread24493807"
java.util.ConcurrentModificationException
at java.ut
Reporter: Alexey Verkhovsky
Attachments: smarter_method_caching.patch
Attached patch makes Petstore under Mongrel-jruby about 10% faster, by doing
the following:
1. RubyModule.includeModule() clear CacheMap and MethodCache selectively,
instead of wholesale.
2. clearing
1.0 branch, but still present in
1.0.1 release.
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://rubyworks.thoughtworks.com]
-
To unsubscribe from this list p
Two questions:
1. Did you pass -J-Djruby.objectspace.enabled=false ?
2. Do you see the benchmarking script do JIT warmup when running under JRuby?
Charles: yep, I didn't change any settings other than jruby.objectspace.enabled.
--
Alexey Verkhovsky
CruiseControl.rb
On 9/25/07, Nick Sieger <[EMAIL PROTECTED]> wrote:
> On 9/25/07, Alexey Verkhovsky <[EMAIL PROTECTED]> wrote:
> I'm having trouble seeing the difference from your table below.
Can you open the spreadsheet I sent in a follow up message?
If not, the first two columns are fo
On 9/24/07, Alexey Verkhovsky <[EMAIL PROTECTED]> wrote:
> Some new numbers.
Attaching an OpenOffice spreadsheet.
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://rubyworks.thoughtworks.com]
jruby_rev4384_vs_MRI.ods
Description: ap
unk/ (rev 177).
Measuring:
Ruby: echo 'load "script/benchmark_action"' | ruby script/console production
JRuby: echo 'load "script/benchmark_action"' | jruby
-J-Djruby.objectspace.enabled=false script/console production
# replace production wi
/Modules
Environment: rev 4376
Reporter: Alexey Verkhovsky
Priority: Trivial
Numeric#initialize_copy() is public, should be private
Sending a patch to Ola
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the
Environment: rev 4376
Reporter: Alexey Verkhovsky
Priority: Minor
-4.0.remainder(2) returns 2.0, should be 0.0. I've got a patch already, Ola
will look at it and check in.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contac
ion 4361)
@@ -289,7 +289,6 @@
*/
public void sync() throws IOException {
flushWrite();
-channel.force(false);
}
public ByteList sysread(int number) throws IOException,
BadDescriptorException {
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thought
In the current trunk (4369), disabling logging makes less than 1 msec
difference in the response time of a Petstore page.
Also (once JIT compilation kicks in) logging an 80-character message
10,000 times takes 0.39 sec on JRuby and 0.35 sec on MRI.
Case closed, I guess :)
--
Alexey Verkhovsky
On 9/20/07, Thomas E Enebo <[EMAIL PROTECTED]> wrote:
> flushWrite will write to the channel
> and is not a local buffer.
Oops, missed that statement.
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://rubyworks.thou
ng the internal
buffer to OS level I/O buffer on write ensures that two *separate
processes*, writing to the same log file, will have their log entries
in the right order in the file. So, what will make that happen?
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontr
rite msg }}
-0.007927 sec
=> nil
*JRuby trunk *
irb(main):050:0> f = open('/tmp/foo', (File::WRONLY | File::APPEND))
=> #
irb(main):051:0> time { 1000.times { f.write msg }}
-0.0020 sec
=> nil
irb(main):052:0> f.sync = true
=> true
irb(main):053:0> time { 1000.t
On 9/4/07, Alexey Verkhovsky <[EMAIL PROTECTED]> wrote:
> > Can you try hitting like 100,000 to get an
> > idea if hotspot starts warming more.
> Sure.
>
> Actually, most time-consuming methods (from profiler point of view)
> get 5- or 6-digit number of hits durin
368
URL: http://jira.codehaus.org/browse/JRUBY-1368
Project: JRuby
Issue Type: Bug
Components: Miscellaneous
Environment: JRuby rev 4334
Reporter: Alexey Verkhovsky
Assignee: Thomas E Enebo
Priority: Minor
* MRI
I'll test it though.
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://rubyworks.thoughtworks.com]
-
To unsubscribe from this list please visit:
http://xircles.codehaus.org/manage_email
dContext,
RubyObject and such).
By the way, Petstore is a very simple Rails application. I'm going to
do some comparisons with a couple of much bigger apps TW is building,
we'll see how that stacks up. I won't be able to publish it, like
Petstore, but I'll try to at
ging disabled: 45 req/sec (!)
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://rubyworks.thoughtworks.com]
-
To unsubscribe from this list please visit:
http://xircles.codehaus.org/manage_email
ect: JRuby
Issue Type: Bug
Components: Core Classes/Modules
Environment: JRuby trunk rev 4246 (but also observed on earlier
revisions)
Mongrel-jruby 1.0.1
Reporter: Alexey Verkhovsky
When running Apache Benchmark tests against Petstore from tw-commons, I
sometimes
dspike.
OK, change of wording. I have to make it all play together on my rig. :)
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://rubyworks.thoughtworks.com]
-
To unsubscri
first.
Another thing I am going to try in the next round is generating a much
larger dataset, so that Petstore has to display more data on the page.
Does anybody have any more suggestions? To remind, I'm looking for
factors that have a large impact on JRuby Rails performance.
--
Alexey
abase sessions: 14 requests/sec
Turned off ObjectSpace (jruby -O): 16 requests/sec
Server VM (jruby -O -J-server): 16 requests/sec
With disabled logging: 33 requests/sec
* To turn off logging, add RAILS_DEFAULT_LOGGER.level = Logger::FATAL
to config/environments/production.rb
--
Alexey Verkh
lowly and cautiously, through deprecation.
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://rubyworks.thoughtworks.com]
-
To unsubscribe from this list please visit:
rpret and profile this way. That's why I'm using ab. When get
that 8-cores box, we'll start doing something more interesting.
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://ru
ct=K9-DL-01
* Test:
ab -c 1 -n 100 http://localhost:3002/shop/viewProduct.shtml?product=K9-DL-01
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://rubyworks.thoughtworks.com]
---
Environment: JRuby trunk (rev 4178)
JVM 1.6.0-b105
Ubuntu 7.0 desktop
PetStore Rails app : http://tw-commons.rubyforge.org/svn/trunk/ : rev 21
Reporter: Alexey Verkhovsky
Assignee: Thomas E Enebo
Priority: Critical
Trying to run PetStore from tw-commons under
-extras
Affects Versions: JRuby 1.x
Environment: JRuby trunk, rev 4178
JVM 1.6.0-b105
Ubuntu 7.0 desktop
mongrel-1.0.1-jruby.gem
Rails 1.2.3
skeleton Rails app produced by 'rails foo'
Reporter: Alexey Verkhovsky
Assignee: Thomas E Enebo
run jruby scr
average Rails app would take
290 Mb instead of 300, woohoo...
10 megabytes per runtime is where the difference would become noticeable.
--
Alexey Verkhovsky
CruiseControl.rb [http://cruisecontrolrb.thoughtworks.com]
RubyWorks [http://rubyworks
On 8/10/07, Charles Oliver Nutter <[EMAIL PROTECTED]> wrote:
> Dmitry Verkhovsky wrote:
> If cc.rb under JRuby could give us all the various CI runs we want
> reliably indicating failures rather than giving us all sorts of false
> positives
> it would already be ahead
Hey, Charles. It depends on
On 6/14/07, Tim Bray <[EMAIL PROTECTED]> wrote:
Even better, bloody well use parentheses, then you don't have to
clutter up your memory with this junk. Nor do the people who will
have to read your code. -Tim
Stuff like
render :text => 'foo' and return
is widely used. As in "I've seen it in
On 5/31/07, Eric Armstrong <[EMAIL PROTECTED]> wrote:
Ruby Code:
- always use && and ||, not 'and' and 'or'
Why is that? For consistency with Java? Or is there
some other benefit?
This is a convention in Rails core. Its origin is that 'and' and 'or'
have priority lower than && and ||, and lo
On 5/23/07, Charles Oliver Nutter <[EMAIL PROTECTED]> wrote:
I don't know about the steaming gem
It was a joke! :)
-
To unsubscribe from this list please visit:
http://xircles.codehaus.org/manage_email
On 5/23/07, Charles Oliver Nutter <[EMAIL PROTECTED]> wrote:
> There's the obvious approach, as in http://www.tbray.org/tmp/jr.png -Tim
Steaming gem? :)
Seriously guys, you are Sun Microsystems. Don't you have a decent
visual designer at hand when you need one?
Alex
On 5/23/07, Nick Sieger <[EMAIL PROTECTED]> wrote:
I vote for removing it.
Or make it lazy. If there is no resource, just parse the script
(instead of failing).
Anyone should be able to run JRuby in an IDE, and those resources are
what makes it somewhat hard right now.
Alex
-
On 5/22/07, Charles Oliver Nutter <[EMAIL PROTECTED]> wrote:
With the
compiler enabled and fully compiling, we are faster than MRI
Ha, but of course. With a compiler you just about eliminate that other
abstraction layer, or pay the price for it upfront, in compilation.
Anyway, this all is hand-w
On 5/22/07, Charles Oliver Nutter <[EMAIL PROTECTED]> wrote:
If you're running with code older than a few days ago
Why would I? Of course not. I'm doing svn up as often as I can.
, you won't see JIT
compiled methods in -rprofile.
Nope, and I don't see them in Java profiler, either.
> Like I
On 5/22/07, Charles Oliver Nutter <[EMAIL PROTECTED]> wrote:
but if that's one of the primary performance issues for rdoc
Not sure if it will be a big win for RDoc. It may. Generally, making
sure that RDoc internals are JIT-compiled would certainly help. As a
matter of fact, I don't see -any- c
Hi all,
At Ola's request I've been trying to figure out why RDoc performance
is as bad as it is. Well, I don't see any cheap wins there, but here
are some observations:
1. RDoc is doing a ton of low-level byte pushing. Consider
RDoc::RubyParser#get_tk at rdoc/parsers/parse_rb.rb:1465 (which is
w
Hey, Charles,
Did you have a look at http://jira.codehaus.org/browse/JRUBY-972 ?
This seems heinous enough to warrant "must be fixed before 1.0" status
(interpreter error causing an endless loop in RDoc).
--
Alex Verkhovsky
-
T
Reporter: Alexey Verkhovsky
Priority: Critical
My theoretical foo is weak, so apologies for expressing this in vague terms.
However... bear with me, this is a very serious bug.
Running the following command in JRuby:
jruby `which rdoc`
~/src/jruby/jruby/lib/ruby/1.8/rdoc/generators
On 4/28/07, Charles Oliver Nutter <[EMAIL PROTECTED]> wrote:
Unless you've turned [the JIT compiler] on
No, I did not.
However there is at least one known issues with returns leaking
out, and you've probably stumbled across it.
Is the rescue block trying to catch LocalJumpError?
It's a catch
Hi all,
This is what I am getting when I try to run CruiseControl.rb builder
process with jRuby trunk rev. 3586:
[EMAIL PROTECTED]:~/src/ccrb$ jruby script/builder FailingProject --trace
[debug] Loading plugin project_logger
[debug] Loading plugin email_notifier
[debug] Loading plugin builder_st
59 matches
Mail list logo