Login | Register
Login | Register

My pages Projects SunSource.net openCollabNet
OpenSPARC.net >  Cool Tools >  RST

Cool Tools - RST

Description

RST is a trace format for SPARC instruction-level traces. The RST Tools package consists of the trace format definition, a trace reader/writer library, a trace viewer program (trconv) and a utility to compress and decompress traces (rstzip). Also included is a small 1P sample trace and an example program that counts the number of instructions in a RST trace.

Trace format
A trace is a series of fixed size (24B) records. An instruction record is provided for every instruction executed. The structure of an instruction record (from include/rstf/rstf.h) is

       typedef struct {
         uint8_t     rtype;                record type
         unsigned  notused : 1;
         unsigned  ea_valid : 1;           ea field is valid - load/store only
         unsigned  tr : 1;                 did a trap occur on this instruction
         unsigned  hpriv : 1;              hyper privileged instruction
         unsigned  pr : 1;                 privileged instruction
         unsigned  bt : 1;                 branch or trap taken
         unsigned  an : 1;                 instruction was annulled
         unsigned  reserved : 1;
         unsigned  cpuid : 6;              cpu where instruction was executed
         unsigned cpuid9_6 : 4;
         unsigned notused3 : 6;
         uint32_t    instr;                SPARC instruction word
         uint64_t    pc_va;                Virtual address of PC
         uint64_t    ea_va;                Load/store virtual address or
                                               branch target virtual address
       } rstf_instrT;

There are various other records (listed line 195 in rstf.h) to mark events such as traps, tlb updates, dma operations and others. The RST trace format is described in the RST specification.

Usage
To view records in a trace

   rstunzip  trace.rz2.gz | trconv | less

See example/README for notes on building and using trace analysis utilities.

Traces
There is a small sample trace (example_trace.23847.rz2.gz) under example/ .
There is a trace of a 32-way BLAST run in the Sun Download Center.
Other traces will be provided as they become available.

Trace Generation
This package does not include tools for generating RST traces, but trace generation tools are coming soon.

Download and Install

RST is available for download from the Sun Download Center.
Uncompress and untar. Tools are in bin/, 32-bit and 64-bit libraries are in lib/, and the example program is in example/.

Support

RST is provided without support. However, Cool Tools forums are available where questions and discussions about installing, using, or improving RST can be posted. Posting in the forums does not guarantee a response. Please send your feedback to: