Excellent! The performance is now much much better.
On my laptop(WinXP), with a Pentium M 1.7GHz, I encrypted a 870Mb Outlook pst file in less than 5 minutes!!
At home I have a 3.0 GHz Pentium box.
I'll let you know the performance on that fyi.
In the best tradition of open source development, "release early,
Version 0.19 is now available at all the usual places (i.e. -
http://sourceforge.net/projects/rsyncrypto). Go get it while it's hot.
This place is probably the place I need to say this least of all, but
the main changes this version is introducing are a major speedup to the
entire process, on all platforms. OS calls have been buffered for both
reads and writes, and the differences are dramatic. For comparison's
sake, I created a 16MB file from /dev/urandom. The file is totally
uncompressible. Here are some stats from my computer. All stats running
on Linux on a Pentium M 1.8GHz.
With version 0.18:
We can see that the user space + kernel times make up the entire clock
time for the application (the time spent on gzip was not counted here!)
We can also see that despite the fact that we are performing heavy
operations here (encryption, done in user space), most of the time is
spent on system calls. Decryption is much much faster:
We can see that we spend about equal time in the system and in user space.
With version 0.19, here are our encryption numbers:
The user space (i.e. - actual encryption) time remained, more or less,
the same as before. The system calls time was practically eliminated.
The over all execution time was reduced from almost 15 seconds to just a
little over 4, making a 3.5 times speedup. The measurements are far from
scientific, so your mileage may, and probably will, vary somewhat, but
this is clearly a major speedup.
As far as decryption times go, things are also looking much better:
As we can see, here too we managed to wipe away all of the time spent on
system calls. The relative ratio of system calls wasn't as dramatic
here, so we only have about 2 times speedup. This makes particular sense
as encryption and decryption do not take different amount of time
(though compression does take longer than decompression), so I am fully
expecting these numbers to stat approaching the same area.
Unfortunately, I don't have a program for Windows that measures user vs.
system time, so my measurements there aren't as exact. About the same
speedups are seen there, however, so I think it will be safe to assume,
for the time being, that the bottlenecks are similar for Linux and for
Windows, and optimize the first.
Comments, remarks, and I believe that at least one check (someone
offered a bug-bounty for getting Windows above 1GB/hr, a mark we clear
easily now) welcome.
Lingnu Open Source Consulting ltd.
Have you backed up today's work? http://www.lingnu.com/backup.html
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
Rsyncrypto-devel mailing list