Investigate ways to reduce the cost of RubyProc.call wrt block cloning
----------------------------------------------------------------------
Key: JRUBY-3463
URL: http://jira.codehaus.org/browse/JRUBY-3463
Project: JRuby
Issue Type: Bug
Components: Performance
Reporter: Charles Oliver Nutter
Fix For: JRuby 1.3
For JRUBY-3451 I had to revert a performance fix that impacted calling procs
across threads. There's a performance degradation, because it will now have to
clone the source block for every call, but I could not see a simple way to fix
it in the short term.
A few ideas:
* Save the original thread ID, so that we only clone when called from another
thread
* Save one binding and lock against it when calling, but if other threads
encounter it locked they use a cloned copy instead. This would be a more
general fix, but would also introduce locking cost to every call.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email