Re: [RFC] Convert builin-mailinfo.c to use The Better String Library.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Wincent Colaiuta wrote:
El 7/9/2007, a las 13:54, Andreas Ericsson escribió:

Johannes Schindelin wrote:
Hi,
On Fri, 7 Sep 2007, Andreas Ericsson wrote:
Wincent Colaiuta wrote:
El 7/9/2007, a las 2:21, Dmitry Kakurin escribi?:

I just wanted to get a sense of how many people share this "Git should
be in pure C" doctrine.
Count me as one of them. Git is all about speed, and C is the best choice
for speed, especially in context of Git's workload.

Nono, hand-optimized assembly is the best choice for speed. C is just
a little more portable ;-)
I have a buck here that says that you cannot hand-optimise assembly (on modern processors at least) as good as even gcc.


http://www.gelato.unsw.edu.au/archives/git/0504/1746.html

I win. Donate $1 to FSF next time you get the opportunity ;-)

Well, you picked a very specific algorithm amenable to that kind of optimization: small, manageable, with a minimal and well-defined performance critical section that could be written in assembly. Note how a good chunk of the implementation was still in C. At most I'd give you 75 cents for that one. ;-)


Yes, but that's what I said in the original email as well. C is just so
much more pleasant to write in that the only place you'd (sanely) use
asm is in exactly these tight loops, where the code is likely to be used
and reused until the algorithm it describes is no longer a viable option
for doing what it was originally designed to do.

It still proves the point though, as surely as n+1 > n for any value of n:
Hand-optimized assembly is faster than compiler-optimized C code.

It might be harder to do properly on some architectures than others (RISC
comes to mind), but it's still possible.

--
Andreas Ericsson                   andreas.ericsson@xxxxxx
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux