<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">
<div>On Apr 24, 2008, at 11:29 AM, Charles Oliver Nutter wrote:</div><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; min-height: 14px; "><span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">I know resources are a problem, but is there any thought going towards </span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">improving switch performance? I know at least one JRuby team member that </font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">could provide some pretty unpleasant benchmark results that show the </font></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><font face="Helvetica" size="3" style="font: normal normal normal 12px/normal Helvetica; ">pain we're facing.</font></div></blockquote><div><br></div>That would be a great first project for a new hotspot programmer.<div><br></div><div>The present set of Sun engineers is a couple hundred feet underwater, and the upward view shows a number of such optimization projects, large and small, floating in the sunlight, out of our present reach. We are not limited by our vision, but by our numbers.</div><div><br></div><div>Another difficulty is that it generally takes people a year or two to get comfortable with the details of the compilers (server and client JIT). But the fastest way in is total immersion (to continue the aqueous metaphor).<br><div><br></div><div>I personally would enjoy helping someone improve the collection and use of profiling information in hotspot, for switches. Especially if it would make bytecode interpreters go faster (most especially, RE engines).</div><div><br></div><div>The first step is to file a bug report (on bad performance of switch), with test code. The next step is to study the materials on contributing to OpenJDK.</div><div><br></div><div><a href="http://openjdk.java.net/contribute/">http://openjdk.java.net/contribute/</a></div><div><br></div><div>-- John</div></div></body></html>