Several TBuffer functions are made virtual by default. This change is required for the new XML implementation that implements a class TXmlBuffer deriving from TBuffer. This change has some impact on the performance, in particular when reading non-compressed files. We expect to regain this loss in a future version with a further optimisation of the function TStreamerInfo::Compile. The table below indicates the loss in performance on some machines.
Several TBuffer functions are made virtual by default.
This change is required for the new XML implementation
that implements a class TXmlBuffer deriving from TBuffer.
This change has some impact on the performance, in particular
when reading non-compressed files. We expect to regain
this loss in a future version with a further optimisation
of the function TStreamerInfo::Compile.
The table below indicates the loss in performance
on some machines.

                    normal     virtual   penalty
Linux gg3.2
stress -b 30          752rm     732rm      2.7%
stress -b 1000        628rm     623rm      0.8%
bench -b -q           624rm     602rm      3.5%
Event 5000 0 0 1     24.74s     25.67s     3.8%
Event 5000 0 0 20     7.49s      8.45s    12.8s
Event 5000 1 0 1     54.21s     55.12s     1.7%
Event 5000 1 0 20    15.58s     16.75s     7.5%
Event 5000 0 9 1     23.50s     24.24s     3.1%
Event 5000 0 9 20     7.38s      8.29s    12.3%
-----------------------------------------------
windows/VC++7.0
stress -b 30          860rm     843rm      1.9%
stress -b 1000        749rm     726rm      3.1%
bench -b -q           714rm     693rm      2.9%
Event 5000 0 0 1     18.85s     19.09s     1.3%
Event 5000 0 0 20     6.40s      7.03s     9.8%
Event 5000 1 0 1     44.07s     45.18s     2.5%
Event 5000 1 0 20    10.20s     11.05s     8.3%
-----------------------------------------------
sgi/cc
stress -b 30         194rm      192rm      1.1%
stress -b 1000       177rm      171rm      3.5%
bench -b -q          186rm      183rm      1.6%
Event 5000 0 0 1     74.82s     80.49s     7.6%
Event 5000 0 0 20    29.37s     35.54s    21.0%


git-svn-id: ecbadac9c76e8cf640a0bca86f6bd796c98521e3@8829 27541ba8-7e3a-0410-8455-c3a389f83636

bbannier/ROOT,dawehner/root,bbannier/ROOT,dawehner/root,dawehner/root,bbannier/ROOT,bbannier/ROOT,dawehner/root,dawehner/root,dawehner/root,bbannier/ROOT,bbannier/ROOT,bbannier/ROOT,dawehner/root,dawehner/root