LAPACK++: A design overview of object-oriented extensions for high performance linear algebra

LAPACK++: A design overview of object-oriented extensions for high performance linear algebra
复制标题

LAPACK:高性能线性代数面向对象扩展的设计概述

DOI:
10.1109/superc.1993.1263440
复制
发表时间:
1993
期刊:
Supercomputing '93. Proceedings
影响因子:
--
通讯作者:
D. Walker
D. Walker
中科院分区:
--
文献类型:
--
作者:
J. Dongarra;R. Pozo;D. Walker

文献摘要

被引文献

相似文献

LAPACK++是LAPACK(线性代数包)库的面向对象C++扩展,用于解决数值线性代数的常见问题:高性能计算机架构上的线性系统、线性最小二乘和特征值问题。面向对象方法的优点包括能够封装各种矩阵表示,隐藏其实现细节,减少子例程的数量,简化其调用序列,并提供可扩展的软件框架,该框架可以包含LAPACK的未来扩展,例如ScaLAPACK++用于分布式存储器架构。作者概述了C++中矩阵和分解类的面向对象设计,并讨论了其对优雅性、通用性和性能的影响。
LAPACK++ is an object-oriented C++ extension of the LAPACK (Linear Algebra PACKage) library for solving the common problems of numerical linear algebra: linear systems, linear least squares, and eigenvalue problems on high-performance computer architectures. The advantages of an object-oriented approach include the ability to encapsulate various matrix representations, hide their implementation details, reduce the number of subroutines, simplify their calling sequences, and provide an extendible software framework that can incorporate future extensions of LAPACK, such as ScaLAPACK++ for distributed memory architectures. The authors present an overview of the object-oriented design of the matrix and decomposition classes in C++ and discuss its impact on elegance, generality, and performance.