In addition to the tools listed in the previous section, a set of performance and optimization tools, bundled as the Computer Hardware Understanding Development Tools (CHUD), is available on the Xcode CD as an optional installation. You can also download the latest version from ftp://ftp.apple.com/developer/Tool_Chest/Testing_ _Debugging/Performance_tools/ . CHUD tools are used to configure and display the performance monitor counters provided on Apple systems. These performance monitors record events such as cache misses, page faults, and other performance issues. The list provides information on a few of the tools provided with the CHUD collection. For more details see http://developer.apple.com/tools/performance/. -
- Shark
-
Provides instruction-level profiling of execution time of a program, using statistical sampling. Advice on optimization is also provided. (A command-line version, /usr/bin/shark , is also provided.) -
- Monster
-
Provides hardware- related performance measurements and displays the results in a spreadsheet format. (A command-line version, /usr/bin/monster , is also provided.) -
- Saturn
-
Provides exact (as opposed to statistical) profiling at the function level. For example, it reports how many times a given function is called. Results are represented in graphical format. -
- CacheBasher
-
Analyzes cache performance. -
- Reggie SE
-
Analyzes and modifies CPU and PCI configuration registers. -
- Skidmarks GT
-
Measures processor performance, specifically , integer, floating-point, and vector performance. -
- Amber
-
Command-line tool for instruction-level trace of execution threads. -
- acid
-
Command-line tool used to analyze traces provided by Amber. -
- SimG5
-
Command-line tool that simulates the G5 processor. You can use this cycle-accurate simulator to run through a trace file generated by Amber. -
- SimG4
-
Command-line tool that simulates the G4 processor. You can use this cycle-accurate simulator to run through a trace file generated by Amber. A CHUD framework (/System/Library/Frameworks/CHUD.framework ) that enables you to write your own performance tools (among other things) is also provided. |