计算机性能限制与分析:从内存带宽到应用程序剖析
在计算机性能的研究中,了解硬件的性能限制以及对应用程序进行性能剖析是至关重要的。本文将深入探讨内存层次结构、理论和经验内存带宽的测量,以及如何使用各种工具对应用程序进行性能分析。
1. 内存层次结构与理论内存带宽
对于大多数大型计算问题,通常需要从主内存通过缓存层次结构加载大型数组。随着时间的推移,为了弥补处理器速度相对于主内存访问时间的增加,缓存层次结构变得更深。
理论内存带宽可以通过内存芯片的规格来计算,通用公式为:
[B_T = MTR \times Mc \times Tw \times Ns = \text{数据传输速率} \times \text{内存通道数} \times \text{每次访问字节数} \times \text{插槽数}]
其中,处理器安装在主板的插槽上。大多数主板是单插槽,只能安装一个处理器;而双插槽主板在高性能计算系统中更为常见,可以安装两个处理器,提供更多的处理核心和更高的内存带宽。
数据或内存传输速率(MTR)通常以每秒百万次传输(MT/s)为单位。双倍数据速率(DDR)内存每个周期进行两次事务传输,这意味着内存总线时钟速率是传输速率(MHz)的一半。内存传输宽度(Tw)为64位,即每次传输8字节。大多数桌面和笔记本电脑架构有两个内存通道(Mc)。
以2017款MacBook Pro为例,其配备LPDDR3 - 2133内存和两个通道,理论内存带宽计算如下:
[B_T = 2133 \text{ MT/s} \times 2 \text{ 通道} \times 8 \text{ 字节} \times 1 \text{
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



