Hashing

A collection of hashing algorithms

Paper: AltiVec vectorization of hashing algorithms, 2007

This paper is hosted here actually! First version was using drutex-rendered of LaTeX excerpts of the original paper, today I'm using MathJax, much better. I wrote this paper when I was attempting to optimize MySQL with Altivec as part of a Genesi project, unfortunately it didn't amount to much in terms of accelerating MySQL, but I did invent an algorithm to vectorize a whole certain family of hashing functions.

The result was this paper

AltiVec vectorization of hashing algorithms

Hashing a piece of data is one of the most time consuming process in a a database. Basically, the process builds a unique integer (aka 'hash key') from a series of operations on the objects bytes. Usually these algorithms are not parallelizable, or at least not easily parallelizable, due to the dependency to previous calculations involved. Taking a single family of hashing algorithms, we will provide (with mathematical proof) a second deterministic way of calculating the Nth hash, using easily parallelizable tecniques and also provide the Altivec equivalent of this algorithm.
Subscribe to RSS - Hashing