On 03/29/2011 10:40 PM, petros wrote:
Hi Rutger, This seems like a very thorough effort. However, a bit tangential to my questions, but that is all right. I do have already written, a fair amount of code using uBlas matrices and mkl and would like to clean it up; so I cannot afford to redo everything now. Also, if I may, there are benefits in wrapping the driver functions into classes rather than functions (albeit template), the primary one being wrapping all the necessary workspace related functionality, away from the user and solving the allocation size issues for them( reusability can be served by the persistence of the class members, now, a luxury that was not there in fortran ). Of course, if I had the bindings machinery at the time, things would be much better for the wrapping. Having said all that, I will definitely look more into it when I have more time. Thank you again, Petros
Hello Petros, the free driver functions are there for convenience. Further down the chain, classes help out with partial specialization, and all workspace allocation (which can be either minimal, optimal, or user-defined). Also noteworthy is that both Fortran-based backends (plain netlib, MKL, etc.) and C-based backends (CBLAS, ATLAS's LAPACK functions) are supported by setting a preprocessor variable only. If you are looking for more detailed answers on your original questions, your best bet might be to write to the ublas mailing list. Cheers, Rutger