There's a bunch of things that the locmem.py implementation of a local memory cache does that goes above just looking up a value in a dict.  It implements versioning, so it adds a version number to the provided key to create an internal key.  It validates the key value, scanning it to look for unsupported characters, maintains locks, checks expirations, and unpickles the stored value.  And that's just locally (i.e. not using memcached).  In comparison, the hashing is likely highly optimized in C code.   

I would suggest that we not bother with adding caching for this.