GNU gprof vs Google Cloud Profiler
GNU gprof
sourceware.orgGoogle Cloud Profiler
cloud.google.comSide by side
| Figure | GNU gprof | Google Cloud Profiler |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | — | Yes |
| Linux | Yes | Yes |
| API | — | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Profiling Software | 7.8 (#12) | 7.8 (#13) |
| Purpose | GNU gprof analyzes profiling data to show which parts of a program take the most execution time. | Cloud Profiler continuously gathers CPU usage and memory allocation information from production applications and attributes it to source code to help identify resource-intensive code. |
Plans
In their own words
GNU gprof
GNU gprof has no write-up on Specifiction yet; its figures are above.
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.