I am testing using GluCat's test11, which extensively uses transcendental functions, some of which involve matrix logarithms and square roots, which in turn call the eigensolver to determine the (complex) eigenvalues of the matrix. In my experience, the test becomes unacceptably slow the very first time that the eigensolver is given a 4 x 4 matrix. I haven't yet diagnosed the problem, but possibly the code is copying matrices more than it really needs to?
Also. I have looked at the code itself and have quite a few comments. In this question, I will state just one: the code reads as if it uses the word "complex" to mean "imaginary", as in splitting a complex number into its real and "complex" parts. This will be an unneeded cause of confusion if it is to remain in the public interface of the code, and in fact "complex" should be changed to "imag" or "imaginary" throughout the code, whenever it is correct and appropriate to do so.
I have more comments, but how can I make them by peforming a code review of uBLAS pr #68 within the uBLAS repository? Who would have to grant me access? I have a background in C++ as well as linear and multilinear algebra, and taught numerical linear algebra at ANU 2009-2011,so I am reasonably up to the task, if I can find the time.