Hashes can sometimes be cached, if there is enough room in the info structure where the key is stored; caching the results of comparisons (a binary operation) is frequently impractical. On the other hand, comparisons can profit from shortcutting: if keys normally vary within the main number of bytes, a unfavorable comparison can be very fast.$begin