Chapter 4. Using TAU to Monitor the Performance of Components

$Revision: 1.20 $

$Date: 2007/11/10 13:27:30 $

Table of Contents

4.1. Creating the Proxy Component
4.2. Using the proxy generator
4.3. Using the proxy component

In this exercise, you will use the TAU performance observation tools to automatically generate a proxy component that monitors all of the method invocations on a port allowing you to track their performance information. While this approach won't provide all of the performance details of what is going on inside each component, it gives you a very simple way to begin analyzing the performance of a CCA-based application in order to identify which components might have performance issues.

We will start by create a proxy component for the integrator.IntegratorPort. Note that you only need to have completed Chapter 3, Using Bocca: An Application Generator for CCA in order to follow these instructions. Though the proxy will be implemented in C++, it can be used as a proxy for components implemented in any language.

4.1. Creating the Proxy Component

  • Create the proxy component for the Integrator Port using bocca

    
    $  bocca create component IntegratorProxy --language=cxx \
    --provides=IntegratorPort:IntegratorPortProvide \
    --uses=IntegratorPort:IntegratorPortUse \
    --uses=Performance.Measurement:measurement:$TAU_CMPT_ROOT/ports/Performance-1.7.3/Performance.sidl
    $  make
    
    
    Updating the cxx implementation of component myProject.IntegratorProxy ...
    $ 
    
    

    This will give us a new component, called IntegratorProxy that implements the integrator.IntegratorPort.