You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@beehive.apache.org by "jamie zyskowski (JIRA)" <be...@incubator.apache.org> on 2004/12/01 21:55:20 UTC
[jira] Created: (BEEHIVE-106) Controls Perf Regression: 3X increase in scenario times
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
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
[jira] Closed: (BEEHIVE-106) Controls Perf Regression: 3X increase in scenario times
Posted by "jamie zyskowski (JIRA)" <be...@incubator.apache.org>.
[ http://issues.apache.org/jira/browse/BEEHIVE-106?page=history ]
jamie zyskowski closed BEEHIVE-106:
-----------------------------------
closing
> Controls Perf Regression: 3X increase in scenario times
> -------------------------------------------------------
>
> Key: BEEHIVE-106
> URL: http://issues.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://issues.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
[jira] Assigned: (BEEHIVE-106) Controls Perf Regression: 3X increase in scenario times
Posted by "Kenneth Tam (JIRA)" <be...@incubator.apache.org>.
[ 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
[jira] Resolved: (BEEHIVE-106) Controls Perf Regression: 3X increase in scenario times
Posted by "jamie zyskowski (JIRA)" <be...@incubator.apache.org>.
[ http://issues.apache.org/jira/browse/BEEHIVE-106?page=history ]
jamie zyskowski resolved BEEHIVE-106:
-------------------------------------
Resolution: Fixed
i've updated the control scenarios to use the @Threading(ThreadingPolicy.MULTI_THREADED) and added a new control/scenario pair that uses a control with SINGLE_THREADED. With the latter, their is significant overhead compared to the former. I'll look into this and open a new issue if required.
> Controls Perf Regression: 3X increase in scenario times
> -------------------------------------------------------
>
> Key: BEEHIVE-106
> URL: http://issues.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://issues.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
[jira] Assigned: (BEEHIVE-106) Controls Perf Regression: 3X increase in scenario times
Posted by "jamie zyskowski (JIRA)" <be...@incubator.apache.org>.
[ http://nagoya.apache.org/jira/browse/BEEHIVE-106?page=history ]
jamie zyskowski reassigned BEEHIVE-106:
---------------------------------------
Assign To: Kyle Marvin
just got permission to assign bugs
> 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: Kyle Marvin
>
> 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
[jira] Assigned: (BEEHIVE-106) Controls Perf Regression: 3X increase in scenario times
Posted by "Kyle Marvin (JIRA)" <be...@incubator.apache.org>.
[ http://nagoya.apache.org/jira/browse/BEEHIVE-106?page=history ]
Kyle Marvin reassigned BEEHIVE-106:
-----------------------------------
Assign To: Kenneth Tam (was: Kyle Marvin)
Ken, the revision # that Jamie cites is the one where you did the thread safety changes. This was my initial suspicion, but when I discussed it w/ him he said that the tests are single-threaded so this didn't jibe. If true, it's not clear to me how/why this has caused a perform decrease, unless it somehow relates to some change in initialization processing overhead.
I'm wondering if perhaps this is somehow related to lazy instantiation, and a test case where previously we didn't instantiate the impl instance but now do.
> 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: Kenneth Tam
>
> 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
[jira] Assigned: (BEEHIVE-106) Controls Perf Regression: 3X increase in scenario times
Posted by "jamie zyskowski (JIRA)" <be...@incubator.apache.org>.
[ http://nagoya.apache.org/jira/browse/BEEHIVE-106?page=history ]
jamie zyskowski reassigned BEEHIVE-106:
---------------------------------------
Assign To: Kyle Marvin (was: jamie zyskowski)
looks like it's introduced with rev106983
> 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: Kyle Marvin
>
> 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
[jira] Assigned: (BEEHIVE-106) Controls Perf Regression: 3X increase in scenario times
Posted by "Kyle Marvin (JIRA)" <be...@incubator.apache.org>.
[ http://nagoya.apache.org/jira/browse/BEEHIVE-106?page=history ]
Kyle Marvin reassigned BEEHIVE-106:
-----------------------------------
Assign To: jamie zyskowski (was: Kyle Marvin)
Jamie is going to try and narrow the changelist window down, and then kick it back to me.
> 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