[eigen] generic unrollers |
[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]
Hi, I measured the impact of reducing the unrolling limit from 400 to 100, and it does have a real cost as 4x4 matrix multiplication is no longer unrolled. Yet, I admit that 400 was too much. The solution is to -- at last -- do partial loop unrolling i.e. unroll the inner direction only. Since this is making the unrollers even more complicated, and since we now have several different places in eigen with such unrollers (Assign.h, Redux.h, Part.h, Visitor.h) I think it's now more than time to move to generic unrollers. These would take as template argument a struct providing the method to apply to each coeff, etc. OK that I do it? Other than that, updating the list regarding previous threads, as Gael and I still have the bad habit of doing most of the conversation by private mail in french: - for fuzzy compares, it turns out that the Hilbert-Schmidt aka L2 norm works just fine, there was just a problem with my initial implementation. That norm is the best compromise between speed and accuracy. - for base classes, we changed our minds so many times that I don't remember :P at least for now it seems that we're not adding base classes. Cheers, Benoit
Attachment:
signature.asc
Description: This is a digitally signed message part.
Mail converted by MHonArc 2.6.19+ | http://listengine.tuxfamily.org/ |