JDK-6460014 : Tidy up task queues
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: 7
  • Priority: P5
  • Status: Closed
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2006-08-14
  • Updated: 2011-03-08
  • Resolved: 2011-03-08
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 6 JDK 7 Other
6u10Fixed 7Fixed hs11Fixed
Related Reports
Relates :  
Description
Right now, and after CR 6450584, there are three versions of the task queue code which are identical. It'd be nice to only have one generic version of the code and create wrappers for the versions we need.

Comments
EVALUATION We'll use templates to avoid code replication.
22-06-2007

SUGGESTED FIX The task queue and task queue sets were changed to use templates, so we only have one version of them. This removes around 600 lines of (replicated) code: Before: 676 2770 20660 taskqueue.cpp 659 2905 20854 taskqueue.hpp 1335 5675 41514 total After: 162 492 4524 taskqueue.cpp 509 2236 16015 taskqueue.hpp 671 2728 20539 total Before / after comparison in libjvm.so / jvm.dll sizes show that the changes do not have a noticeable impact. BEFORE AFTER DIFF ------------------------------------------------------------------------------ ./linux_amd64_compiler2/fastdebug/libjvm.so 15233051 15229270 -0.02% ./linux_amd64_compiler2/product/libjvm.so 9993811 9991688 -0.02% ./linux_i486_compiler1/fastdebug/libjvm.so 10541343 10538098 -0.03% ./linux_i486_compiler1/jvmg/libjvm.so 21969099 21976361 +0.03% ./linux_i486_compiler1/product/libjvm.so 5581155 5575944 -0.09% ./linux_i486_compiler2/fastdebug/libjvm.so 13483984 13481411 -0.02% ./linux_i486_compiler2/jvmg/libjvm.so 27707895 27716061 +0.03% ./linux_i486_compiler2/product/libjvm.so 7718633 7712494 -0.08% ./linux_i486_core/jvmg/libjvm.so 16510107 16518689 +0.05% ./linux_i486_core/product/libjvm.so 4297845 4290362 -0.17% ./solaris_amd64_compiler2/fastdebug/libjvm.so 53966056 53929392 -0.07% ./solaris_amd64_compiler2/jvmg/libjvm.so 45328288 45291104 -0.08% ./solaris_amd64_compiler2/product/libjvm.so 16063904 16066720 +0.02% ./solaris_amd64_core/jvmg/libjvm.so 26948872 26927224 -0.08% ./solaris_amd64_core/product/libjvm.so 8757112 8760296 +0.04% ./solaris_i486_compiler1/fastdebug/libjvm.so 35499036 35461900 -0.10% ./solaris_i486_compiler1/jvmg/libjvm.so 29681076 29646756 -0.12% ./solaris_i486_compiler1/product/libjvm.so 7704388 7708768 +0.06% ./solaris_i486_compiler2/fastdebug/libjvm.so 43502632 43461588 -0.09% ./solaris_i486_compiler2/jvmg/libjvm.so 36690068 36651580 -0.10% ./solaris_i486_compiler2/product/libjvm.so 10816264 10817432 +0.01% ./solaris_i486_core/jvmg/libjvm.so 21761340 21737340 -0.11% ./solaris_i486_core/product/libjvm.so 5742004 5745376 +0.06% ./solaris_sparc_compiler1/fastdebug/libjvm.so 44868692 44831432 -0.08% ./solaris_sparc_compiler1/jvmg/libjvm.so 32370280 32139984 -0.71% ./solaris_sparc_compiler1/product/libjvm.so 9652948 9654976 +0.02% ./solaris_sparc_compiler2/fastdebug/libjvm.so 51550900 51505332 -0.09% ./solaris_sparc_compiler2/jvmg/libjvm.so 38421812 38414512 -0.02% ./solaris_sparc_compiler2/product/libjvm.so 12259292 12262568 +0.03% ./solaris_sparc_core/jvmg/libjvm.so 23804164 23906276 +0.43% ./solaris_sparc_core/product/libjvm.so 7131020 7135360 +0.06% ./solaris_sparcv9_compiler2/fastdebug/libjvm.so 53668488 53525984 -0.27% ./solaris_sparcv9_compiler2/jvmg/libjvm.so 42047240 42005912 -0.10% ./solaris_sparcv9_compiler2/product/libjvm.so 13172656 13175216 +0.02% ./solaris_sparcv9_core/jvmg/libjvm.so 26202952 26201032 -0.01% ./solaris_sparcv9_core/product/libjvm.so 7430320 7516816 +1.16% ./windows_amd64_compiler2/fastdebug/jvm.dll 8916480 8915456 -0.01% ./windows_amd64_compiler2/product/jvm.dll 5137408 5136896 -0.01% ./windows_i486_compiler1/fastdebug/jvm.dll 4599808 4595712 -0.09% ./windows_i486_compiler1/product/jvm.dll 2314240 2314240 +0.00% ./windows_i486_compiler2/fastdebug/jvm.dll 6041600 6037504 -0.07% ./windows_i486_compiler2/product/jvm.dll 3358720 3358720 +0.00% ./windows_i486_core/fastdebug/jvm.dll 3440640 3440640 +0.00% ./windows_i486_core/product/jvm.dll 1753088 1748992 -0.23% Alacrity before/after results can be found here: http://alacrity.ireland/query/enes.jsp?VersionSelector_baseline=1.6.0%7Cb104Tony-ParentWS-061110190642-13754&rwver_base=%25&VersionSelector=1.6.0%7Cb104Tony-TemplateWS-061110190854-20104&rwver_build=%25&esum=Summary&pval=0.01&type_baseline=o&type_build=o
22-06-2007