[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: BDB configuration



Dieter Kluenter wrote:
"Brett @Google"<brett.maxfield@gmail.com>  writes:

On Thu, Feb 19, 2009 at 2:15 AM, Dieter Kluenter<dieter@dkluenter.de> wrote:
Brett Maxfield<brett.maxfield@gmail.com>  writes:

Doesnt "currently asm" indicate asm spinlocks.. Which can be unreliable. These can be even more unreliable with unpatched bdb?

So perhaps you should try posix style semaphores.. Forcing posix/pthreads both at compile time and at run time..
db-4.7.25 has been build with --enable-posixmutexes
--enable-pthread_api
I use ../dist/configure --disable-java --enable-posixmutexes
--with-mutex=POSIX/pthreads --enable-largefile --enable-cxx

--with-mutex=POSIX/pthreads is important as it selects posix mutex at
runtime, not compile time.

I don't think that this configure option is necessary on linux, as libpthread is the default AFAIK. from configure --help: --with-mutex=MUTEX Select non-default mutex implementation.

The default on Linux is "hybrid" which means spinlocks and pthread locks. The spinlocks are extremely CPU intensive and have shown no benefit in our testing. You should always use --with-mutex=POSIX/pthreads. This has already been discussed on this list before. Please read the archives instead of posting redundant posts.


2.4.14 was released days ago. Please change the subject from "2.4.14 prerelease" if you're going to continue replying to these threads.

--
  -- Howard Chu
  CTO, Symas Corp.           http://www.symas.com
  Director, Highland Sun     http://highlandsun.com/hyc/
  Chief Architect, OpenLDAP  http://www.openldap.org/project/