perf_to_profile

将 Linux perf 文件转换为 pprof 使用的 profile.proto 格式的工具。「Tool to convert Linux perf files to the profile.proto format used by pprof」

  • Owner: google/perf_data_converter
  • Platform: Linux
  • License:: BSD 3-Clause "New" or "Revised" License
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

Introduction

The perf_to_profile binary can be used to turn a perf.data file, which is
generated by the linux profiler, perf, into a profile.proto file which can be
visualized using the tool pprof.

For details on pprof, see https://github.com/google/pprof

THIS IS NOT AN OFFICIAL GOOGLE PRODUCT

Prerequisites to build

  • Install dependencies

    sudo apt-get -y install g++ git libelf-dev libcap-dev
    

Compile and Test

To install all dependences and build the binary, run the following commands.
These were tested on Ubuntu 14.04 LTS:

Compile

  • Install bazel by following the instructions here.

  • Install dependencies and build perf_to_profile using bazel

    git clone https://github.com/google/perf_data_converter.git
    cd perf_data_converter
    bazel build src:perf_to_profile
    

Place the perf_to_profile binary in a place accessible from your PATH (e.g. /usr/local/bin).

Running tests

  • There are a small number of tests that verify the basic functionality.
    To run these, after successful compilation, run:

    bazel test src:all
    bazel test src/quipper:all
    

Note: Executables generated using bazel build are available under the
directory bazel-bin/.

Usage

  • Profile a command using perf, for example:

    perf record /bin/ls
    
  • Recent versions of pprof will automatically invoke perf_to_profile:

    pprof -web perf.data
    

Contribution

We appreciate your help!

Note that perf data converter and quipper projects do not use GitHub pull
requests, and that we use the issue tracker for bug reports.

Main metrics

Overview
Name With Ownergoogle/perf_data_converter
Primary LanguageC++
Program languageC++ (Language Count: 4)
Platform
License:BSD 3-Clause "New" or "Revised" License
所有者活动
Created At2016-09-21 20:00:54
Pushed At2025-06-09 19:49:07
Last Commit At2025-06-09 12:41:11
Release Count0
用户参与
Stargazers Count319
Watchers Count31
Fork Count61
Commits Count265
Has Issues Enabled
Issues Count32
Issue Open Count12
Pull Requests Count117
Pull Requests Open Count0
Pull Requests Close Count33
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private