Tuesday, 18 December 2012

Сборка perf top для CentOS или Debian

Сборка (CentOS 6) весьма проста:
cd /usr/src
wget https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.16.tar.xz
tar -xf linux-4.16.tar.xz
cd linux-4.16/tools/perf
yum install -y gcc glibc-devel elfutils-devel make binutils-devel glibc-static flex bison  libunwind  audit-libs-devel libunwind-devel numactl-devel  python-devel slang-devel perl-ExtUtils-Embed libdwarf-devel
make
cp perf /opt

Если будет выдана ошибка:
No gnu/libc-version.h found, please install glibc-dev[el]/glibc-static
То фикс Centos такой:
yum install -y elfutils-devel
На Debian:
apt-get install -y libelf-dev 

Запускаем:
/opt/perf  top
Выдача будет иметь примерно следующий вид:
------------------------------------------------------------------------------
   PerfTop:     323 irqs/sec  kernel:44.9% [100000 cycles],  (all, 12 CPUs)
------------------------------------------------------------------------------
             samples    pcnt   kernel function
             _______   _____   _______________
              878.00 -  9.2% : __d_lookup
              760.00 -  8.0% : read_hpet
              620.00 -  6.5% : __link_path_walk
              409.00 -  4.3% : intel_idle
              282.00 -  3.0% : _spin_lock
              254.00 -  2.7% : _atomic_dec_and_lock
              222.00 -  2.3% : acl_permission_check
              157.00 -  1.7% : ext4_htree_store_dirent [ext4]
              147.00 -  1.5% : kmem_cache_alloc
              138.00 -  1.5% : strncpy_from_user
              138.00 -  1.5% : copy_user_generic_string
              131.00 -  1.4% : __audit_syscall_exit
              123.00 -  1.3% : security_inode_getattr
              122.00 -  1.3% : half_md4_transform
              119.00 -  1.3% : path_init

Для ленивых (себя в первую очередь)  собрал бинарик (точно работает на Centos6): https://fastvps.googlecode.com/svn/trunk/other/linux_kernel_perf_tool/perf

No comments:

Post a Comment

Note: only a member of this blog may post a comment.