I'll second the recommendation for
Devel::NYTProf. It is a fantastic profiler! That said,
your efficiency and that of those that will have to read or support your code is at least as important as the efficiency of the code itself. Go first for correctness and clarity. Worry about code efficiency only if there is a problem. Moore's law will make your code run twice as fast in a few years, but it won't help at all with correctness or clarity.