# Create and open snapshots

> **TL;DR**
> Profiler home page: `View | Tool Windows | Profiler`

This topic explains the steps to create a snapshot. After you have gathered the data, you can analyze the snapshot right away, save for later, or send to someone else.

## Prerequisites

You can use the default settings to profile most applications. Unless you are using Linux or want to use a custom profiler, no [configuration](custom-profiler-configurations.html) is required: everything works out-of-the-box.

> **Note:**
> For Linux and customizations, refer to [Custom profiler configurations](custom-profiler-configurations.html).

IntelliJ Profiler supports the following [run
configurations](run-debug-configuration.html):

|  | Local process | [Run targets](run-targets.html) |
| --- | --- | --- |
| [Application](run-debug-configuration.html#createExplicitly) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) |
| [Spring Boot](run-debug-configuration-spring-boot.html) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) |
| [Micronaut](micronaut.html) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) |
| [Kotlin](run-debug-configuration-kotlin.html) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) |
| [Ktor](ktor.html) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) |
| [JUnit and Arquillian JUnit](run-debug-configuration-junit.html) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) |
| [TestNG and Arquillian TestNG](run-debug-configuration-testng.html) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) |
| [Maven](profile-maven-goals.html) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) | ![Feature is not supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/cross_retina.png) |
| [Gradle](create-run-debug-configuration-gradle-tasks.html) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) | ![Feature is not supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/cross_retina.png) |
| [Tomcat Server Local](run-debug-configuration-tomcat-server.html) | ![Feature is supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/check_retina_bold_2.png) | ![Feature is not supported](https://resources.jetbrains.com.cn/help/img/idea/2026.2/cross_retina.png) |

These configurations handle the prerequisites for you. If the required configuration is not on the list, you are welcome to create or vote for a request in [our issue tracker](https://youtrack.jetbrains.com/issues/IDEA?q=Subsystem:%20%\7BJava.%20Profiler.%\20CPU%\7D).

For attaching to a process launched outside IntelliJ IDEA, make sure to enable [JMX](https://www.oracle.com/java/technologies/javase/docs-jmx-jsp.html).

## Start the profiling session

You can either start an application with the profiler, or attach to an already running application.

Procedure: Start an app with the profiler

* Press `Alt+Shift+F10` (Windows), `⌃ ⌥ R` (macOS), `⌥ ⇧ F10` (IntelliJ IDEA Classic (macOS)), `⌃ ⌥ R` (macOS System Shortcuts), `Alt+Shift+F10` (XWin), `Alt+Shift+F10` (GNOME), `Alt+Shift+F10` (KDE), `Alt+Shift+F10` (Emacs), `Alt+Shift+F10` (Sublime Text), `⌃ ⌥ R` (Sublime Text (macOS)), `Alt+Shift+F10` (NetBeans), `Ctrl+Alt+Shift+R` (Visual Studio), `⌘ ⌥ ⇧ R` (Visual Studio (macOS)), `Alt+Shift+F10` (Eclipse), `⌃ ⌥ R` (Eclipse (macOS)), select the run/debug configuration you want to profile, then select Profile with IntelliJ Profiler from the menu.

![Selecting Profile from the Run popup](https://resources.jetbrains.com.cn/help/img/idea/2026.2/profile-rc.png)

* Alternatively, click the Run icon in the gutter. From the menu, select Profile with IntelliJ Profiler.

![A menu with the Profile option appears upon clicking the Run gutter icon](https://resources.jetbrains.com.cn/help/img/idea/2026.2/intellij-profiler-gutter.png)

You can also profile applications that were launched in debug mode. For this, start the debugging session first, then [attach the profiler](#attach) to the running process.

Procedure: Attach to a launched run configuration

* If the process you want to profile is launched through IntelliJ Profiler run configuration, go to the respective tab in the Run or Services tool window, then click `Profile the process | Attach Profiler | IntelliJ Profiler`.

![attach-from-run-tw.png](https://resources.jetbrains.com.cn/help/img/idea/2026.2/attach-from-run-tw.png)

Procedure: Attach to an arbitrary process

You can also attach the profiler to an arbitrary Java/Kotlin process running on your system.

1. With the process already launched, open the  Profiler  tool window.

2. On the Home tab, find the process that you are going to profile. Right-click it, then select Attach IntelliJ Profiler

![A menu appears on right-clicking a process allowing you to attach the profiler to it](https://resources.jetbrains.com.cn/help/img/idea/2026.2/attach-from-home-page.png)

The profiler will detach and save the snapshot automatically when the process terminates. Otherwise, if you want to leave the process running and only detach the profiler, you can do that manually.

Procedure: Stop the profiling session

* In the Profiler tool window, navigate to the tab that has opened for the process you are profiling and click Stop Profiling and Show Results.

![Stop Profiling and Show Results button in the Profiler tool window](https://resources.jetbrains.com.cn/help/img/idea/2026.2/stop-profiling.png)

## Open snapshots

The snapshot will open right away. Also, if you want to access it later, you can find it on the Home tab of the Profiler tool window. From this tab, you can view the recent snapshots or open snapshots that are stored elsewhere on your hard drive.

![The Recent Snapshots panel in the Profiler tool window](https://resources.jetbrains.com.cn/help/img/idea/2026.2/recent-snapshots.png)

By default, the snapshots are stored in the user home directory. If you prefer another location, you can change that.

Procedure: Change the snapshots location

1. Open the Profiler tool window (`View | Tool Windows | Profiler`).

2. On the  Home  tab, click More, then select  Change Snapshots' Folder… .

![Change Snapshot Folder item in the More menu](https://resources.jetbrains.com.cn/help/img/idea/2026.2/change-snapshot-folder.png)

## Native profiling

By default IntelliJ Profiler only collects Java stack traces, but it can also collect native call data. This is useful for cases when you need to look into JNI calls, garbage collection, JIT compiler operation, and so on.

Procedure: Include native samples in the snapshot

* Press `Ctrl+Alt+S` (Windows), `⌘ Comma` (macOS), `⌘ Comma` (IntelliJ IDEA Classic (macOS)), `⌘ Comma` (macOS System Shortcuts), `Ctrl+Alt+S` (XWin), `Ctrl+Alt+S` (GNOME), `Ctrl+Alt+S` (KDE), `Ctrl+Alt+S` (Emacs), `Ctrl+Alt+S` (Sublime Text), `⌘ Comma` (Sublime Text (macOS)), `Ctrl+Alt+S` (NetBeans), `Ctrl+Alt+S` (Visual Studio), `⌘ Comma` (Visual Studio (macOS)), `Ctrl+Alt+S` (Eclipse), `⌘ Comma` (Eclipse (macOS)) to open settings and then select `Build, Execution, Deployment | Java Profiler`.  Select the Collect native calls checkbox.

