计算器系统内主动同步的方法技术方案

技术编号:2823453 阅读:184 留言:0更新日期:2012-04-11 18:40
一种在计算器系统(100)内提供主动同步的方法,包括处理器(18A,18B)对特定的存储器资源请求互斥存取。前述请求可包含一个或多个与特定存储器资源相关联的地址。所述方法也包含将每个请求的地址与多个地址的组中的每个地址进行比较。在前述地址组中的每个地址可响应于与请求者具有互斥存取的个别存储器资源。此外,为响应于与多个地址的组中的任何地址匹配的任何地址,所述方法包含返回与前述匹配地址相关联的计数值(233)。前述计数值表示竞争所述匹配地址的一些请求者。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术关于微处理器,尤其关于在多处理器系统中的处理器间进 行同步。
技术介绍
过去约十年间,现代微处理器的效能一直稳定且有些引人注目地 增加。绝大部分,效能增加可归功于操作频率的增加,以及大家所熟知的深流水(de印pipelining)技术。 一般说来,深流水是指使用许多 阶段的指令流水,而且每个阶段作动更少,藉此使得总流水能以较快 的速度执行。前述技术已供业界使用良好,然而,频率的增加与深流 水的使用存在有缺点。举例来说,时钟偏差(clock skew)与电力消耗 在高频率操作时会变得重要。就其本身而言,系统等级热预算点 (system level thermal budget points)所造成的物理限制与管理时 钟偏差所增加的难度,可显示前述技术的可实施限制即将来临。因此, 工业界已经着手寻找其它增加效能的技术,其中一种增加效能的技术 类型是使用多核心处理器和更为普遍的多元处理。当计算器系统使用越来越多处理器(例如处理核心)的多元处理结 构,干涉或竞争相同存储器资料的请求者数量会增加到传统程序同歩 方法所无法适用的程度。举例来说,当少量的处理器竞争一个资源时, 仅藉由锁定结构就可在编码的关键区域提供充分的效能。举例来说, 存储器位置上被锁定的算数运算可能是足够的。当多元处理的规模成 长时,这些基元(primitives)变得越来越没有效率。之后,更多进阶 的处理器包含增加指令到指令集中,其中前述指令集包含以单一存储 器位置的原子级更新(atomically updating)为基础的硬件同步基元 (例如CMPXCHG、 CMPXCHG8B和CMPXCHG16B)。然而,我们目前正进入即 使前述的硬件基元也无法提供所要求的高效能和多处理器数量多元处 理器的领域中。许多传统的处理器使用以乐观模型(optimistic mode)为基础的同 步技术,也就是当在多处理器的环境中运作时,这些传统的处理器被 设计来在假设能藉由重复地再执行同步码直到没有干涉被侦测到以达 成同步,然后宣告已达成同步的情况下运作。此种类型的同歩会招致 非所期望的时间浪费,尤其在许多处理器尝试相同的同步事件时,由 于没有一个处理器可以立刻实时向前进展,因此,需要不同的同步技 术。
技术实现思路
在计算器系统中提供主动同歩的方法在不同的实施例中被揭露。 在一个实施例中,所述方法包括处理器对特定的存储器资源请求互斥 存取。前述请求可包含一个或多个与特定存储器资源相关联的地址。 所述方法也包含将每个请求的地址与多个地址的组中的每个地址进行 比较。每个地址的组中的地址可与已对请求者授权互斥存取的个别内 存内存资源相对应。此外,为响应于所述一个或多个地址中的任何地 址与已授权其它储理器或多个处理器的多个地址的组中的任何地址匹 配,所述方法包含返回与包含匹配地址的组相关联的计数值。前述的 计数值可表示一些竞争所述匹配地址的一些请求者。在一个特定的实例中,所述方法包含返回零的通过计数值,用以 响应所述一个或多个地址中没有地址与所述多个地址的组中的任何地 址匹配。在另一个实施例中,计算器系统包含一个或多个可相互或可与一 个或多个存储器结合的处理器。每个处理器可执行指令对特定存储器 资源请求互斥存取。前述请求可包含一个或多个与特定存储器资源相 关联的地址。所述计算器系统也包含可将请求的每个地址与多个地址 的组中的每个地址进行比对的同步仲裁器单元。多个地址的组中的每 一个地址与具有互斥存取的请求者的个别存储器资源相对应。为响应 一个或多个地址中的任何地址与多个地址的组中的任何地址匹配,前 述同步仲裁器单元可返回与包含匹配地址的组相关联的计数值。前述 的计数值可表示一些竞争所述匹配地址的一些请求者。附图说明图1为一个计算器系统实施例的方块图。图2为描述图1中处理节点更进一步实施例的方块图。 图3为描述图1和图2所显示计算器系统运作实施例的流程图。 图4为描述图1和图2所显示计算器系统在相应接收一致无效探 查(coherency invalidation probe)时运作实施例的流程图。尽管所述专利技术容许不同的修改与替代形式,其具体的实施例以图 式为例子的方式表示,将在此详细描述。然而,可被理解的是,这些 图式与其详细说明并不试图限定本专利技术为所揭露的特定型式,相反地, 应涵盖附加权利要求所定义所有落于本专利技术精神与领域的修改、相等 物与替代形式。值得注意的是,在整份申请中所使用的单字「可(may)」 具有许可的意思(也就是有这样的可能、可能可以)而不是强制的意思 (也就是必须)。具体实施例方式为使高效能同步方法的架构在软件中能够实现, 一组可视为进阶 同步工具的指令可被使用。前述工具可支持非阻塞同步(non-Blocking synchronization)、不等待同步(WaitFree synchronization)禾口相互作用存fi者 器(Transactional Memory)的架构,以及主要在这些方法的架构中使用的 不同比较(Compare)与调换(Swap)基元型式的架构。前述工具允许多种 同步基元的架构(在软件中)。此外,所述的进阶同步工具可使软件规划多种同步类型。每一个 同步类型可直接具体指定需要顺利完成的快取线、失效可重新改变 控制流(control flow)方向的序列点(sequence point)、成功关键区域结果 的资料修改区被执行、使整个指令序列原子(atomic)剩余系统成功的序 列点为可见。因此,所述进阶同歩工具的功能可使具有与本质上同时如被其它 处理器/核心看见的关键区域相关联的写入许可的多重快取线撷取 (acquisition)与释放(release)。所述程序可被视为线性化(Linearizing)。撷 取后,在任何其它有兴趣的一方观察到对任何的具体指定的快取线有 任何的改变前,许多改变可被执行。在撷取与释放之间,没有其它的处理器可被允许来操作这些相同的线(例如具有写入许可)。 一个已经被执行的相似方法是不送出与线相关的来源完成(Source Done)讯息,藉此 可防止同时存取。然而,这些解决方法导致死锁(deadlock)和/或活锁 (livelock)或暂停(timeouts)。因此, 一个包含可完成进阶同步工具的多 个处理器与处理器核心的计算器系统将如下所述。现在参照图1,所示为计算器系统100的实施例。计算器系统100 包含数个处理节点312A, 312B, 312C与312D。每个处理节点312A至 312D经由每个个别处理节点312A至312D所包含的存储器控制器 316A至316D与个别存储器314A至314D联接。此外,处理节点312A 至312D包含用来在处理节点312A至312D间通讯的接口逻辑(interface logic,简称IF)。举例来说,处理节点312A包含可与处理节点312B 通讯的接口逻辑318A、可与处理节点312C通讯的接口逻辑318B,以 及可与另一个处理节点(未表示出)通讯的第三接口逻辑318C。同样地, 处理节点312B包含接口逻辑318D、 318E与318F;处理节点312C包 含接口逻辑318G、 318H与318I;以及处理节点312D包含接口逻本文档来自技高网
...

【技术保护点】
一种方法,包括:    处理器(18A,18B)对特定的内存内存资源要求请求互斥存取(18A,18B),其中,所述的要求请求包含一个或多个与所述特定内存内存资源相关联的地址;    将前述所述的一个或多个地址中的每一个地址与复数组多个地址的组中的每一个地址进行比较,其中,所述复数组多个地址的组中的每一个地址与要求者已对请求者授权互斥存取的个别内存内存资源相对应;并且    响应于符合所述一个或多个地址中的任何地址与所述多个复数组地址的组中的任何地址的任何一个或多个的地址匹配,回传返回与所述的符合匹配地址相关联的计数值,其中,所述的计数值表示一些竞争前述所述匹配符合地址的一些请求要求者。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:MK阿尔萨普
申请(专利权)人:先进微装置公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1