Improving large vector operations with C++ expression template and ATLAS
Laurent Plagne, Frank Hülsemann · 2007
Abstract. This paper describes a short and simple way of improving the performance of vector operations (e.g. X = aY + bZ +..) applied to large vectors. The principle is to take advantage of high performance vector copy operation provided by the ATLAS library [1] used as a kernel for a C++ Expression Template (ET) mechanism. The proposed ET implementation that involves a simple blocking technique, leads to significant performance increase compared to existing implementations (up to 50%) and extends the ATLAS scope. 1