Re: Big git diff speedup by avoiding x86 "fast string" memcmp

From: David Miller
Date: Wed Dec 15 2010 - 13:00:33 EST


From: Boaz Harrosh <bharrosh@xxxxxxxxxxx>
Date: Wed, 15 Dec 2010 15:15:09 +0200

> I agree that the byte-compare or long-compare should give you very close
> results in modern pipeline CPUs. But surly 12 increments-and-test should
> show up against 3 (or even 2). I would say it must be a better plan.

For strings of these lengths the setup code necessary to initialize
the inner loop and the tail code to handle the sub-word ending cases
eliminate whatever gains there are.

I know this as I've been hacking on assembler optimized strcmp() and
memcmp() in my spare time over the past year or so.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/