Here are my results (amd64-freebsd 6.2, perl5.8.8 from ports, perl5.10.0 self-compiled):
$ perl5.8.8 ~/trash/test.pl
Benchmark: running set_inherited_class, set_inherited_object for at le
+ast 3 CPU seconds...
set_inherited_class: 5 wallclock secs ( 3.14 usr + 0.00 sys = 3.14
+CPU) @ 403854.65/s (n=1268356)
set_inherited_object: 4 wallclock secs ( 3.16 usr + 0.01 sys = 3.17
+ CPU) @ 441967.29/s (n=1401865)
$ /usr/local/src/perl-5.10.0-sysmalloc/perl -I/usr/local/src/perl-5.10
+.0-sysmalloc/lib ~/trash/test.pl
Benchmark: running set_inherited_class, set_inherited_object for at le
+ast 3 CPU seconds...
set_inherited_class: 4 wallclock secs ( 3.15 usr + 0.01 sys = 3.16
+CPU) @ 309119.05/s (n=975657)
set_inherited_object: 5 wallclock secs ( 3.08 usr + 0.00 sys = 3.08
+ CPU) @ 402004.47/s (n=1237420)
$/usr/local/src/perl-5.10.0-perlmalloc/perl -I/usr/local/src/perl-5.10
+.0-perlmalloc/lib ~/trash/test.pl
Benchmark: running set_inherited_class, set_inherited_object for at le
+ast 3 CPU seconds...
set_inherited_class: 6 wallclock secs ( 3.12 usr + 0.00 sys = 3.12
+CPU) @ 378921.38/s (n=1181169)
set_inherited_object: 6 wallclock secs ( 3.15 usr + 0.00 sys = 3.15
+ CPU) @ 469993.13/s (n=1479744)
perl with sysmalloc seems to be the worst, while the both perls with perlmalloc have similar results.