本发明专利技术公开了一种用于层级式并行环境中的分布式运行时诊断的技术,具体而言,公开了一种用于在层级式并行环境中执行分布式运行时诊断的方法和系统。在一个实施方式中,允许用户在运行时期间配置在其上执行诊断的处理元件、由该处理元件执行的算法、该算法针对其执行的数据集、由该处理元件执行的诊断函数、执行该诊断函数的条件以及用于该处理元件的本地存储器的可视化参数。因此,可以利用充分的控制程度和定制来执行运行时诊断,以辅助层级式并行环境中的调试。
【技术实现步骤摘要】
本专利技术的实施方式总体上涉及调试工具。更具体地,本专利技术的实施方式涉及用于 层级式并行环境中的分布式运行时诊断的调试工具。
技术介绍
在跨过各种异种处理元件来处理数据的软件系统中,各通信层未必提供数据完整 性的保证。这种软件系统的一个示例是分布式并行应用,其包括在多个x86处理器上执行 的部分以及在多个Cell BE处理器上执行的部分。软件开发者可能已经创建了通过了单元 测试的复杂分布式应用。然而,在分布式应用运行时,返回的数据可能略微不同于期望的结^ ο在这种情况下,跨过分布式异种环境来标识这种数据异常的起因可能非常困难。 起因可能是软件bug、硬件故障或者设计缺陷。这对确保数据完整性、确保软件系统完整性、 性能分析以及层级式并行软件的快速有效开发提出了挑战。
技术实现思路
本专利技术的一个实施方式包括一种用于在包含多个处理元件的层级式并行环境中 执行分布式运行时诊断的方法。所述方法可以一般地包括接收至少指定所述层级式并行 环境的第一处理元件以用于诊断的用户输入;接收指定所述第一处理元件使用数据集来执 行的算法的用户输入;接收指定条件的用户输入,其中所述条件指定在所述算法期间何时 执行诊断函数;向所述第一处理元件传输所指定的算法、数据集、诊断函数以及所指定的条 件;以及在所述条件满足时,在所述第一处理元件上调用所述诊断函数。本专利技术的另一实施方式包括一种包含程序的计算机可读存储介质,当所述程序执 行时,其执行用于在包含多个处理元件的层级式并行环境中执行分布式运行时诊断的操 作。所述操作一般地可以包括接收至少指定所述层级式并行环境的第一处理元件以用于 诊断的用户输入;接收指定所述第一处理元件使用数据集来执行的算法的用户输入;接收 指定条件的用户输入,其中所述条件指定在所述算法期间何时执行诊断函数;向所述第一 处理元件传输所指定的算法、数据集、诊断函数以及所指定的条件;以及在所述条件满足 时,在所述第一处理元件上调用所述诊断函数。本专利技术的又一实施方式包括一种系统,其具有处理器和包含程序的存储器,当所 述程序由处理器执行时,其配置用于执行用于在包含多个处理元件的层级式并行环境中执 行分布式运行时诊断的操作。所述操作一般地应当包括接收至少指定所述层级式并行环 境的第一处理元件以用于诊断的用户输入;接收指定所述第一处理元件使用数据集来执行 的算法的用户输入;接收指定条件的用户输入,其中所述条件指定在所述算法期间何时执 行诊断函数;向所述第一处理元件传输所指定的算法、数据集、诊断函数以及所指定的条 件;以及在所述条件满足时,在所述第一处理元件上调用所述诊断函数。本专利技术的另一实施方式包括一种用于在包括处理元件层级的计算环境中执行分布式运行时诊断的计算机实现方法,所述多个处理元件至少包括主处理元件和多个从处理 元件。所述方法一般地可以包括由所述主处理元件调用一个或多个从处理元件上的可执 行代码。指示一个或多个从处理元件中的至少第一从处理元件上的可执行代码在满足指 定条件时调用诊断函数。所述方法可以进一步包括当所述条件满足时,在第一从处理元件 上的可执行代码的执行期间,经由所指示的可执行代码在从处理元件上调用诊断函数。所 述方法可以进一步包括由第一从处理元件存储通过在所述第一从处理元件的本地存储器 的专用区域中调用诊断函数而获得的结果。而且还可以包括由第一从处理元件向主处理 元件报告所述结果。附图说明为了更详细地理解实现上文记载的本专利技术的特征、优点和目的的方式,可以参考 附图中示出的实施方式,来对上文简要概括的本专利技术进行更为具体的描述。然而,注意,附图仅示出了本专利技术的典型实施方式,因此不构成对本专利技术范围的限 制,因为本专利技术可以允许其他等效实施方式。图1示出了按照本专利技术一个实施方式的、层级式并行环境的处理器视图。图2示出了按照本专利技术一个实施方式的、层级式并行环境的结构视图。图3示出了按照本专利技术一个实施方式的、用于在层级式并行环境中执行分布式运 行时诊断的图形用户界面。图4是示出了按照本专利技术一个实施方式的、用于由主处理元件来配置和执行分布 式运行时诊断的方法的流程图。图5是示出了按照本专利技术一个实施方式的、用于在指定的处理元件上配置和执行 分布式运行时诊断的方法的流程图。图6是示出了按照本专利技术一个实施方式的、用于在指定的处理元件上执行诊断函 数的方法的流程图。具体实施例方式因此,本专利技术的实施方式提供用于在跨层级式并行环境中对数据异常或者应用故 障的源进行标识的技术。例如,实施方式针对如何在层级式并行环境中执行分布式运行时 诊断提供了软件开发者控制。此外,本专利技术的实施方式允许软件开发者从处理元件的角度 和详细底层代码的角度两方面来对分布式运行时诊断进行控制。此外,本专利技术的实施方式 提供了对可以针对分布式并行异种应用收集的运行时信息的高度控制。特别地,开发者可 以控制测试用例、数据、执行测试的时间以及什么处理元件执行测试用例。控制测试用例包 括控制发生的特定诊断活动,诸如每毫秒存储程序计数器,或者对本地存储器中的数组应 用散列。而且,软件开发者可以并入作为给定测试设计的部分被处理的数据的先验知识。此 外,软件设计者可以控制诊断代码何时执行,以及由哪组处理元件来执行诊断代码。最后, 为了可视化,软件设计者可以控制通过层级返回什么数据以及何时返回,以便进行可视化。 以此方式,软件开发者可以深入探究层级,并且获得针对特定数据集的、来自特定事件和处 理位置的信息。此外,软件开发者可以控制处理元件在运行时期间的性能特性。下面,参考本专利技术的实施方式。然而,应当理解,本专利技术不限于所描述的具体实施方式。相反,可以想到,下文特征和元素(不论其是否涉及不同的实施方式)的任意组合都 可以用来实现和实践本专利技术。此外,尽管本专利技术的实施方式可以实现相对于其他可能方案 和/或相对于现有技术的优点,但是给定的实施方式是否实现了特定的优点不是本专利技术的 限制。由此,下文的方面、特征、实施方式和优点仅仅是示范性的,并且不构成所附权利要求 书的要素或者限制,除非在权利要求书中明确记载。类似地,提及“本专利技术”不应当认为是 对在此公开的任何专利技术主题的概括,并且不应当认为是所附权利要求的要素或者限制,除 非在权利要求书中明确记载。本专利技术的一个实施方式实现为用于与计算机系统结合使用的程序产品。该程序产 品的程序定义了实施方式的功能(包括在此描述的方法),并且可以包含在各种计算机可 读存储介质上。示范性的计算机可读存储介质包括但不限于(i)不可写存储介质(例如, 计算机内的只读存储器设备,诸如CD-ROM驱动器可读的CD-ROM盘),信息在其上永久性存 储;(ii)可写存储介质(例如,磁盘驱动器中的软盘或者硬盘驱动器),其上存储可改变的 信息。当携带涉及本专利技术功能的计算机可读指令时,这种计算机可读存储介质是本专利技术的 实施方式。其他介质包括通信介质,信息通过该通信介质而被传递给计算机,诸如,通过计 算机网络或者电话网络,包括无线通信网络。后一种实施方式特别包括传输去往/来自互 联网和其他网络的信息。当携带涉及本专利技术功能的计算机可读指令时,这种通信介质是本 专利技术的实施方式。广义上讲,计算机可读存储介质和通信介质在此可以称为计算机可读介 质。一般地,被执行以实现本专利技术实施方式的例本文档来自技高网...
【技术保护点】
一种用于在包含多个处理元件的层级式并行环境中执行分布式运行时诊断的计算机实现方法,包括:接收至少指定所述层级式并行环境的第一处理元件以用于诊断的用户输入;接收指定由所述第一处理元件使用数据集来执行的算法的用户输入;接收指定条件的用户输入,其中所述条件指定在所述算法期间何时执行诊断函数;向所述第一处理元件传输指定的所述算法、所述数据集、所述诊断函数以及指定的所述条件;以及当所述条件满足时,在所述第一处理元件上调用所述诊断函数。
【技术特征摘要】
...
【专利技术属性】
技术研发人员:JS麦克奥利斯特,TJ玛林斯,N拉米雷斯,
申请(专利权)人:国际商业机器公司,
类型:发明
国别省市:US[美国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。