多核架构中细/中粒度线程级并行支持的实现
1. 解耦线程架构(DTA)基础
DTA 中,可将主存全局数据访问替换为帧内存访问,线程在执行时能随时访问主存,还可利用 DMA 辅助预取机制完全解耦内存访问。为克服线延迟影响,DTA 的处理单元(PE)被分组为节点,节点尺寸设计使得同一节点内的所有 PE 能用同一时钟同步,且通过节点内简单互连网络实现快速通信。而节点间通信较慢,互连网络更复杂,但这对晶体管数量增加时实现可扩展性是必要的。
DTA 使用的特定硬件结构包括:
- 帧内存(FM) :位于每个 PE 附近的本地内存,用于存储线程数据,访问速度快,执行时不会导致停顿。
- 分布式调度器(DS) :由本地调度元素(LSE)和分布式调度元素(DSE)组成。每个 PE 有一个 LSE,管理本地帧并将资源请求转发给 DSE;每个节点有一个 DSE,负责在节点内处理器间分配工作负载,并转发到其他节点以实现负载均衡。调度器通过发送消息通信,消息可表示新帧分配、释放帧和在远程帧中存储数据。
此外,DTA 需要处理单元的指令集架构(ISA)提供最小支持,包括分配(FALLOC)和释放(FFREE)帧的新指令、向其他线程帧存储数据(STORE)和从帧加载数据(LOAD)的指令。若 PE 不能直接访问主存,还需要读写主存数据的指令。
2. 异构多核架构
未来芯片多处理器架构旨在解决可扩展性、能效和可编程性问题。为创建可扩展芯片,架构通常细分为通过片上网络(NoC)连接的节点,每个节点包含多个处理器或特定领域加速器。节点内通信使用更快网络(如交叉开关)连接所有元素
超级会员免费看
订阅专栏 解锁全文
2283

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



