[发明专利]数据处理系统中访问数据的方法以及电路安排有效
申请号: | 201310628908.2 | 申请日: | 2013-11-29 |
公开(公告)号: | CN103870397A | 公开(公告)日: | 2014-06-18 |
发明(设计)人: | J.R.库塞尔;M.G.库普弗施密特;P.E.沙特;R.A.希勒 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F12/10 | 分类号: | G06F12/10;G06F15/173;G06F13/16 |
代理公司: | 北京市柳沈律师事务所 11105 | 代理人: | 张贵东 |
地址: | 美国纽*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据处理系统 访问 数据 方法 以及 电路 安排 | ||
技术领域
本发明一般涉及数据处理,尤其涉及处理器架构以及其中的数据的组织。
背景技术
随着半导体技术在时钟速度的增加方面继续缓慢地越来越接近实际极限,设计师越来越多地把注意力放在处理器架构的并行技术上来实现性能提高。在芯片级上,往往将多个处理器核心布置在同一芯片上,以与独立处理器芯片,或在某种程度上,与完全独立计算机几乎相同的方式起作用。另外,甚至在核心内,通过使用专门管理某些类型的操作的多个执行单元来采用并行技术。在许多情况下也采用流水线技术,以便将可能花费多个时钟周期来执行的操作分解成几个阶段,使其他操作能够在较早的操作完成之前开始。还采用多线程技术使多个指令流能够并行地得到处理,使得在任何给定时钟周期中能够执行更综合工作。
继续利用并行技术的一个领域是在执行单元,例如,定点或浮点执行单元的领域中。例如,许多浮点执行单元是高度流水线化的。但是,虽然流水线技术可以提高性能,但当通过流水线处理的指令不相互依赖时,例如,在后面的指令不使用较早指令的结果的情况下,流水线技术是最有效的。每当指令作用在另一条指令的结果上时,通常,后面的指令不能进入流水线中,直到较早的指令从流水线中退出和计算出它的结果。后面的指令被认为依赖于较早的指令,后面的指令停顿下来等待较早指令的结果的现象被说成将“气泡”,或未正在进行生产性操作的周期引入流水线中。
可以用于从流水线执行单元中提取较高利用率部分和消除未用气泡的一种技术是引入多线程技术。这样,其他线程能够将指令发到流水线中的未用时隙中,这抬高了利用率,因此扩大了总吞吐量。提高性能的另一种流行技术是也称为将数据“矢量化”的单指令多数据(SIMD)框架。这样,响应相同SIMD指令,同时对多个数据元素进行操作。矢量执行单元通常包括管理矢量中的不同数据点和同时对所有数据点进行相似操作的多条处理线。例如,对于依靠四(4)字矢量的架构,矢量执行单元可以包括对每个矢量中的四个字进行相同操作的四条处理线。
也可以将上述技术组合在一起,得出使多个线程能够将SIMD指令发给矢量执行单元以便同时处理数据点的“矢量”的多线程矢量执行单元。通常,将调度算法与发出逻辑结合在一起使用,以保证每个线程以合理速率进行下去,使执行单元流水线中的气泡的数量保持在最低水平上。
尽管SIMD执行单元具有突出执行能力,但已经发现,在将数据排列成利用多线SIMD执行单元的格式的过程中消耗了相当数量的额外处理开销。例如,当以结构阵列(AOS)格式将数据存储在存储器中以及执行单元处理具有阵列结构(SOA)格式的数据时,这个问题更加严重。更进一步,在许多情况下,一个进程可能需要一种格式的数据,而另一个进程要求数据具有不同格式,这往往迫使数据以一种格式存储在存储器中,处理器在利用SIMD执行单元处理数据之前将数据装载和重新排序成其他格式。
对这个问题的一种传统做法是将所有数据装载在矢量寄存器文件中,然后在矢量寄存器文件中来回移动。但是,这种做法通常会浪费许多指令。另一种做法是正好在进入寄存器文件中之前“搅和(swizzle)”或重排负载数据。虽然这种做法通常节省了功能指令,但该做法通常仍然要求每个负载多次访问数据高速缓存。
作为一个例子,依靠SIMD操作的许多典型工作负载遵循存在矢量装载,接着像多次相加那样的SIMD浮点运算,然后接着矢量存储的简单循环。在许多传统处理器架构中,这种三指令序列被当作四周期装载、单周期数学运算、和四周期存储来处理,导致高速缓存带宽负担非常重和未充分利用SIMD执行单元的处理能力的循环。
因此,在技术上仍然明显需要使与以适合在数据处理系统中执行,尤其使用SIMD执行单元执行的格式排列数据相关的额外执行开销最小的方式。
发明内容
本发明通过提供一种方法和电路安排解决与现有技术相关的这些和其他问题,该方法和电路安排根据存储在像有效到真实地址转换(ERAT)或转换后备缓冲器(TLB)那样的存储器地址转换数据结构中的一种或多种搅和相关页面属性,有选择地搅和与处理单元耦合的一个或多个级别高速缓冲存储器中的数据。例如,存储器地址转换数据结构可以结合存储器页面中的数据的存储器访问请求来访问,以便该数据结构中与存储器页面相关的属性可以用于控制是否搅和数据,以及如果是的话,如何与管理存储器访问请求相关地将数据格式化。这样,当从高速缓冲存储器中检索数据供处理单元处理时,以最适合处理单元有效处理数据的形式将数据格式化。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310628908.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:用于检测肠穿孔的方法和装置
- 下一篇:胶凝的食物浓缩物
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置