strace
나는 CPU가 사용하는 명령을 산출하는 것과 비슷한 것을 찾기를 바라고 있습니다 . 예를 들어, 합계를 계산하고 매 10번째 반복을 인쇄하는 간단한 루프가 있습니다.
float fsum = 0.0;
for(int i = 0; i < 1000; i++) {
if(i%10==0) {
fprintf(stderr, "%10.5f%%\n", 100.0*float(i)/float(1000));
}
fsum += 1.0/float(i);
}
이제 문은 문이므로 문 strace
에 대한 정보를 제공 하지만 합계 단계에 대한 정보는 제공하지 않습니다. 사용된 CPU 명령을 포함하여 현재 실행 중인 프로그램에 대한 정보를 얻으려는 경우 이를 수행할 수 있는 방법이 있습니까?fprintf
write(2
gprof
참고: 사전 컴파일이 필요한 도구에 대해 알고 있습니다 . 나는 gprof
프로파일링을 염두에 두고 컴파일되었거나 컴파일되지 않았을 수 있는 현재 실행 중인 프로그램을 사용하여 귀하에게 제공할 수 있는 동일한 정보를 찾는 방법을 찾고 있습니다 .