[racket-dev] [plt] Push #28281: master branch updated

From: Sam Tobin-Hochstadt (samth at cs.indiana.edu)
Date: Mon Mar 3 08:35:42 EST 2014

A few questions about this:

1. Why not keep the 7x faster version as the fallback?
2. How much of the performance difference is 31/63-bit integers vs the
C code using 32/64 bit?
3. I think you could have used `define-inline` from
`racket/performance-hint` here.

Sam

On Mon, Mar 3, 2014 at 7:55 AM,  <mflatt at racket-lang.org> wrote:
>
> ~~~~~~~~~~
>
> 7e546d1 Matthew Flatt <mflatt at racket-lang.org> 2014-03-02 17:46
> :
> | file/md5: faster
> |
> | Use unsafe operations and forced inlining to speed up
> | MD5 calculation by about x2.25 on 32-bit platforms, and
> | use all that plus fixnums to speed up by about x7 on
> | 64-bit platforms.
> |
> | This implementation is still about a factor of 5 off
> | a C implementation. So, while this was a fun little
> | experiment, I'll revert this commit and add a binding
> | to the OpenSSL MD5 implementation, instead.
> :
>   M racket/collects/file/md5.rkt | 520 +++++++++++++++++++++++++++-------------

Posted on the dev mailing list.