4.1 커널 및 버전 4.1의 perf
도구로 데비안 테스트를 실행하고 있습니다. 이 버전에서는 일반 사용자가 해당 도구에서 데이터를 수집하지 못하도록 보호 기능을 추가 한 것으로 보입니다. 따라서 perf
일반 사용자로 실행 하면 다음 오류가 발생합니다.
perf stat ls
Error:
You may not have permission to collect stats.
Consider tweaking /proc/sys/kernel/perf_event_paranoid:
-1 - Not paranoid at all
0 - Disallow raw tracepoint access for unpriv
1 - Disallow cpu events for unpriv
2 - Disallow kernel profiling for unpriv
perf_event_paranoid
내 설치에 3이 들어 있습니다. 불행히도 루트로도 해당 파일을 변경할 수 없습니다. 내 사용자가 perf
sudo 권한없이 사용하도록하려면 어떻게해야합니까?
루트가 필요없는 벤치 마크하려는 응용 프로그램이 있으며 벤치 마크하기 위해 루트로 실행하고 싶지 않습니다.
@osgx : 편집증 수준 3의 경우 귀하의 제안이 효과가 없지만 여전히 사용할 수 없습니다.
—
마틴 우딩
perf stat -e cycles:u
작업? "3"값은perf_event_paranoid
2016 lwn.net/Articles/696216 "perf_event_open () 허용 안함 " 에 추가 되었으며 "Android 및 Debian"( lkml.org/lkml/2016/1/11/587 bugs.launchpad) 에서 활성화되었습니다 . net / bugs / 1612790 debian.org/security/2017/dsa-3791 )