Instruments (software)
Instruments (formerly Xray) is an application performance analyzer and visualizer, integrated in Xcode 3.0 and later versions of Xcode. It is built on top of the DTrace tracing framework from OpenSolaris, which was ported to Mac OS X v10.5 and which is available in all following versions of macOS.
Developer(s) | Apple Inc |
---|---|
Stable release | 11.6 (Same as the Xcode version it is bundled with.)
/ May 20, 2020 |
Operating system | macOS |
Type | Tracing & Profiling |
License | Freeware. Proprietary |
Website | help.apple.com/instruments |
Instruments shows a time line displaying any event occurring in the application, such as CPU activity variation, memory allocation, and network and file activity, together with graphs and statistics. Group of events are monitored via customizable "instruments", which have the ability to record user generated events and replay (emulate) them exactly as many times as needed, so a developer can see the effect of code changes without actually doing the repetitive work. The Instrument Builder feature allows the creation of custom analysis instruments. [1]
Features
Built-in instruments can track
- CPU activity of processes and threads.[2]
- Memory allocation and release,[3] garbage collection and memory leaks.[4]
- File reads, writes, locks.[5]
- Network activity and traffic.[6] This instrument works like Activity Monitor but also stores the data for future reference.
- Graphics and inner workings of OpenGL[7] and Metal.[8]
- Energy diagnostics and "dead" objects.[9]
- UI automation and Core animation.
- User events, such as keyboard keys pressed and mouse moves and clicks with exact time.
References
- "Add an instrument to a trace document - Instruments Help". Archived from the original on June 20, 2020.
- "Track CPU core and thread use- Instruments Help". Archived from the original on June 20, 2020.
- "Find abandoned memory - Instruments Help". Archived from the original on June 20, 2020.
- "Find memory leaks - Instruments Help". Archived from the original on June 20, 2020.
- "Monitor disk use - Instruments Help". Archived from the original on June 20, 2020.
- "Use Activity Monitor to track overall network and disk use - Instruments Help". Archived from the original on June 20, 2020.
- "Optimizing Performance with the GPU Counters Instrument - Apple Developer Documentation". Archived from the original on June 20, 2020.
- "Using Metal System Trace in Instruments to Profile Your App - Apple Developer Documentation". Archived from the original on June 20, 2020.
- "Measure the energy impact of an iOS device - Instruments Help". Archived from the original on June 20, 2020.