use Benchmark 'cmpthese' use strict; sub strMulti{return $_[0]x3} sub strConcat{return $_[0].$_[0].$_[0]}; sub cmpstr{ cmpthese(-2, { 'string multiplier', "print &strMulti($_[0])", 'string concat', "print &strConcat($_[0])" } ) } &cmpstr('foo bar') Can't locate object method "foo" via package "bar" (perhaps you forgot to load "bar"?) at (eval 176) #### runloop unable to compile '&cmpstr(