Skip site navigation (1) Skip section navigation (2)

Re: Using POSIX mutex-es

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: "Mikheev, Vadim" <vmikheev(at)SECTORBASE(dot)COM>
Cc: "'pgsql-hackers(at)postgresql(dot)org'" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Using POSIX mutex-es
Date: 2001-09-06 16:51:15
Message-ID: 200109061651.f86GpFs02057@candle.pha.pa.us (view raw or flat)
Thread:
Lists: pgsql-hackers
Added to TODO.detail/performance.

> 1. Just changed
> 	TAS(lock) to pthread_mutex_trylock(lock)
> 	S_LOCK(lock) to pthread_mutex_lock(lock)
> 	S_UNLOCK(lock) to pthread_mutex_unlock(lock)
> (and S_INIT_LOCK to share mutex-es between processes).
> 
> 2. pgbench was initialized with scale 10.
>    SUN WS 10 (512Mb), Solaris 2.6 (I'm unable to test on E4500 -:()
>    -B 16384, wal_files 8, wal_buffers 256,
>    checkpoint_segments 64, checkpoint_timeout 3600
>    50 clients x 100 transactions
>    (after initialization DB dir was saved and before each test
>     copyed back and vacuum-ed).
> 
> 3. No difference.
>    Mutex version maybe 0.5-1 % faster (eg: 37.264238 tps vs 37.083339 tps).
> 
> So - no gain, but no performance loss "from using pthread library"
> (I've also run tests with 1 client), at least on Solaris.
> 
> And so - looks like we can use POSIX mutex-es and conditional variables
> (not semaphores; man pthread_cond_wait) and should implement light lmgr,
> probably with priority locking.
> 
> Vadim
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 2: you can get off all lists at once with the unregister command
>     (send "unregister YourEmailAddressHere" to majordomo(at)postgresql(dot)org)
> 

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman(at)candle(dot)pha(dot)pa(dot)us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

In response to

pgsql-hackers by date

Next:From: Bruce MomjianDate: 2001-09-06 16:54:59
Subject: Re: Re: What needs to be done?
Previous:From: Marc G. FournierDate: 2001-09-06 16:25:19
Subject: Re: CVS access

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group