next up previous contents
Next: Conclusions Up: Automating Performance Modeling Previous: Model Generation

Incorporating the Lost Cycles Toolkit into Carnival

 

Although LCT was based on Lost Cycles Analysis, its techniques are widely applicable and can be easily adapted to Carnival . In this section we discuss how this integration can be accomplished.

A first issue regarding integration is data compatibility. For each program execution that is used in the modeling process, LCT receives as input a set of timing measurements, one for each category. Carnival , on the other hand, provides a trace file where dynamic performance data has not only the category as a attribute, but also the processor and basic block of occurrence. Also, this dynamic information is organized in a hierarchical fashion according to the semantic structure of the source code. In order to present performance data as a set of timing measurements we can accumulate event durations that refer to the same triple (category-processor-basic block) gif across the execution. Support for the additional attributes, however, requires enhancements to LCT, which can be done using the current implementation as a starting point, since the processing category is already an attribute. These enhancements will create inspection facilities analogous to the visualization interface of Carnival (presented in Section 3.3.2), but at the modeling level, creating a natural place to implement explanation techniques for models.

Another issue regarding the integration of Carnival and LCT is the default model assumption. We have seen in Section 4.4.2 that models of some categories such as synchronization may be arbitrarily complex. We demonstrated that Waiting Time Analysis can help solve this problem by expressing complex models as a composition of simpler models that interact. Also, the integration of static analysis techniques will provide models that can be determined at compile time. Thus, we can overcome the default model limitation by using explanation techniques and statically-acquired models, and taking advantage of the hierarchical abstraction of performance data for generating descriptive models automatically.


next up previous contents
Next: Conclusions Up: Automating Performance Modeling Previous: Model Generation

Wagner Meira
Wed Feb 28 15:37:47 EST 1996