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

Re: BerkeleyDB performance on Linux

David Boreham wrote:
Howard Chu wrote:
I think the difference is so small because the caches were already at a 99% hit rate; very few requests would actually need to do I/O.

Right, that was my concern. When I tried this (was done on both Linux and NT),
I saw performance in the non-100% hit rate case fall significantly.

Hm... Something doesn't sound right here. If the buffer cache is actually mitigating that effect, that implies that you could allocate more space to the BDB cache and get the same benefit. (Indeed, looking at the system status at the end of the test, with 4.2GB in the buffer cache, that tells me that I should have raised our BDB cache to 4.2GB.) The other side of this is that using O_DIRECT eliminates the double-buffering that's occurring, so each I/O that actually needs to be done does one less memcpy.

But again, using O_DIRECT means every I/O is synchronous, so I guess that might wreak havoc on any queuing optimizations in the fs.

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