Skip to main content
  • Products
  • Evaluate our Software
  • Downloads
  • Free Utilities
  • Purchase
  • Support
  • About Us
  • Blog
  • Forum
  • Search
    • Contact Us
    • Forum
    • Knowledge Base
    • Web Shop
    • Newsletter
    • RSS
  •   Jobs
  •   Videos
  •   Blog
  •   Sustainability
  • Ozone - J-Link Debugger
  • Code Profiling
  • Technology

Code profiling

Measure and improve code performance with Ozone.

Contact us
Downloads
SEGGER Ozone
  1. 1.What is Code Profiling?
  2. 2.Live Code Profiling with Ozone
  3. 3.Code Profiling Reports

With the J-Trace PRO streaming trace capabilities, Ozone analyzes trace data in real-time, while the data is transferred from the target system to the host computer. The analyzed data contains information about which instructions have been executed on the target, whether conditional instructions have taken both paths, and how often each instruction has been executed. With the captured trace data, Ozone analyzes your application to construct a code profile and identify "hot spots" for potential optimization.

Video: Code Profiling with Ozone [0:10]

Ozone analyzes and displays the Run Count and CPU Load of modules and functions while the system executes.

What is Code Profiling?

Code profiling measures execution time and frequency of functions, blocks and instructions. The metrics characterize an execution system and highlight where computing time is spent. This makes it easy to find potential for optimization: Code that is executed frequently and/or places a high load on the system.

Identifying "hot spots" can be crucial. Reducing the execution time of frequently used functions by just a single CPU cycle can have higher impact on the system than reducing a rarely used function by a thousand CPU cycles.

Live Code Profiling with Ozone

With J-Trace PRO streaming trace it is possible to get the most accurate code profiling information. Tests can be done without any source modification and even on production code.

Ozone updates code profiling data in real time, while the target is running. It maps the execution counts to the high-level source code and show the number of execution for each function, block, or source line. This enables identification of time-consuming or frequently called routines which may help to selectively optimize the system.

ozone-executioncounter

Ozone displays and updates the execution counters per line and instruction live.
A mouse-over tooltip provides more information about conditional execution.

Code Profiling Reports

After running all tests and measuring performance, the information can be used to improve the system. Ozone can export the data for further analysis.

About Code Profiling Reports...

Headquarters

SEGGER Microcontroller GmbH

Ecolab-Allee 5
40789 Monheim am Rhein, Germany
info@segger.com
Tel.: +49-2173-99312-0
Fax: +49-2173-99312-28

Locations

USA: SEGGER Microcontroller Systems LLC

Boston area
101 Suffolk Lane
Gardner, MA 01440, USA
us-east@segger.com
Tel.: +1-978-874-0299
Fax: +1-978-874-0599

Silicon Valley
Milpitas, CA 95035, USA
us-west@segger.com
Tel.: +1-408-767-4068

China: SEGGER Microcontroller China Co., Ltd.

Room 218, Block A, Dahongqiaoguoji
No. 133 Xiulian Road
Minhang District, Shanghai 201199, China
china@segger.com
Tel.: +86-133-619-907-60

ISO 9001 certified

ISO 9001

30+ years of experience

First-class embedded software tools since 1992
  • Imprint
  • Disclaimer
  • Privacy Policy
© 2025 SEGGER - All rights reserved.