Rate uses_goto normal uses_amp uses_goto 94719/s -- -10% -14% normal 105040/s 11% -- -4% uses_amp 109823/s 16% 5% -- Rate uses_goto normal uses_amp uses_goto 94448/s -- -8% -14% normal 103141/s 9% -- -7% uses_amp 110408/s 17% 7% -- Rate uses_goto normal uses_amp uses_goto 94148/s -- -11% -14% normal 105616/s 12% -- -4% uses_amp 109985/s 17% 4% -- #### use strict; use warnings; use Benchmark qw( cmpthese ); my $dummy; sub test { # Dummy load. $dummy = join('', @_); } sub normal { test(@_); } sub uses_goto { goto(&test); } # goto & sub uses_amp { &test; } # & and no args cmpthese(-3, { normal => sub { normal (1, "Hello World!", []); 1; }, uses_goto => sub { uses_goto(1, "Hello World!", []); 1; }, uses_amp => sub { uses_amp (1, "Hello World!", []); 1; }, });