高速缓存
捂眼看世界
这个作者很懒,什么都没留下…
展开
-
高速缓存与矩阵乘法(二)
LAPACK如果矩阵的规模较小,直接按照公式展开计算倒是看不出性能上有什么大问题,比如两个二维方阵相乘,计算公式如下c[i][j]=∑k=1na[i][k]∗b[k][j],1⩽i⩽n,1⩽j⩽nc[i][j]=\sum^n_{k=1}a[i][k]*b[k][j],\quad 1\leqslant i\leqslant n,1\leqslant j\leqslant nc[i][j]=k=1∑na[i][k]∗b[k][j],1⩽i⩽n,1⩽j⩽n但是,随着矩阵规模的增大,这种计算方式的性能瓶原创 2020-05-17 15:36:08 · 786 阅读 · 0 评论 -
高速缓存与矩阵乘法(一)
来源:数据结构、算法与应用 C++语言描述(原书第2版)简单计算机模型我们来看一个简单的计算机模型,它的存储由一个一级缓存 L1(level 1)、一个二级缓存 L2 和主存构成。算术和逻辑操作由算术和逻辑单元(ALU)对存储在寄存器(R)中的数据进行处理来完成。下图是这个计算机模型的一部分。通常,主存的大小是几十或几百 MB;二级缓存的大小不足 1MB;一级缓存的大小是几十 KB;寄存器的数量在 8 和 32 之间。程序开始运行时,所有数据都在主存。要执行一个算术运算,例如加法,首先把相加的数据原创 2020-05-17 08:45:45 · 2129 阅读 · 0 评论