Debugging & Profiling

Profile Explorer

Profile Explorer is a Windows desktop tool for viewing CPU profiling traces captured with Event Tracing for Windows. It turns large captures into hot function lists, flame graphs, call trees, and code-level detail so developers can find performance bottlenecks faster.

Visit official website ↗
✓ Software download·Open Source·Updated October 10, 2026
DeveloperMicrosoft Corporation
LicenseOpen Source
File size71.3 MB
Languageen-US
Downloads576

What Profile Explorer Does for Windows Performance Work

Profile Explorer is a Windows desktop application that reads CPU profiling traces collected through Event Tracing for Windows and turns them into views you can actually navigate. After loading a capture, it builds profile samples and call stacks, then presents the slowest parts of the workload through a hot function list, flame graph, timeline, call tree, and caller/callee breakdown. From any function you can jump into disassembly, mapped source lines, or a control-flow graph. The purpose is straightforward: shorten the distance between a heavy trace file and the specific line of code responsible for the delay, without waiting on a slow or cluttered interface.

A useful way to think about the tool is as a companion to Windows Performance Analyzer rather than a replacement for it. It concentrates on applications and adds binary analysis that many trace viewers skip: assembly is parsed into an intermediate representation, addresses map back to source lines, and a function's control flow can be drawn as a graph. You can record a session inside the app or load traces you already have. Teams that routinely move files between storage clients such as Microsoft OneLake file explorer for Windows will recognize the same principle here: bring the heavy data in once, and make exploring it feel immediate.

Benefits of Using Profile Explorer

The clearest benefit of Profile Explorer is speed. Large captures open quickly, most processing runs multi-threaded, and the interface stays responsive because analysis work does not block it. That changes how you investigate: instead of trimming a capture before you can look at it, you can open the whole thing and follow the evidence. The second benefit is depth. Hot function lists and flame graphs answer where time goes, while assembly, source file, and flow graph views answer why, all in the same window and without juggling separate disassemblers. Marking, searching, and filtering isolate one function or stack while comparisons stay visible, and several functions can be examined side by side. Debug symbol files resolve in parallel and source lines load on demand, so symbol handling rarely becomes its own bottleneck. For compiler, runtime, and application developers who need reproducible performance data, that mix of fast loading, binary-level insight, and an IDE-style layout is hard to match.

Profile Explorer features

Key capabilities and highlights.

Feature 1

Hot Function Ranking for Fast Triage

The summary report ranks the functions consuming the most CPU time so you can identify the worst offenders within seconds of opening a trace. Each entry links straight into flame graph, call tree, and code views, so you can confirm a suspicion immediately instead of hunting through raw events.

Feature 2

Flame Graph and Timeline Views

The flame graph shows how time is distributed across the call hierarchy, while the timeline exposes bursts and idle gaps across the recording. Used together they distinguish a cost that runs constantly from a short, expensive spike that only appears under load.

Feature 3

Call Tree and Caller/Callee Analysis

Expand or collapse stacks to see which parents lead into an expensive function and which children it spends time in. This is how you trace the real caller behind a hot leaf instead of patching a symptom that keeps returning after every release.

Feature 4

Assembly View with Control-Flow Graph

Disassembly is parsed into an internal representation, so instructions can be read interactively, addresses and branches followed, and a function's control-flow graph viewed as a diagram rather than a flat listing. This makes hand-tuned or heavily optimized code far easier to reason about.

Feature 5

Source File View with Symbol Mapping

Debug symbol files are resolved in parallel and source lines are read on demand for the function you are inspecting. Navigation therefore stays quick while individual instructions still connect back to the exact lines of code that produced them, shortening the path from a hot loop to a concrete fix.

Feature 6

Built-in Trace Recording

Collect a profiling trace from inside the application and analyze it straight away, with no handoff between separate capture and viewing utilities. Skipping that extra step shortens the loop between reproducing a slowdown and understanding which code path is responsible for it.

Feature 7

Fast Loading of Very Large Traces

Multi-threaded algorithms keep interaction smooth even with captures running beyond ten gigabytes, and background processing does not block the interface. Files you would otherwise have to split or trim can be opened whole, so no useful evidence is discarded before you begin investigating.

Feature 8

Search, Filter, and Mark Functions

Filtering narrows a trace to a single module, thread, or call path, and marks tag the functions worth returning to later. Comparing several functions at once keeps related findings in one place instead of scattered notes across separate sessions.

Old versions

Browse historical releases and previous builds.

1.2.12026-02-26

Frequently asked questions

Common questions about Profile Explorer.

What is Profile Explorer used for?

It is a viewer for CPU profiling traces captured with Event Tracing for Windows. Instead of leaving you with a wall of raw events, it turns a capture into ranked functions, graphs, and code-level detail so you can work out why an application is slow and where optimization will pay off.

Can Profile Explorer open traces I recorded earlier?

Yes. You can load a profiling trace created previously, or start and stop a recording session inside the application, then open and analyze that capture in the same interface.

How is Profile Explorer different from Windows Performance Analyzer?

The two are complementary. Windows Performance Analyzer is a general-purpose front end for system-wide traces, while this tool concentrates on application CPU work and adds binary analysis, such as parsing assembly, mapping addresses to source, and drawing control-flow graphs, behind an IDE-like interface.

Do I need source code or debug symbols to get useful results?

No. You can identify hot functions and read their assembly without any source. When symbol and source information is available it is resolved, and additional views then connect individual instructions back to specific lines, which makes fixes easier to plan.

Can it open a binary without a profiling trace?

Yes. Opening binaries independently of a trace is supported, which is useful when you want to examine a compiled module's code or explore a library before deciding what to profile.

How does it handle very large trace files?

Large captures are processed with multi-threaded algorithms and the interface updates asynchronously, so traces of many gigabytes remain navigable. Loading and initial processing are the demanding steps; interaction afterwards feels close to instant.

Can I compare multiple functions at the same time?

Yes. Several views can stay open, and more than one function can be inspected side by side. Search, filtering, and marking help you keep the functions you care about visible while moving between call tree, flame graph, and code views.

Is guidance available inside the app?

Yes. Most views have a help button in the upper corner that opens the matching documentation page in a built-in help panel, so you can read how a view works without leaving the trace you are analyzing.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

Software download

Download Profile Explorer

Profile Explorer is a Windows desktop tool for viewing CPU profiling traces captured with Event Tracing for Windows. It turns large captures into hot function lists, flame graphs, call trees, and code-level detail so developers can find performance bottlenecks faster.