Google Cloud Profiler vs Parca
Google Cloud Profiler
cloud.google.comParca
parca.devSide by side
| Figure | Google Cloud Profiler | Parca |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | Yes | Yes |
| Linux | Yes | Yes |
| API | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Profiling Software | 7.8 (#13) | 8.2 (#6) |
| Spec score · Continuous Profiling Tools | 7.6 (#15) | 8.1 (#12) |
| Security | Cloud Profiler is a VPC Service Controls supported service. | The project says the Agent source is open source, it is written in Go, and its binaries and container images are fully reproducible; the Agent needs privileged access to load eBPF programs. |
Plans
In their own words
Google Cloud Profiler
Google Cloud Profiler is a free sampling profiler for examining resource use in production applications. Its profiling agent gathers CPU usage and memory allocation data and attributes that information to source code. A Google Cloud console displays and analyzes the collected profiles. Supported languages are Go, Java, Node.js, and Python, with profile types varying by language. Available types include CPU time, heap, allocated heap, contention, threads, and wall time. Deployment options include Compute Engine, Google Kubernetes Engine, App Engine, Managed Service for Apache Spark, Dataflow, and some environments outside Google Cloud, depending on language. The listed operating systems are Linux with glibc and, for some configurations, Linux with musl. Google states that CPU and heap collection overhead is under 5%, commonly under 0.5% when averaged across execution time and service replicas. Profiles are retained for 30 days and can be downloaded for longer storage. Cloud Profiler supports VPC Service Controls; quotas and limits apply.
Parca
Parca is a self-hosted profiling system that collects and stores CPU, memory, I/O, and other profiles for queries over time. Its eBPF-based Parca Agent captures user-space and kernel-space stack traces, while the system also accepts valid pprof-formatted profiles pushed through gRPC or pulled from targets over HTTP. Users can query by labels, compare dimensions such as processes or code versions, and view profiles in the web interface with Icicle Graphs. A Grafana plugin can display profiles stored in Parca. The agent supports automatic profiling for languages including C, C++, Go, Rust, .NET, Deno, Erlang, Java, Julia, Node.js, Wasmtime, PHP, Ruby, and Python. Installation options include binaries, containers, Kubernetes, and Snaps. Parca is open source under the Apache 2 License and is free. The agent requires Linux kernel 4.18 or newer and privileged access to load eBPF programs. Parca says it receives profiling statistics and function-name metadata, not binaries or source code.