InfoQ

News

JRuby Roundup: 1.1.1 with Profiler, Startup Performance Boost, GSoC '08

Posted by Werner Schuster on May 06, 2008 06:50 PM

Community
Java,
Ruby
Topics
Ruby on Rails ,
Performance & Scalability ,
JRuby
Tags
Open Source Project Releases ,
JRuby
The JRuby 1.1.1 release provides mostly bug fixes for JRuby 1.1, like a fix for a bug causing problems with IBM JDKs. See the release notes for a complete list of bug fixes and improvements.

One new feature is the --profile flag. This launches JRuby with JIP - The Java Interactive Profiler enabled. JIP is now part of the JRuby distribution and comes with configuration to make it work with JRuby's class loaders (JIP works using Java's instrumentation feature which allows modification of bytecodes). Note: JIP profiles the bytecode of the JRuby runtime and the bytecode generated at runtime.

Continuing the JRuby performance work, JRuby's Charles Nutter discovered a way to improve JRuby's startup performance:
I just committed a change to the JRuby startup scripts that boosts startup speed by almost 70% (for me). It loads the JRuby jars (and CLASSPATH) into bootclasspath instead of normal classpath, bypassing verification (and apparently other things, since this is way faster than -Xverify:none). It should also be a safe change; JRuby's core should have been verified a kajillion times before release, and code generated at runtime will be verified as normal.
JRuby is also represented in the Google Summer of Code (GSoC) 2008 with a few projects:

No comments

Watch Thread Reply

Educational Content

Bindings, Platforms, and Innovation

This presentation focuses on the Internet and separating myth from fact, history from the future, and the mundane from the imaginative. Bob Frankston presents a vision of what could and should be.

Orchestrating Long Running Activities with JBoss / JBPM

This article explores the use of JBoss and jBPM to implement design solutions that effectively address the issue of orchestrating long running activities.

Neo4j - The Benefits of Graph Databases

This presentation covers the use of graph databases as an optimal solution for data that is difficult to fit in static tables, rapidly evolving data or data that has a lot of optional attributes.

Realistic about Risk: Software development with Real Options

This session introduces Real Options and shows how it can help in running your project. Real Options is a decision-making process that can be used to manage risk.

Communication Flexibility Using Bindings

This article discusses the use of bindings on services and references (including the instance of non-configured bindings) as the means to implement SCA communications in a Web and SOA environment.

Writing DSLs in Groovy

After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.

Scaling Agile with C/ALM (Collaborative Application Lifecycle Management)

IBM Rational and InfoQ present, Scaling Agile with C/ALM, an eBook showing organizations how to become “finely tuned software delivery machines” by enabling team integration and scaling.

Concurrent Programming with Microsoft F#

Amanda Laucher presents a real life enterprise application written in F#. She shows actual code snippets, explaining design decisions and suggesting how to use some of the F# constructs.