The mlpack library (
http://www.mlpack.org) also has a C++ implementation of Hamerly's algorithm, as well as Elkan's and some other accelerated variants. My experience has been that while Hamerly's algorithm can be a lot faster than the unaccelerated implementation, it's not always the fastest---that depends on dataset conditions.