CC--NUMA机器显著优点: 口程序员不需要显式指定数据结构应分配 到哪一个结点上,系统的硬件和软件会 在开始时自动将数据分配到各个结点处。 在应用程序运行期间,高速缓存一致性 硬件会自动将数据移至需要使用该数据 的结点上。 口这个优点实现起来并不总是有效的, 哈尔滨工业大学计算机科学与技术学院
哈尔滨工业大学计算机科学与技术学院 12 ◼ CC—NUMA机器显著优点: ❑ 程序员不需要显式指定数据结构应分配 到哪一个结点上,系统的硬件和软件会 在开始时自动将数据分配到各个结点处。 在应用程序运行期间,高速缓存一致性 硬件会自动将数据移至需要使用该数据 的结点上。 ❑ 这个优点实现起来并不总是有效的
例如: CC NUMA系统中远程高速缓存 ( remote caching)的问题 假设程序有两个进程P和Q执行以下代码, 这两个进程都必须访问数据数组A和B Q 阶段1使用(A使用(B) 阶段2使用(B)使用(A) 哈尔滨工业大学计算机科学与技术学院
哈尔滨工业大学计算机科学与技术学院 13 ◼ 例如:CC—NUMA系统中远程高速缓存 (remote caching)的问题 ◼ 假设程序有两个进程P和Q执行以下代码, 这两个进程都必须访问数据数组A和B ◼ P Q ◼ 阶段1 使用(A) 使用(B) ◼ 阶段2 使用(B) 使用(A)
结点1 结点2 结点1 结点2 局部存 局部存 局部存 局部存「B 储器 储器 储器 储器 远程高 远程高 速缓存 速缓行囗 速缓存[厨 面互连网络} 阶段1的数据分配 (b)阶段2的数据分配 在c∽NUMA多处理机系统中用远程高速缓存进行数据重新定位 哈尔滨工业大学计算机科学与技术学院
哈尔滨工业大学计算机科学与技术学院 14
阶段1 口两个结点之间不需要通信,所以远程高 速缓存为空 阶段2 口系统硬件设备自动将数组B移到结点的 远程高速缓存,将数组A移到结点2的远 程高速缓存,程序员不需要进行数据重 分配 缺点 哈尔滨工业大学计算机科学与技术学院
哈尔滨工业大学计算机科学与技术学院 15 ◼ 阶段1 ❑ 两个结点之间不需要通信,所以远程高 速缓存为空。 ◼ 阶段2 ❑ 系统硬件设备自动将数组B移到结点1的 远程高速缓存,将数组A移到结点2的远 程高速缓存,程序员不需要进行数据重 分配。 缺点:
上图中 口可通过某指令将A的值载入本地处理器 的寄存器R1中,同时A所在的高速缓存 块被自动拷贝到一个结点级的高速缓存 中,称为远程高速缓存( remotecache, RC)。 口该高速缓存块并不被拷贝至本地存储器 中。某些 CC-NUMA系统没有远程高速缓 存,所以A所在的高速缓存块被拷贝至 结点的2级高速缓存中。 哈尔滨工业大学计算机科学与技术学院
哈尔滨工业大学计算机科学与技术学院 16 ◼ 上图中: ❑ 可通过某指令将A的值载入本地处理器 的寄存器R1中,同时A所在的高速缓存 块被自动拷贝到一个结点级的高速缓存 中,称为远程高速缓存(remotecache, RC)。 ❑ 该高速缓存块并不被拷贝至本地存储器 中。某些CC—NUMA系统没有远程高速缓 存,所以A所在的高速缓存块被拷贝至 结点的2级高速缓存中