对于多核芯片建立正式验证的并行软件的TICC-范例制造技术

技术编号:7153411 阅读:316 留言:0更新日期:2012-04-11 18:40
本发明专利技术示教了实施在分布式和共享存储器多核芯片中高效运行的正式验证的大量并行程序的方式。允许从被称为蜂窝的并行软件部件中的初始交互的概要语句开发程序,并且将它们逐渐地改进到它们的最终实施。在改进的每个阶段,从实施中自动得出计算中的事件的模式的正式描述。该正式描述用于两个目的:一个目的是证明正确性、定时、进展、相互排他以及避免死锁/活锁等;另一个目的是自动地将持续并行监控应用的自我监控系统(SMS)并入每个应用,而不干扰它的定时,以识别和报告性能中的错误、未决的错误以及关键行为的模式。本发明专利技术还示教了组织用于多处理器的共享存储器的方式,其最小化存储器干扰、保护数据并且提高执行效率。

【技术实现步骤摘要】
【国外来华专利技术】对于多核芯片建立正式验证的并行软件的Ticc-范例专利技术人=Chitoor V. Srinivasan President, EDSS, Inc.优先权申请号US61/195,965优先权日期10/14/2008第一部分摘要第二部分
技术介绍
第三部分
技术实现思路
第四部分 具体实施例方式第五部分权利要求 第六部分附图及简要描述 词汇表按照字母顺序的缩写 ALLEOP 允许的事件发生模式 CCP:因果通信原语 CCS 用于通信系统的微积分 CIP 蜂窝交互协议 CPU:硬件计算单元 CSP:通信序列处理 CTL:因果时间逻辑 Dm路径分配的存储器通信路径 ECT:事件特征表 FSP 有限状态处理 ndFSP JNSSfsp NFSP 非 FSP 00:对象导向的 Sm-路径共享存储器通信路径 SMS:自我监控系统 TICC 用于集成计算和通信的技术 TICC -Ppde 基于TICC 的并行程序开发和执行平台 TICCNET 基于TICC 的局域通信网 TIP 线程交互协议 第二部分
技术介绍
本专利技术教导如何使用TICC(用于集成计算和通信的技术,US专利No. =US 7,210,145B2, 2007年4月24日,专利技术人=Chitoor V. Srinivasan)来建立正式验证的大量并行软件系统,该大量并行软件系统是在任意大量共享存储器多核芯片(SMMC)或由局域网互连的共享存储器多处理器(SMP)、TICCNET (基于TICC 的局域通信网)的任意集合上运行,并且以80% -100%的效率运行。组织和操作提供(i)用于设计、实现和正式验证并行软件系统的理想环境;(ii)从被称为蜂窝的并行软件计算单元中的交互的摘要规范开始,并且逐渐地将实现改进到它的最终形式;(iii)在具有TICCNET 的SMMC网络的多样性中提供用于开发大量并行软件应用的正确的编程摘要和工具;(iv)在实现的每一阶自动生成基于正式事件的定义的计算的模型,称为允许的事件发生模式(ALLEOP),其中(ν) 不仅被用于正式验证定义的计算的属性,例如在因果时间逻辑语言(CTL语言)中陈述的正确性、定时、同步、调整、进展、活跃度、避免死锁度,还用于(vi)自动实现自我监控系统 (SMS),其监控在实现的应用的整个生命周期实现的应用的性能,该监控是与操作并行进行的并且不干扰实现的应用的定时,从而识别和报告性能的错误、即将发生的错误和告警情况定义的先验的发生。TICC -Ppde是用于开发和执行基于TICC 的并行程序的平台。其具有将所有将来的应用软件转换为完全验证的并行软件系统的潜力,在具有多核芯片的各种台式机和笔记本计算机上运行,由此提供对于在我们今天使用的技术中不能实现的大量计算能力的简单的访问。TICC -Ppde采用和集成修改版本的七个其他编程范例(i)00(对象导向的)范 M , (ii)) 中的并行计算,(iii)如在π微积分中的交互规范,(iv) 如在CSP(通信序列处理)中的计算和通信的集成,(ν)与通过FSP(有限状态处理)设计认证类似的实现的认证,(vi)与和 类似的NFSP (非NFS)系统的认证,以及(vii)使用修改的RESTCLK-路径的通信。在TICC -Ppde中使用的通信机制、并行程序组织和证明方法是新的。通过使用不同的TICC 而可能进行这些范例的集成,其能够使得硬件和软件计算部件有计划地互换信号。通过有计划的信号互换来驱动所有通信、并行处理、P线程(并行线程)交互、安全执行、中断处理、同步、调整和自我监控,而不需要使用操作系统(0S),同时保持所有软件和硬件部件的相互隔离。应用的软件计算部件,称为蜂窝,并行操作并且不是如在FSP和CCS (用于通信系统的微积分)中时间分割的并发。每个蜂窝在它自己分配的硬件CPU中操作,并且除非已经被分配了 CPU的该蜂窝暂停或终止其操作并释放了该CPU,否则其他蜂窝不使用该CPU。基于TICC 的并行处理需要并可以容纳大量CPU。除了简化并行编程和提供用于正式验证和动态自我监控的方法之外,TICC -Ppde还提供一些其他益处,如在
技术实现思路
部分描述。 具体实施方式部分通过一系列例子表示如下内容(i)组织的基本原理;(ii)通信和计算的本质;(iii)由ALLEOP定义的计算模型,其是自动从实施中得出的;(iv)使用自动从ALLEOP得到的ECT网络(时间特征表网络)上给定CTL断言(因果时间逻辑断言) 的评估来验证实施;以及(ν)同步、调整、数据保护、安全实施和自我监控。TICCNET 是基于TICC 的分布式存储器硬件通信网络,可以用于在包含256或更多SMMC (共享存储器多处理器芯片)和/或SMP (共享存储器多处理器)局域超级计算格网中在SMMC和/或SMP之间组对组的高速消息互换,每个SMMC或SMP具有32或64个处理器或更多。我们以单个芯片中集成的多个SMMC想象不远的将来的多核芯片。假设将 TICCNET 本身集成到这样的多核多SMP芯片,用于在芯片中的SMP之间高速组对组地分布式存储器消息互换。在本专利申请中仅描述TICCNET 中分布式存储器路径的结构,不描述在TICCNET 中安装路径并且在安装的路径上发送消息的机制。第三部分
技术实现思路
1.通过连续改讲的实施=TICCtm-范例介绍了从被称为蜂窝的并行软件计算单元的集合之间交互的概要规范开始的通过连续的改进的应用实施方法。蜂窝经由附接于蜂窝的端口连接的通信路径在蜂窝之间交换消息来执行并行计算。如果存在任何名称的自变量的话,如果与调用和执行名称和自变量的实施上下文中一起指定名称和自变量,但是没有定义实施它们的计算机程序,则消息子分类、方法、并行线程或条件是概要。改进涉及消息子分类和计算机程序的定义,其定义了在应用的给定概要设计中的概要方法、P线程(并行线程)和条件。在给定概要规范中随着蜂窝之间的消息流以目标导向的方式执行改进。在每一级改进中,从实施规范中自动得出由定义的计算机程序执行的计算的ALLEOP模型。该模型被用于使得在不同级的改进中在CTL语言(因果时间逻辑)中断言的属性有效。如果已经对于实施中的所有概要方法、并行线程和条件定义了计算机程序并且已经完全定义了所有消息子分类,则完全改进了实施。2. ALLEOP和证明如在部分2的具体实施方式中描述,ALLEOP指定应用中的允许的事件发生模式。存在两种事件分类通信事件分类和动作事件分类。大体来说(在具体实施方式的部分2和5中详细描述),通信事件分类是(ps,t),(pF,t)或者(pD,t)对,其中 P是通过路径发送、转发和接收消息的端口,上标S用于发送,上标F用于转发,上标D用于传递,并且t被称为时间地图,代表时间点的序列,在该时间点上在应用的运行中可以发生事件分类的实例。动作事件分类是对(name,t),其中name是变量、条件或动作并且t是表示时间点的序列的时间地图,在该时间点上设置和/或访问命名的变量,命名的条件变成真或者执行命名的动作。但是动作事件的实例可以改变并行计算的世界状态,通信事件的实例仅改变通信路径中部件的状态。用于ιΗ确操作的条件我们写X(t本文档来自技高网
...

【技术保护点】
1.一种基于集成计算和通信技术TICCTM的修改版本的集成并行程序开发和执行平台ITCCTM-Ppde,美国专利US 7,210,145B2,专利技术人Chitoor V.Srinivasan教导了以下方法:方法(1.1),对应用A实施并行计算机程序:ITCCTM-Ppde提供从称作蜂窝的概要软件计算机单元间的交互的概要规范开始的对应用A实施并行计算机程序的方法,这组蜂窝和与其相关联的所有交互规范一起作为应用A的并行程序的概要设计,称作A:DESIGN(),逐渐将A:DESIGN()中的蜂窝和交互改进到它们的最终完整的改进实施,在改进的任何阶段应用A中的并行计算机程序被称作A:implementation(),A:implementation()中的所有蜂窝的集合被称作A:cells(),A:cells()中的每个蜂窝仅通过消息交换与A:cells()中的其它蜂窝交互,每个蜂窝运行在自身专用的硬件CPU(硬件计算单元)中,该CPU不被A:cells()中的任何其他蜂窝共享;方法(1.2),对于TICCTM-Ppde唯一的消息交换:在TICCTM并行编程范例与所有其他并行编程范例之间的差别在于TICCTM-Ppde管理A:cells()中的蜂窝间的点对点和组对组通信的方法,使得每个蜂窝自身能与在A:implementation()中发生的所有其他这样的消息交互并行地传递它对它们期望的目的地蜂窝计算的消息,允许以最多几百纳秒级的可精密预测的等待时间将几乎即时保证异步的已同步消息发送到期望的目的地,假设2千兆CPU且没有消息调度或同步会话的需求;方法(1.3),形式验证A:implementation():在改进的各个阶段,包括A:DESIGN()阶段中,TICCTM-Ppde自动产生直到改进阶段的基于事件的计算模型,该模型被称作ALLEOPs(允许的事件发生模式),A:DESIGN()的ALLEOPs被称作A:designALLEOPS并且在对于该改进的任何阶段的A:implementation()的ALLEOPs被称作A:ALLEOPS(),TICCTM-Ppde使用A:designALLEOPS和A:ALLEOPS()来通过形式验证使在改进的任何阶段的设计和实施有效,形式验证的有效标准由用户指定作为因果时态逻辑(CTL)语言中的断言,TICCTM-Ppde使用A:designALLEOPS或A:ALLEOPS()来查找用户给出的CTL断言的有效性证明,在搜索证明期间与用户交互,用户在必要时提供额外的CTL断言来引导证明搜索;方法(1.4),通过使用TICCTM-Ppde SMS(自监视系统)的自动自监视来运行全面改进的A:implementation():与应用A并行地,A:ALLEOPS()还被TICCTM-Ppde用于全面改进的A:implementation()的自动动态监视,用于A在其使用期限内运行时进行校正操作,以与应用A中发生的计算事件的定时几乎没有干扰地运行,识别并报告错误、未决错误以及先验定义的警报事件模式的发生,该动态监视由TICCTM-Ppde的通信机制中内建的SMS(自监视系统)自动完成;(方法1.5),在大规模并行多计算机硬件系统中运行可任意升级的A:implementation():在任意大量CPU(硬件计算单元)中以80%至100%的效率运行可升级A:implementation(),这样的CPU为,(i)在具有32或更多个CPU的SMP(共享存储器多处理器)中的CPU,SMP中的CPU使用A:implementation()中安装的TICCTM-Ppde的软件共享存储器通信路径(sm路径)彼此通信,或(ii)在计算节点是具有32或更多个CPU的任意DMP(分布式存储器多处理器)中的CPU,DMP中的SMP使用TICCTM-Ppde的硬件分布式存储器通信路径(dm路径)来彼此通信,dm路径嵌入在称作TICCNETTM的局域网中,或(iii)在作为包含32或更多个CPU的SMP而实施的任意多核芯片中的CPU,该芯片中的所有CPU通过A:implementation()中安装的软件sm路径来彼此通信,或(iv)在作为包含任意但固定数目的SMP的DMP而实施的多核芯片中的CPU,每个SMP包含16至64个CPU,每个SMP具有自身私有的共享存储器,芯片中的不同SMP使用也与该芯片集成的TICCNETTM中的dm路径来彼此通信,或(v)SCG(超级计算网)中的CPU,SCG中的每个计算节点是SMP或DMP,SCG包含任意但固定数目的这样的SMP和DMP,SCG中的SMP和DMP由局域TICCNETTM中的dm路径互连。方法(1.6),使用相同的实施方法构建用于具有内置SMS(自监视系统)的实时信息物理并行软件系...

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

【专利技术属性】
技术研发人员:奇托尔·V·斯里尼瓦桑
申请(专利权)人:奇托尔·V·斯里尼瓦桑
类型:发明
国别省市:US

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

1