Knowledge Bases in Debugging Parallel and Distributed Systems Based on Event Traces
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Knowledge Bases in Debugging Parallel and Distributed Systems Based on Event Traces
P.Dauphin
Universit¨a t Erlangen–N¨u rnberg,IMMD VII,Martensstraße3,D–8520Erlangen,Germany email:pdauphin@rmatik.uni-erlangen.de
Abstract
Systematical event trace analysis requires both detailed knowledge about the event trace analysis environment used and detailed knowledge about the object system itself.This article presents three important knowledge bases which,when contained in event trace analysis envi-ronments,facilitate achieving useful performance results of the system under investigation.
ParaGraph—a dedicated event trace analysis envi-ronment—and SIMPLE—a universal event trace analysis environment—will be examined according to the knowledge bases defined.
1.Introduction
Debugging and analysis of parallel programs is a difficult task!A proven method to gain the necessary insight into the dynamic behavior of parallel programs is event-driven monitoring,a technique in which the real-time sequence of significant events is monitored and stored as an event trace([7,2]).This event trace is used to get behavioral predicates of the parallel program.
2.Knowledge Bases in Event Trace Analysis Various tools for event trace analysis are known.They can roughly be classified into universal(i.e.monitor and object system independent)tools,such as SIMPLE[8] and TraceView[6],and dedicated tools(i.e.based on afixed event trace format and only available for certain architectures),such as ParaGraph/PICL[3],TOPSYS[1] and many others.To be able to extract information out of an event trace,the user must be familiar with the tools of the event trace analysis environment used;he has to learn the capabilities of the tools and their correct handling.
Because of the independence of a dedicated event trace format,universal analysis tools cannot fall back on semantics internally given by the structure of the event trace as it is with dedicated tools.This semantical knowledge must be delivered by the user.The correct usage of a universal analysis tool requires not only knowledge about the formalism of the input of seman-tical information,but also knowledge about the correct execution call of the ing dedicated analysis tools, the former is unnecessary,as the semantics are coded into the tools themselves by means of afixed event trace format.
To distinguish between the various tools of an analysis environment,the user has to acquire knowledge about what information a certain tool is good for.This is crucial for both universal and dedicated analysis environments.
Last but not least,the user needs far-reaching knowledge about his application—knowledge about its functional structure,the underlying machine model,and the map-ping of the functionality onto the machine model—in order to get useful results out of the event trace.
To make event trace analysis environments usable for non-experts,the state-of-the-art analysis environments should be equipped with the following knowledge bases: 1.individual tool knowledge base:contains informa-
tion about the correct usage of one dedicated analysis tool of the event trace analysis environment;
2.global tool knowledge base:contains information
about the capability of all available tools of an event trace analysis environment;
3.object system knowledge base:contains informa-
tion about the functional structure(functional model) and the mapping of the application onto the machine. Let us now investigate whether event trace analysis envi-ronments of today already include the knowledge bases mentioned,or—if not—how the knowledge bases can be integrated.The investigation will exemplarily be carried out for the dedicated environment ParaGraph and the universal environment SIMPLE.
3.Individual Tool Knowledge
ParaGraph is built upon the event trace format PICL.Its analysis tools use the semantics of PICL.The call of each tool and possible options are offered in menus.Thus, the individual tool knowledge base is already included in ParaGraph.
SIMPLE is independent of afix event trace format. Thus,the user has to write an event trace description. That is why SIMPLE tools do not need to know event
Published in:Proceedings of“3rd ACM/ONR Workshop on Parallel and Distributed Debugging”,
ler,editor,San Diego,California,May17–18,1993.
trace semantics.However,for performance evaluation to be meaningful,semantics must be expressed.In SIMPLE this semantical knowledge is stored in so-called configurationfiles,edited by the user according to a predefined configuration language.Aside from the grammar of the configuration languages,the user must know the correct call of the various analysis tools in SIMPLE.To unburden the user of such a magnitude of details,we propose the approach shown infig.1.
behavior
Figure1:Individual Tool Knowledge in SIMPLE By means of a meta language,the syntactical and semantical structure of each configuration language is de-scribed.For each analysis tool we additionally construct a description of the tool’s call.For reasons of correctness we compile both meta descriptions and generate the individual tool knowledge base.Then,when editing a configurationfile for an analysis tool or just calling an analysis tool,the program interacting with the user can call the individual knowledge base for help.The user need no longer worry about the correctness of a config-urationfile or a tool’s call.Thus,semantical knowledge becomes integrated in our universal environment.
4.Global Tool Knowledge
ParaGraph offers a detailed menu of different possibil-ities of event trace analysis.The different possibilities show the contents of an event trace as alternative views. The capabilities of every analysis tool are fully integrated in ParaGraph.Nevertheless,the user must know which evaluation method and tool are best for its purposes.A knowledge-based help system is missing.
SIMPLE is a tool-set consisting of single programs which can be invoked via a Shell interpreter.A common front-end interface as with ParaGraph does not exist. Therefore,to generate comparible alternative views of the same behavioral predicate,the calls of the various
tools involved must be coordinated by the user.Aside from this,the configurationfiles of the different tools vary.For alternative views configurationfiles must be transformed into one another.
In our
approach(fig.2),we try to formalize the capa-bilities,the equalities,and the differences of the various tools of SIMPLE.Out of these formal descriptions of the tool’s properties,we generate the global tool knowledge base
through a compiling process.
behavior
output
Figure2:Global Tool Knowledge in SIMPLE
Programs which assist the user in selecting a suitable tool for the desired event trace analysis or a suitable alternative presentation of analysis results use the con-tents of the global tool knowledge base to fulfill their job properly.As the global tool knowledge base does not contain individual tool knowledge,the programs must also cooperate with the individual tool knowledge base. Note,that the global tool knowledge base can serve as the base of an intelligent help system.
5.Object System Knowledge
Knowledge about the object system under investiga-tion is integrated into ParaGraph by the fact that it is dedicated to message-passing systems.However, concrete knowledge about a program that the user is just examining cannot be automatically accessed—it must be delivered explicitly by the user!Other dedicated analysis tools behave similarly.
In SIMPLE,by integrating monitoring and modeling,we achieved that object system knowledge is available and usable during the event trace analysis process.Here, the object system knowledge must be submitted by event-oriented models such as stochastic graph models or Petri nets;the set of events in the models and in the event trace must be equal which is guaranteed by an automatic instrumentation of the program under investigation controlled by the model[4].
2
performance behavior
event trace description
event trace
Interaction
input
input
output
global tool knowledge
base
definition of interesting points search abstract
EDMCC2(Munich,Germany,April1991),A.Bode,Ed., Springer,Berlin,LNCS487,pp.80–89.
4。