Tuesday Mar 04, 2008

Extracting more detailed instruction frequency data from BIT

BIT has the ability to print out instruction frequency data, but there may be occasions where more detail is required. One way of getting more complete data is to ask bit to dump the disassembly for the entire application (using the option -a dis) and then write a script to parse the resulting output. The example script here extracts the integer/logical operations and reports them by type.

Wednesday Feb 27, 2008

Parsing branch data from BIT

I've an old article on using data from BIT to examine the behaviour of branches in code, and using that to see whether a training workload is representative of the real work the application does. The article contains a couple of scripts for parsing the output from BIT to generate the appropriate results and graphs.

I've just been helping out in looking at branch data once again, this time breaking down the branch probabilities by the condition codes of the branch. The code to do this is relatively easy, but its annoying to have to write it yourself, this is my code for breaking down branch frequencies by condition code. The output is somewhat cryptic, for each condition code it will print out columns for whether the branch was annulling (a) or not (n), and predicted taken (pt), predicted not taken (pn), or not predicted(no).

Wednesday Nov 28, 2007

CMT Developer Tools webcast

I've just had another webcast posted. This time it's discussing the CMT Developer Tools. The tools are add-ons for both Sun Studio 11 and Sun Studio 12. Of particular excitement was getting two of the tools ported to x64. There's a bit more information on the individual tools on my post back in July when we released them.

The CMT Developer Tools webcast covers installing and using the tools. The presentation is part slideware and part demo.

Thursday Nov 08, 2007

Cool Tools platform matrix

A matrix showing the platforms that the various cool tools are available on.

ToolSPARC/Solarisx86/Solarisx86/Linux
GCC for SPARC SystemsYES
Sun Studio 12YESYESYES
ATSYESYES
BITYES
DiscoverYES
SPOTYESYES
FabanYESYESYES
Sun Application Porting AssistantYESYES
Thread AnalyzerYESYESYES
Cool TunerYES
Cool StackYESYES
CooltstYESYESYES
Consolidation ToolYESYESYES
corestatYES
SHADEYES

Tuesday Jul 24, 2007

CMT Developer Tools

We've just released the CMT Developer Tools for Sun Studio 12. The tools are available for both SPARC and x64 systems, although not all tools are on the x64 platform. The list of tools is as follows:

  • ATS - Automatic Tuning and Troubleshooting System. Automatically finds the best compiler flags or locates optimisation bugs in an application without access to the source code. (SPARC and x64)
  • SPOT - Simple Performance Optimisation Tool. Generates an html report detailing where the application is spending time, and information about why it might be spending time there.(SPARC and x64)
  • BIT - Binary Improvement Tool. Reports information about application coverage also produces instruction execution counts, branch taken data etc. (SPARC only)
  • Discover - Sun Memory Error Discovery Tool. Detects memory access issues such in an application. Examples are accesses to uninitialised memory, accesses beyond array bounds, memory leaks, etc. (SPARC only)
About

Darryl Gove is a senior engineer in the Solaris Studio team, working on optimising applications and benchmarks for current and future processors. He is also the author of the books:
Multicore Application Programming
Solaris Application Programming
The Developer's Edge

Search

Categories
Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
5
6
8
9
10
12
13
14
15
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today
Bookmarks
The Developer's Edge
Solaris Application Programming
Publications
Webcasts
Presentations
OpenSPARC Book
Multicore Application Programming
Docs