Re: Make the git codebase thread-safe
- From
Erik Faye-Lund <kusmabite@gmail.com>
- Date
- Feb 12, 2014, 11:59 UTC
- Message-ID
- <CABPQNSZ_LLg5i+mpwUj7pzXVQMY1tcXz2gJ+PWG-mP1iyjxoaw@mail.gmail.com>
- In-Reply-To
- <CA+TurHgyUK5sfCKrK+3xY8AeOg0t66vEvFxX=JiA9wXww7eZXQ@mail.gmail.com>
On Wed, Feb 12, 2014 at 2:54 AM, Stefan Zager <szager@chromium.org> wrote:
Show 14 quoted lines
> We in the chromium project have a keen interest in adding threading to > git in the pursuit of performance for lengthy operations (checkout, > status, blame, ...). Our motivation comes from hitting some > performance walls when working with repositories the size of chromium > and blink: > > https://chromium.googlesource.com/chromium/src > https://chromium.googlesource.com/chromium/blink > > We are particularly concerned with the performance of msysgit, and we > have already chalked up a significant performance gain by turning on > the threading code in pack-objects (which was already enabled for > posix platforms, but not on msysgit, owing to the lack of a correct > pread implementation).
How did you manage to do this? I'm not aware of any way to implement pread on Windows (without going down the insanity-path of wrapping and potentially locking inside every IO operation)...