ForgotPasswordAgain,
This advice reeks of cargo-cult mantra chanting. If I was doing a linear search on a sorted list, would you need to profile in order to know that a binary search would be faster? Pure algorithm analysis doesn't require machine profiling. Implementation specific details may distort things where it is warranted. Profiling is always a good rule of thumb, but it isn't always necessary. Especially when the algorithm being implemented is well known and studied. Sometimes it is just a matter of discovering you have implemented it incorrectly.