Re: New extension for hardware accelerated crc32c
| From: | Andrew Brampton | Date: | Sun, 14 Apr 2019 06:44:39 +0000 |
| Subject: | Re: New extension for hardware accelerated crc32c | ||
| References: | 1 | Groups: | php.pecl.dev |
| Request: | Send a blank email to pecl-dev+get-15888@lists.php.net to get a copy of this message | ||
Just to follow up. The code for my PHP extension that makes use of hardware
accelerated CRC32C instructions is here: https://github.com/google/php-crc32
I would love to get a pecl account, so I can publish this extension (to
make it easy to download).
thanks
Andrew
On Sat, 9 Mar 2019 at 22:36, Andrew Brampton <brampton@gmail.com> wrote:
> Hi,
>
> I recently contributed a crc32c implementation to PHP's hash function
> <https://github.com/php/php-src/pull/3913>. However, I
> wanted to get
> hardware acceleration, and support older versions of PHP. So I wrote a new
> extension that uses github.com/google/crc32c, which utilised hardware
> acceleration on modern intel CPUs.
>
> My quick benchmark shows:
> CRC32_PHP 12.27 MB/s (pure php solution)
> CRC32_Builtin 468.74 MB/s (my pull request above)
> CRC32C_Google 24,684.46 MB/s (using new extension)
>
> I'm in the process of open sourcing my code (I have to jump though some
> hopes at my day job), but soon after I would like to publish the pure PHP
> implementation to packagist, and the compilable extension to pecl.
>
> Per the account request guidelines
> <https://pecl.php.net/account-request.php>, I'm
> reaching out to say
> hello. A quick note about myself, I've been a avid contributor to open
> source for a decade, but I haven't touched PHP recently. I have far too
> many project on my github <https://github.com/bramp>. I
> also work at
> Google as a Cloud Storage (GCS) SRE, and while my interest in crc32c was to
> improve the GCS API support, I'm doing this as 20% instead of my main
> duties.
>
> thanks
> Andrew
>