# perforator
**Repository Path**: mirrors_trending/perforator
## Basic Information
- **Project Name**: perforator
- **Description**: Perforator is a cluster-wide continuous profiling tool designed for large data centers
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2025-02-16
- **Last Updated**: 2025-09-13
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README

[](https://github.com/yandex/perforator/blob/main/LICENSE)
[](https://github.com/yandex/perforator/tree/main/perforator/agent/collector/progs/unwinder/LICENSE)
[](https://t.me/perforator_ru)
[](https://t.me/perforator_en)
# Perforator
[Documentation](https://perforator.tech/docs/) | [Post on Medium](https://medium.com/yandex/yandexs-high-performance-profiler-is-now-open-source-95e291df9d18) | [Post on Habr](https://habr.com/ru/companies/yandex/articles/875070)
Perforator is a production-ready, open-source Continuous Profiling app that can collect CPU profiles from your production without affecting its performance, made by Yandex and inspired by [Google-Wide Profiling](https://research.google/pubs/google-wide-profiling-a-continuous-profiling-infrastructure-for-data-centers/). Perforator is deployed on tens of thousands of servers in Yandex and already has helped many developers to fix performance issues in their services.
## Main features
- Efficient and high-quality collection of kernel + userspace stacks via eBPF.
- Scalable storage for storing profiles and binaries.
- Support of unwinding without frame pointers and debug symbols on host.
- Convenient query language and UI to inspect CPU usage of applications via flamegraphs.
- Support for C++, C, Go, and Rust, with experimental support for Java and Python.
- Generation of sPGO profiles for building applications with Profile Guided Optimization (PGO) via [AutoFDO](https://github.com/google/autofdo).
## Minimal system requirements
Perforator runs on x86 64-bit Linux platforms consuming 512Mb of RAM (more on very large hosts with many CPUs) and <1% of host CPUs.
## Quick start
You can profile your laptop using local [perforator record CLI command](https://perforator.tech/docs/en/tutorials/native-profiling).
You can also deploy Perforator on playground/production Kubernetes cluster using our [Helm chart](https://perforator.tech/docs/en/tutorials/kubernetes/helm-chart).
## How to build
- Instructions on how to build from source are located [here](https://perforator.tech/docs/en/guides/build).
- If you want to use prebuilt binaries, you can find them [here](https://github.com/yandex/perforator/releases).
## How to Contribute
We are welcome to contributions! The [contributor's guide](CONTRIBUTING.md) provides more details on how to get started as a contributor.
## License
This project is licensed under the Apache 2.0 License (Apache-2.0). [Apache 2.0 License](https://github.com/yandex/perforator/tree/main/LICENSE)
NB: Formerly, we licensed Perforator under MIT license. We switched to Apache 2.0 to waive custom CLA signature requirements and simplify contributions.
The eBPF source code is licensed under the GPL 2.0 license. [GPL 2.0](https://github.com/yandex/perforator/tree/main/perforator/agent/collector/progs/unwinder/LICENSE)