[ http://nagoya.apache.org/jira/browse/BEEHIVE-106?page=history ]
Kenneth Tam reassigned BEEHIVE-106:
-----------------------------------
Assign To: jamie zyskowski (was: Kenneth Tam)
Good catch. There are a few things going on here:
Change #109614 cleaned up the concerns re: lazy instantiation & threading.
With that change, the standalone (no ControlContainerContext) tests went back
to their original level of performance.
The addition of the @Threading annotation can now be used to control whether
the infrastructure implements per-call locking. By switching between
ThreadingPolicy.MULTI_THREADED and SINGLE_THREADED, you can see the cost of the
automatic per-call lock acquisition/release. Currently you can see it in the
jpf case only, because there's a bug where the infrastructure's automatic
locking doesn't work unless you have a ControlContainerContext in scope (I'm
fixing that right now).
> Controls Perf Regression: 3X increase in scenario times
> -------------------------------------------------------
>
> Key: BEEHIVE-106
> URL: http://nagoya.apache.org/jira/browse/BEEHIVE-106
> Project: Beehive
> Type: Bug
> Components: Controls
> Versions: V1Beta
> Environment: 2 x 2.8GHz | win2k | hotspot 1.5.0-b64
> Reporter: jamie zyskowski
> Assignee: jamie zyskowski
>
> description:
> The regression seems to have been introduced somewhere between rev76140 and
> rev109265. It occurs standalone and in a jpf/tomcat env. There are two
> scenarios that show the regression. The first uses a custom control that has
> one method which takes a string and returns the length of the string
> [StrlenPgmTest]. The second takes a variable number of integer args and
> returns the sum of their values [VarargsPgmTest]. Interestingly, a third
> scenario that takes an integer and returns a string of the int size does NOT
> show this regression [VarretPgmTest].
> steps to repro (standalone for simplicity):
> cd $BEEHVIE_HOME/controls/test/perf
> ant rebuild
> cd bin
> . ./perf.sh StrlenPgmTest
> expected result (within 20% of this time value):
> TEST: org.apache.beehive.controls.perf.standalone.StrlenPgmTest
> hash=-1989672960
> time=4026
> actual result:
> TEST: org.apache.beehive.controls.perf.standalone.StrlenPgmTest
> hash=-1989672960
> time=13938
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://nagoya.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira