monotone-devel
[Top][All Lists]
Advanced

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

[Monotone-devel] Re: linus talk on git


From: Graydon Hoare
Subject: [Monotone-devel] Re: linus talk on git
Date: Tue, 22 May 2007 00:48:21 +0200
User-agent: Thunderbird 2.0.0.0 (Windows/20070326)

Nuno Lucas wrote:

Maybe I got this wrong, but based on what I have seen so far of this
talk, I couldn't help but think that Linus didn't consult the Monotone
developers with his concerns about speed, why it was slow, or how much
work it would take to improve its speed.

He talked to us a bit. There were a variety of issues.

Some "style" issues: I wrote monotone for flexibility, debug-ability, cryptographic integrity, experimentation. We've rearranged and replaced subsystems several times over (field-upgrading our databases as we went) as we were learning. This is important to me, but it imposed a major set of across-the-board speed penalties: notably that the disk format, network format and memory formats are all different, and none is optimized at all for constant factors. Lots of transformation and re-verification. Git is written in "performance above all else" style, but it's much more rigid in its shared data structure and much less forgiving about having its midsection field-upgraded. There's also the overhead of my quirky C++ style vs. kernel-hacker C style. I don't like my code twiddling pointers a lot. I like a lot of automatic assertions. Git style feels to me like asking for memory faults. Maybe I'm a bit of a wuss.

Some "design" issues: monotone was more like git early on (and it was actually way faster than the post-changeset code) but we abandoned that structure because we wanted to model long-term file and directory identities, because users claim they exist and claim to care about them. Linus rejected this notion. We didn't really want to go back on that decision: it matters a lot to Java developers. C developers don't care as much since they never rename files.

Some "bad timing" issues: I was on vacation and we had *just* landed some profoundly slow changes. He got us at our slowest moment. And he's a sort of impatient guy to begin with.

The last point made the worst first impression. The first two probably doomed us to be undesirable to Linus, even if we'd made a good first impression. But it's all water under the bridge now anyways.

-graydon





reply via email to

[Prev in Thread] Current Thread [Next in Thread]