[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

RE: Using memcached with FSFS repositories

From: Johan Corveleyn <johan.corveleyn_at_uz.kuleuven.ac.be>
Date: Fri, 22 May 2009 17:31:03 +0200

> Anyone do any performance analysis of using memcached? I'm not
> seeing much (if any) benefit, but that could be due to a fairly
> high performance SAN storage solution for storage.
>
> Here are my numbers:
>
> no cache: 10 min 33 sec
> cold cache: 10 min 30 sec
> hot cache: 10 min 26 sec
> (The differences are statistically insignificant.)
>
> This is for a single repo with 600M of data in 30k files.
>
> Server cpu usage seemed consistent with and without
> the cache. I (unfortunately) wasn't able to monitor disk I/O.
>
> I was using a 2G memcached, of which it used around 600M for the
> cache. Oddly enough, monitoring memcached showed only a 70%
> cache hit when repeatedly downloading the same repository.
> (I would have expected a 100% hit ratio from the memcached side.)
>
> memcached was running on the same server as apache for the tests.
> (A quad core 64-bit AMD server running solaris 10 x86. 4G of RAM
> with storage on an enterprise SAN connected with fiber.)
>
> svn 1.6.2
> httpd 2.2.11
> apr 1.3.3
> apr-util 1.3.4
> neon 0.28.4
> memcached 1.2.8
>
> Test repository was created and populated with svn 1.6.2.
>
> I also noticed if no memcached servers were running, but a repository
> was configured to use it, a checkout would fail during the checkout
> of the first directory. It probably should continue to work as
> if no cache was configured instead of failing...
>
> Anyone else see some better results?
>

It's not really clear to me what you measured here, but deducing from your previous post, I'm guessing you timed a large checkout or something similar. What was your test setup (what kind of client, how did it access the repo (local/remote, svn(+ssh), http(s), file), ...)? And how did you measure it (e.g. running "time svn co ..." in a console, or via TortoiseSVN, or ...)?

If it's really a checkout, I think it's normal that you don't see an improvement (especially if it's with a windows client). In my experience, a checkout (or update) on Windows is mainly client-side cpu-bound (also heavy on IO, but mainly constrained by cpu). Could you verify this?

I don't know that much about SVN (client) internals, but I'm hoping this will be improved in 1.7 by the new WC-NG (see http://subversion.tigris.org/issues/show_bug.cgi?id=3357). Another issue that might be related (and will probably go away with WC-NG) is http://subversion.tigris.org/issues/show_bug.cgi?id=3369.

It would be interesting to know which svn actions are significantly improved by memcached (log, blame, ...). Any chance you could test this with your setup?

Regards,
Johan

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2352921

To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_subversion.tigris.org].
Received on 2009-05-22 17:33:09 CEST

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.