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:
- RMagick for JRuby by Sergio Rodriguez Arbeo, mentor JRuby's Thomas Enebo. The project aims to get support for the RMagick library, which allows access to the popular ImageMagick. As mentioned in the project summary, there is already some support for RMagick available in JRuby Extras project, which hosts various libraries for JRuby.
- Useful Rails Benchmarks and JRuby Rails Perf Analysis by Sergey Vidyuk, mentor JRuby's Charles Nutter. The project aims to improve Rails performance on JRuby.