monotone-devel
[Top][All Lists]
Advanced

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

[Monotone-devel] Using Botan 1.6 in Monotone [Re library build]


From: Jack Lloyd
Subject: [Monotone-devel] Using Botan 1.6 in Monotone [Re library build]
Date: Thu, 2 Oct 2008 14:17:54 -0400
User-agent: Mutt/1.5.16 (2007-06-09)

On Thu, Oct 02, 2008 at 09:36:05AM -0700, Zack Weinberg wrote:

> Thinking about the use-of-system-libraries project, how nuts would we
> be to drop back to 1.6.latest API and libraries for the duration (i.e.
> until 1.8.0 is out)?  It seems unwise to be trying to use
> system-provided libraries and *at the same time* trying to use the
> very latest development version of botan, but if 1.6 is just not going
> to hack it, perhaps that's where we are...

Not too nuts.

You will take a performance hit.

You can probably get some of it back by plugging in the current 1.7's
assembly and SSE2 implementations of SHA-1 via Botan's existing engine
code. Here you are again stuck maintaining some code from
net.randombit.botan, but its not huge (<1K lines for x86, x86-64, and
SSE2 combined). And of course optional, since you can always fall back
on the builtin. I thought Monotone already had some code for plugging
in other implementations? Am I imagining this.

Gentoo and Debian include the OpenSSL engine in the standard distro
build. This includes a plugin for OpenSSL's SHA-1, which tends to
outperform Botan's C++ implementation significantly. All you should
have to do there is enable it during Botan's init and Monotone will
see the speedup. Depending on how other packagers did it, it may be
possible for Monotone to skip using the asm and SSE2 code and still
get reasonable performance.

Maybe just keep the changes needed for 1.7 alive in a branch?

-Jack




reply via email to

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