将检查点数据存储于非易失性存储器中制造技术

技术编号:5495499 阅读:303 留言:0更新日期:2012-04-11 18:40
本发明专利技术描述了将检查点数据存储于非易失性存储器的方法和系统。根据一个实施例,数据存储方法包括使用处理电路执行应用程序,以及在执行期间将由应用程序的执行所生成的数据写入易失性存储器。写入数据之后提供检查点的指示。在已提供指示之后,该方法包括将数据从易失性存储器复制到非易失性存储器,以及复制之后继续执行应用程序。该方法可包括将应用程序的执行挂起。根据另一实施例,数据存储方法包括接收与一个或多个应用程序的执行相关联的检查点的指示,且响应于该接收,启动将由一个或多个应用程序的执行所生成的数据从易失性存储器复制到非易失性存储器。在一些实施例中,非易失性存储器可以是固态非易失性存储器。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术的方面涉及将检查点数据存储于非易失性存储器中
技术介绍
随着半导体制造技术持续缩小至越来越小的特征尺寸,硬件的故障率预期增 加。至少两种类型的故障有可能发生瞬态错误,其可以是临时的,但持续少时间量; 硬错误,其可以是永久的。瞬态错误可具有诸多起因。示例瞬态错误包括,由电源波 动、热效应、α粒子撞击引起的晶体管故障,以及由串扰、环境噪声和/或信号完整性 问题所致的线路故障。硬错误的起因包括,例如,由工艺差异和过热的组合引起的晶体 管故障,以及由工艺瑕疵或由超过线路材料临界电流所引起的金属迁移为原因的线路故 障。硬错误和临时错误两者均可使用细或者大粒度级的冗余机制在内部加以纠正。 细粒度机制包括存储器组件中的纠错码、分组传输信道上的循环冗余码、以及磁盘系统 中的擦除编码机制。大粒度机制包括配置多个处理器以执行相同指令,然后比较来自多 个处理器的执行结果以确定正确结果。在这种情况下,为了检测错误,执行相同指令的 处理器的数量要为两个或两个以上。若处理器的数量为两个,错误可被检测。若处理器 的数量为三个或三个以上,错误既可被检测又可被纠正。然而使用这种冗余机制对于大 型并行系统可能价格过高。大型并行系统可包括处理器集群,其执行单个长期应用程序。在一些情况下, 大型并行系统可包括数百万个集成电路,其在数日或数周里执行该单个长期应用程序。 这些大型并行系统可通过在一个或多个磁盘上存储应用程序的中间状态来周期性地对该 应用程序建立检查点。当发生故障时,计算可回退并且从最近记录的检查点重新开始, 而非从计算的起点重新开始,其可能节省数小时或者数日的计算时间。因此,至少在一些计算设备(例如,大型并行系统)中使用检查点建立随着半导 体制造技术的特征尺寸的减小和故障率的上升会变得越来越重要。已知系统将检查点数 据写入磁盘。然而,磁盘带宽和磁盘存取时间可能没有发展得足够快以跟上计算系统的 需求。此外,使用如磁盘等机械介质建立检查点数据时所消耗的功率量是重要缺点。
技术实现思路
根据本专利技术的一些方面,描述了用于在非易失性存储器中存储检查点数据的方 法和系统。根据一个方面,数据存储方法包括使用处理电路执行应用程序,并在执行期间 将由应用程序的执行所生成的数据写入易失性存储器。该方法亦包括将数据写入易失性 存储器之后提供检查点的指示(例如,检查点完成的指示)。在已提供检查点指示之后, 该方法包括将数据从易失性存储器复制到非易失性存储器,并在复制之后继续执行该应 用程序。在一些实施例中,非易失性存储器可以是固态存储器和/或随机存取存储器。在继续执行之后,在一些实施例中,该方法可包括检测应用程序执行中的错 误。响应于该检测,将数据从非易失性存储器复制到易失性存储器。接下来,可使用存 储于易失性存储器中的所复制的数据从检查点开始执行应用程序。根据另一方面,数据存储方法包括接收与一个或多个应用程序的执行相关联的 检查点的指示,并响应于该接收启动将一个或多个应用程序的执行所生成的数据从易失 性存储器复制到非易失性存储器。在一些实施例中,该指示可描述易失性存储器内存储 该数据的位置。根据另一个方面,计算机系统包括处理电路和存储器模块。处理电路配置成处 理应用程序的指令。存储器模块可包括配置成存储应用程序指令的处理期间由处理电路 生成的数据的易失性存储器。存储器模块亦可包括配置成接收来自易失性存储器的数据 并存储该数据的非易失性存储器。在一个实施例中,处理电路配置成响应于被指示的检 查点启动将数据从易失性存储器复制到非易失性存储器。在一个实施例中,非易失性存储器和易失性存储器可被组织成一个或多个双列 直插内存模块(DIMM),使得单个DIMM包括非易失性存储器的全部或部分和易失性存 储器的全部或部分。在一个实施例中,非易失性存储器可包括多个集成电路芯片,且数 据的复制可包括并发地将数据的第一子集复制到多个集成电路芯片中的第一个以及将数 据的第二子集复制到多个集成电路芯片中的第二个。如根据下文讨论显而易见地,描述了其他实施例和诸方面。附图描述附图说明图1是根据一个实施例的处理系统的框图。图2是根据一个实施例的计算机系统的框图。图3是根据一个实施例的存储器模块的框图。图4是根据一个实施例的处理系统的框图。具体描述本专利技术涉及诸如处理系统、计算机、处理器和计算机系统的装置以及包括将检 查点数据存储于非易失性存储器中的方法的方法。根据本专利技术的一些方面,使用处理电 路执行应用程序。在一个实施例中,当应用程序的执行到达检查点时,应用程序的进一 步执行可被挂起。存储于易失性存储器中的涉及应用程序的数据可被复制到非易失性存 储器中。在一些实施例中,非易失性存储器可以是诸如NAND闪存或者相变存储器等固 态非易失性存储器。非易失性存储器附加地或者替代地可以是随机存取存储器。在一些实施例中,一旦已复制了数据,应用程序的执行可继续。若应用程序执 行期间出现错误,则可将存储于非易失性存储器中的数据复制回易失性存储器中。一旦 数据已恢复到易失性存储器,应用程序可从检查点重启动。下文中讨论其他或者替代实 施例。参考图1,示出根据一个实施例的处理系统100。系统100包括处理电路102、 存储器模块106以及磁盘存储装置108。提供图1的实施例以示出一个可能的实施例, 且包括较少、较多或者替代组件的其他实施例是可能的。附加地,图1的一些组件可组合。在一个实施例中,系统100可以是单个计算机。在这个实施例中,处理电路102可包括一个处理器110,但可能不包括互连114且可能不与大型互连122通信,两者均用 幻影示出且在下文中进一步讨论。在这个实施例中,处理器110可以是单核处理器或者 多核处理器。在另一实施例中,系统100可以是处理器集群。在这个实施例中,处理电路102 可包括多个处理器。虽然图1中只示出两个处理器一处理器110和处理器112,但处理 电路102可包括两个以上的处理器。在一些情况下,处理电路102的处理器可并发执行 单个应用程序。因此,可并行执行应用程序。在这个实施例中,处理电路102可包括互 连114,其允许处理器110和112之间的通信以及允许应用程序执行的协作。此外,在各 个实施例中,如下文中根据图2将要讨论,处理电路102可经由大型互连122与其它处理 器集群(其亦可执行该应用程序)通信。在一个实施例中,存储器模块106包括易失性存储器116和非易失性存储器 118。易失性存储器116可存储由处理电路102生成的数据以及从磁盘存储装置108取回 的数据。在本文中这些数据称作应用程序数据。易失性存储器116可按照使用电子、 磁、光、电磁或者用于存储信息的其他技术的诸多不同方式来具体化。一些具体示例包 括但不限于DRAM以及SRAM。在一个实施例中,易失性存储器116可存储由处理电路 102实现的程序。非易失性存储器118存储从易失性存储器116接收的检查点数据。检查点数据 可以与应用程序数据相同,或者检查点数据可以是应用程序数据的子集。在一些实施例 中,即使不向非易失性存储器118供电,非易失性存储器118也可永久地存储检查点数 据。如上所述,在一个实施例中,应用程序数据和检查点数据存储于存储器中。存储于 存储器中包括将数据存储于集成本文档来自技高网
...

【技术保护点】
一种数据存储方法,包括:  使用处理电路执行应用程序;  在所述执行期间,将由所述应用程序的所述执行生成的数据写入易失性存储器;  在所述写入之后,提供检查点指示;  在所述提供之后,将所述数据从所述易失性存储器复制到非易失性存储器;以及在所述复制之后,继续所述应用程序的所述执行。

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

【专利技术属性】
技术研发人员:N茹匹A戴维斯N阿加瓦尔R考夫曼
申请(专利权)人:惠普发展公司有限责任合伙企业
类型:发明
国别省市:US

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

1