summaryrefslogtreecommitdiff
path: root/docs/08-Streamline-and-cluster-switching-howto.txt
blob: a572a76caf34f7c84ba9a15313283d0501c51274 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
Instructions & guidelines to use Streamline with Cluster Switching
==================================================================

A   Introduction

    This note describes how the Virtualizer software and the Streamline
    tools should be configured to be able to visualize cluster Switching
    and PMU counters across switches.

B   Guidelines

    Setting up your target

    1.  Setup Gator

        These instructions are specific to the following big.LITTLE Migration
        target: ARM Linux on Real-Time System Model v7.0.1 with the
        Virtualizer.

        You have to build the Virtualizer specific gator daemon and the gator
        driver.

        Follow the instruction in paragraph 'Setting up an ARM Linux target'
        which you can find in ARM DS-5 Documentation in ARM Streamline >
        Setting Up Your Target (click Help->Help Contents in your DS-5 Eclipse
        window).

        Note that the documentation you find there does not cover the
        big.LITTLE Migration target. You have to consider the following
        variations:

        *  Source code for the Gator driver (gator-driver.tar.gz) and daemon
           (gator-daemon.tar.gz) are in the extra/gator subdirectory of the
           Virtualizer release tarball.

        *  To build the Gator driver, use the Linux kernel source as well as
           the configuration file mentioned in docs/03-Linux-kernel-build.txt.
           The configuration file has all the necessary Kernel configuration
           options for gator enabled already.

        *  The Streamline version in DS-5 V5.9 supports the Real-Time System
           Model v7.0.1. For this specific model, you get values for the PMU
           Cycle counter, the Instruction TLB refill counter and the
           Instructions executed counter. Since an RTSM does not provide
           accurate cycle and timing information the samples-generated data is
           still not meaningful. However, it is sufficient to showcase and
           validate the mechanisms required to use the PMUs with the
           Virtualizer.

        *  A default counter configuration file 'configuration.xml' is provided
           in the extra/gator subdirectory of the Virtualizer release tarball.
           Note, that you can always configure counters using DS-5's counters
           configuration dialog box but the existing configuration.xml already
           enables all meaningful counters on the Real-Time System Model v7.0.1.

        *  Copy gatord, gator.ko and configuration.xml into the same directory
           of the target file system.

        *  Run gatord with the default port 8080 since a corresponding setup is
           done in the mxscripts for the gatord listening port in user-mode
           networking:
           $ ./gatord &

    2.  Setup user-mode networking

        *  Invoke the model with the network (string networking) related
           options depicted in the big-little-mp<x>.mxscript file (x is 1 or 4
           as the case may be).

        *  Configure an IP address on the network interface of the target.
           There are multiple ways to do it, one would be the following:

           Activate the network interface:
           $ ifconfig eth0 up

           Invoke DHCP client on the network interface (e.g. udhcpc in
           Busybox) to obtain an ip address:

           $ IP_ADDR=`udhcpc -i eth0 2>/dev/null | grep "^Lease" |
             awk '{print $3}'`

           Add the ip address to the network interface:

           $ ifconfig eth0 $IP_ADDR

    Running a Streamline session

    1.  You can now connect from your DS-5 ARM Streamline Data view to the
        target by providing 'localhost' into the Address field and press the
        'Start capture' button.

    2.  Invoke cluster switches. Please follow the instruction in
        Documentation/cpu-freq/cpufreq-arm-bl.txt in the Linux kernel source
        mentioned in docs/03-Linux-kernel-build.txt.

    3.  Press the 'Stop' button of the current Capture and evaluate the
        graphical representation of the PMU counters mentioned above as well
        as the switching counts.