David, Roland, After some travel I got back to looking at the CRC32 calculation. I have three test systems: x86_64, x86_32 and Sparc/64. If I am going to replace lib/crc32.c I need to implement both the LE and BE (bit *not* byte order) APIs. Ethernet and InfiniBand use the LE bit order, a minority of device drivers (e.g. ATM and Firewire) use the BE bit order. It turns out that the algorithm in lib/crc32.c has improved since the last time I looked and is now a, sort of, slice by 4 equivalent to the slice by 8 algorithm. On the x86_64 system with current gcc -O3 I measure 2.8 cycles per byte with lib/crc32.c and 1.5 cycles/byte using rxe_sb8.c. I should have replacements for the standard routine in a day or two. Once it's working and tested I'll try to touch base with Andrew.
Bob -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of David Dillow Sent: Saturday, July 02, 2011 11:55 AM To: Bob Pearson Cc: 'Roland Dreier'; [email protected] Subject: RE: [patch 37/44] rxe_sb8.c On Fri, 2011-07-01 at 18:09 -0500, Bob Pearson wrote: > Hi Roland, > > Perhaps. We have some ICRC specific APIs as well as plain Jane CRC > calculation that includes a copy at the same time. > If I knew who maintained crc32.c I would be happy to talk to them and > see what they think. No one is really the maintainer there. 'git log' says Joakim Tjernlund has touched it quite a bit, but your best bet is to post patches to LKML, and perhaps Andrew Morton. -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
