I'm running a script to gather SVN details for a graph I'd like to make. I've done this before in perforce and it takes about 5-10 minutes to run. HOURS! HOURS this has run in subversion. Compare:
Subversion:
% time svn diff -r1743:1744 https://svn.example.com/project/trunk > /dev/null
real 0m8.183s
user 0m0.179s
sys 0m0.049s
Perforce:
% time p4 describe 3037 > /dev/null
real 0m0.867s
user 0m0.039s
sys 0m0.091s
Am I doing something horribly wrong? All the doco I can find says that this is the way to get the diffs for a single revision, yet... 10x slower? Hell, CVS is faster!
ADDED:
Some have suggested that it is SSL negotiation. For that I offer the following:
% svn up
At revision 2761.
% time svn -u st -N > /dev/null
real 0m2.681s
user 0m0.119s
sys 0m0.045s
% time svn diff -r2759:2760 https://svn.example.com/project/trunk > /dev/null
real 0m9.189s
user 0m0.187s
sys 0m0.055s
A 3x increase in time for a 20 line diff??? Nuh uh. Not SSL.

Perhaps SVN slowness is due to ssh negotiation?
Does the timing change if you open a ssh tunnel first? For example, ssh -L 443:svn.example.com:443 -N slowjoe@localhost
http(s) is slower than svn+ssh, which is slower than the ssh tunnel described above. For really demanding tasks you can use svk to setup a local mirror of the repository which is the fastest.
Bil, gyver,
I can't do svn+ssh or an ssh tunnel since I don't have a login on the box. Kinda makes it a moot point in that regard, BUT, I have a seriously hard time thinking it is SSL negotiation for reasons added to the blog post.
And svk is some of the worst software I've ever used. I won't be touching that again for quite some time. Besides, all you're doing is offsetting the cost to the svk sync, so the time is going to be basically the same.
SVN is way, way faster over any of the svn:// protocols. Anything http-based is doing a separate DAV request for every operation, which brutalizes both the pipe and the machine. But it's easy to get at, so most people end up using it.
Compare http/https with svn/svn+ssh and it's a world of difference.
Well, like I said, I can't login to the box so the svn: protocols don't matter.
Svn 1.4+ implemented http pipelining which may help you. I haven't tried it myself since we use svn+ssh but it's worth a shot if you aren't already up to date.
Are you running on Windows? Neon, the http library used in subversion, doesn't set the linger options correctly, so a huge delay is added to every network operation.
Running on Linux (or even virtualized Linux running in VMWare on Windows) is significantly faster.
Google "neon subversion windows performance" for more details.