[Bug 1742941] Re: zlib: improve crc32 performance on P8
Manoj Iyer
1742941 at bugs.launchpad.net
Tue Jan 16 14:35:43 UTC 2018
** Changed in: zlib (Ubuntu)
Assignee: Ubuntu on IBM Power Systems Bug Triage (ubuntu-power-triage) => David Britton (davidpbritton)
** Changed in: zlib (Ubuntu)
Importance: Undecided => Low
** Changed in: ubuntu-power-systems
Status: New => Triaged
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to zlib in Ubuntu.
https://bugs.launchpad.net/bugs/1742941
Title:
zlib: improve crc32 performance on P8
Status in The Ubuntu-power-systems project:
Triaged
Status in zlib package in Ubuntu:
New
Bug description:
Calculate the checksum of data that is 16 byte aligned and a multiple
of 16 bytes.
The first step is to reduce it to 1024 bits. We do this in 8 parallel
chunks in order to mask the latency of the vpmsum instructions. If we
have more than 32 kB of data to checksum we repeat this step multiple
times, passing in the previous 1024 bits.
The next step is to reduce the 1024 bits to 64 bits. This step adds
32 bits of 0s to the end - this matches what a CRC does. We just
calculate constants that land the data in this 32 bits.
We then use fixed point Barrett reduction to compute a mod n over GF(2)
for n = CRC using POWER8 instructions. We use x = 32.
http://en.wikipedia.org/wiki/Barrett_reduction
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu-power-systems/+bug/1742941/+subscriptions
More information about the foundations-bugs
mailing list