Eric Bollengier <eric.bolleng...@baculasystems.com> wrote on 2010/08/09 09:11:58:
> Hello, > > On 09/08/2010 08:16, Joakim Tjernlund wrote: > > Eric Bollengier<eric.bolleng...@baculasystems.com> wrote on 2010/08/08 > > 18:52:03: > > > >> Hello Joakim, > >> > >> On 20/07/2010 20:02, Joakim Tjernlund wrote: > >> > >>> This is a strait port of the Linux kernel crc32 optimization > >>> I did a while ago. This impl. is several times faster than the one it > >>> replaces. Adapted to bacula usage. > >>> --- > >>> > >>> I have not tested this yet as I went/is on vacation but I figured > >>> perhaps someone else is interrested enough to do that :) > >>> > >>> > >> I did some tests with a little crc32 program, and over a 9MB file, the cpu > >> gain is about 33% and crc32 results seems to be identical (tested over > >> 650MB by > >> chunks of 5000 bytes). > >> > >> Thanks, this is a very nice contribution, and it will be included in the > >> next stable community release. > >> > > Thanks for testing. I would have expected better performance though. > > Are you by any chance using gcc 4.3.4? > > I'm currently using 4.4.3 (same number, but not in the same order :-) ) > My test code is rather primitive, I was looking for compatibility rather > than speed. > So, it involves disk I/O. A better test will generate/read pseudo random > data on memory and > will compute crc at the end with a special timer, but I don't have many > time to do it > right now. > > > I have found this compiler > > rather broken w.r.t optimization. For crc32 it was better to compile > > with -Os than -O2. > > I have to look the Makefile to see if we can use different CFLAGS > options for crc32. > > > Kern has an updated version which has some > > unrolling too, perhaps this one does better? > > As your new interface is a bit more complex to read, I took your first > version. > > > Does you test program include I/O too? > > > > As I said, my program is very dumb, and not very suitable for pure cpu > benchmarks, but > feel free to tweak it to show a 300% gain instead of a tiny 30% :-) hehe, I offer some old test prog I have(got it from someone else, don't remember now) Should be easy to adapt to Bacula crc32 I hope. Jocke(See attached file: crc32test.c)
crc32test.c
Description: Binary data
------------------------------------------------------------------------------ This SF.net email is sponsored by Make an app they can't live without Enter the BlackBerry Developer Challenge http://p.sf.net/sfu/RIM-dev2dev
_______________________________________________ Bacula-devel mailing list Bacula-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bacula-devel