performance-go

Profile Go applications with pprof to identify and resolve performance bottlenecks.

Updated Feb 1, 2026
One-click install
npx skills add https://github.com/jralph/.config-opencode --skill performance-go
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: performance-go
Source: https://github.com/jralph/.config-opencode/tree/main/skills/performance-go
Command: npx skills add https://github.com/jralph/.config-opencode --skill performance-go

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Go performance can be opaque; developers struggle to identify CPU hot spots, memory bloat, and suboptimal concurrency in Go applications.

Core Features & Use Cases

  • CPU profiling with pprof to locate hot paths and optimize CPU-bound code.
  • Memory profiling to analyze allocations and reduce heap pressure.
  • Concurrency guidance and benchmarking to improve throughput and latency.
  • Real-world use case: optimize a REST API by reducing allocations and improving request latency.

Quick Start

Enable CPU profiling in your Go application, run representative workloads, collect profiles with go tool pprof, and iteratively apply optimizations while re-profiling to verify gains.

Frequently Asked Questions about performance-go

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I find CPU hot spots and memory bloat in a Go application?

You can identify CPU hot spots and memory bloat in a Go application by collecting traces with the standard pprof tool to analyze allocations and locate performance bottlenecks.

What's the best way to reduce heap allocations and improve latency in a Go REST API?

The best way to reduce heap allocations and improve latency in a Go REST API is to use memory profiling to analyze allocations, then iteratively apply safe performance improvements while re-profiling.

Does Go concurrency tuning require a specific toolchain to benchmark throughput?

Go concurrency tuning and benchmarking require the standard Go toolchain and pprof to collect traces, analyze allocations, and implement safe performance improvements for better throughput.

How do I start profiling a Go microservice to identify bottlenecks?

To start profiling a Go microservice, enable CPU profiling in your application, run representative workloads, collect profiles with go tool pprof, and iteratively apply optimizations to resolve bottlenecks.

When should I re-profile my Go application after applying concurrency tuning?

You should re-profile your Go application after applying concurrency tuning to verify performance gains, ensuring the changes effectively reduced latency and improved throughput without introducing new bottlenecks.