A powerful performance analysis plugin that brings go tool pprof directly into your IDE. Visualize, analyze, and optimize your Go applications without leaving GoLand or IntelliJ IDEA.
A powerful performance analysis plugin that brings go tool pprof directly into your IDE.
Visualize, analyze, and optimize your Go applications without leaving GoLand or IntelliJ IDEA.
- 🎯 Smart Run Configurations - One-click profiling with multiple collection modes (Runtime, HTTP, Manual, Instrumentation)
- 📊 Rich Visualizations - 7 visualization types including interactive web UI, flame graphs, call graphs, and more
- 🔍 Code Navigation - Jump from performance data to source code with inlay hints and heatmap visualization
- 🛠️ Integrated Tool Windows - View analysis results directly in your IDE
- ⚡ Multiple Profile Types - CPU, Memory, Goroutine, Block, Mutex, and Allocs profiling
- Inlay Hints - Display performance metrics (flat/cum) directly in your code editor
- Heatmap - Visual treemap of Top 20 functions with color-coded hotspots
- Context Menu - Right-click any pprof file to visualize instantly
- Auto-open Results - Visualization opens automatically after profiling completes
- Create a new pprof run configuration
- Select your collection mode and profile type
- Click Run and watch the magic happen
- Explore interactive visualizations and jump to code
- GoLand 2025.2+ or IntelliJ IDEA 2025.2+ (with Go plugin)
- Go 1.16+
- JVM 21+
Made with ❤️ for Go developers
GitHub | Report Issues | Changelog
English | 简体中文
Configure profiling with multiple collection modes, profile types, and flexible parameters.
Display flat and cum performance data directly at the end of code lines with color-coded hotspot indicators.
Interactive treemap showing Top 20 functions' performance distribution with color intensity representing hotspot levels.
Hover over functions to see detailed performance information including flat%, cum%, and call relationships.
Detailed performance data visualization with multiple analysis perspectives.
- Smart Run Configuration: Supports file, directory, and package run modes
- Responsive Auto-fill: Automatically fills configuration options based on project structure
- Multiple Collection Modes:
- Runtime Sampling
- HTTP Server
- Manual Collection
- Compile-time Instrumentation
- Multiple Profile Types: CPU, Heap, Goroutine, Block, Mutex, Allocs
- Flexible Configuration: Working directory, program arguments, environment variables, Go build flags
- 7 Visualization Types:
- 🌐 Web Browser (Interactive UI)
- 📝 Text Report
- 📋 Function List
- ℹ️ Brief Info
- Context Menu Integration: Visualize pprof files directly from context menu
- Auto-open: Automatically opens visualization results after run configuration completes
- Real-time Notifications: Instant feedback on operation status
- Inlay Hints: Display flat and cum data at the end of code lines
- Heatmap: Treemap visualization of Top 20 functions' performance distribution
- Smart Jump: Jump directly from charts to source code
- Color Coding: Automatically selects colors based on hotspot intensity
- pprof Output: Displays text output results
- Integrated Terminal: View detailed performance analysis data
- Open GoLand/IntelliJ IDEA
- Go to
Settings/Preferences→Plugins→Marketplace - Search for "pprofview"
- Click
Install
- Download the latest release from Releases
- Go to
Settings/Preferences→Plugins→⚙️→Install Plugin from Disk... - Select the downloaded ZIP file
- Click
Run→Edit Configurations... - Click
+→pprof - Configure run parameters:
- Select run kind (File/Directory/Package)
- Select collection mode
- Select profile type
- Configure sampling parameters
- Click the run button
- Wait for program execution and data collection
- Visualization results open automatically
- Context Menu: Right-click on pprof file in project view or editor →
Visualize with go tool pprof - Select Visualization Type: Web, Text, Call Graph, Flame Graph, etc.
- View Results: View in browser or tool window
- Click on function name in chart
- Automatically jump to source code
- View inlay hints with performance data
package main
import (
"fmt"
"runtime/pprof"
"os"
)
func main() {
// CPU profiling
f, _ := os.Create("cpu.pprof")
pprof.StartCPUProfile(f)
defer pprof.StopCPUProfile()
// Your code here
fibonacci(40)
}
func fibonacci(n int) int {
if n <= 1 {
return n
}
return fibonacci(n-1) + fibonacci(n-2)
}package main
import (
_ "net/http/pprof"
"net/http"
)
func main() {
go func() {
http.ListenAndServe("localhost:6060", nil)
}()
// Your application code
}- Display flat and cum data at the end of code lines
- Use different colors based on hotspot intensity
- Support for light and dark themes
- Rectangle area represents performance ratio
- Color intensity represents hotspot level
- Display Top 20 functions
- Hover to show detailed information
- Click to jump to code
- IDE: GoLand 2025.2+ or IntelliJ IDEA 2025.2+ (with Go plugin)
- Go: 1.16+
- JVM: 21+
- OS: Windows, macOS, Linux
./gradlew buildPlugin./gradlew test./gradlew runIdeContributions are welcome! Please check the Contributing Guide.
This project is licensed under the MIT License - see the LICENSE file for details.
For questions or suggestions, please contact us through GitHub Issues.
Made with ❤️ for Go developers




