The developer tools that ship with Tiger include an impressive array of debugging and tuning tools. These tools are extensively documented at /Developer/ADC Reference Library/documentation/Performance/Conceptual/PerformanceOverview/index.html. This site includes a more complete list of tools and offers examples to demonstrate the use of these tools. The following short list is intended to give you an idea of what is available.
gdb
The GNU debugger.
MallocDebug
Analyzes memory usage.
ObjectAlloc
Analyzes both memory allocation and deallocation.
heap
Analyzes memory usage.
leaks
Lists the addresses and sizes of unreferenced malloc buffers.
malloc_history
Lists the malloc allocation history of a given process.
vm_stat
Lists virtual memory statistics.
vmmap
Displays a virtual memory map in a process, including the attributes of memory regions such as starting addresses, sizes, and permissions.
OpenGL Profiler
Profiles OpenGL-based applications.
QuartzDebug
A debugging tool related to the Quartz graphics system.
Sampler
Performs a statistical analysis of where an application spends its time by providing information such as how often allocation routines, system calls, or other functions are called.
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.)
Spin Control
Monitors programs that become unresponsive and cause the spinning curser.
Activity Monitor
GUI application, located in /Applications/Utilities, that displays information on memory and CPU usage for running processes. This application is similar to the command line utility, top, which is also included with Tiger.
BigTop
GUI application, similar to both top and vm_stat, that displays information on memory, CPU, network, and disk usage for running processes.
Thread Viewer
Profiles individual threads in multithreaded applications.
gprof
Profiles execution of programs by reporting information such as execution times, and the number of calls for individual functions.
fs_usage
Displays information on filesystem activity.
sc_usage
Displays information on system calls and page faults.
otool
A command-line utility used to display information associated with object files or libraries. Earlier, we used it with the -L option, which displays the names and version numbers of the shared libraries used by the given object file. For more details see the otool manpage.
top
Reports dynamically updated statistics on memory and CPU usage for running processes.
c2ph
Displays information on C-structures in object files.
kdump
Displays kernel race data.
atos
Converts to and from symbol names and numeric address of symbols in running programs.
mn
Displays symbol table for object files.
pagestuff
Displays information about the logical pages of a Mach-O executable file.
pstruct
Same as c2ph.
sample
A command-line tool used to profile a process over a time interval.