2013-08-16 2 views
0

베어 메탈 프로그램이 ARM-Cortex A9 프로세서의 코어에서 구현되었습니다. 프로그램은 2 개의 인터럽트를 처리합니다. 이제는이 CPU의 효율성을 측정하고 싶습니다. CPU가 유휴 상태 일 때까지의 CPU 유휴 시간의 비율 일 수 있습니다. 내 측정을 위해 zedboard (zynq 7000 시리즈)를 사용하고 있습니다.베어 메탈 ARM Cortex A9 시스템의 CPU 효율 측정

코어에서 실행중인 운영 체제가 없기 때문에 이제 CPU 효율성을 얻는 방법을 알고 있습니다.

건배, S는

답변

0

첫째로, 당신은 당신이 유휴 무슨 뜻인지 정의해야합니다. 그리고 그 정의는 당신의 질문에 대한 답입니다.

예를 들어, 모든 작업이 인터럽트에 있고 포어 그라운드 작업이 정의에 따라 프로세서가 유휴 상태 일 때 그 작업을 측정하거나 최소한 상대적으로 측정 할 수 있습니다. 예를 들어 포어 그라운드 작업을 수행하고 타이머를 계산하고 폴링하는 루프의 카운터를 가질 수 있으며 타이머 틱의 일부 X 갯수마다 카운트 (루프)가 완료된 횟수를 볼 수 있습니다. 카운트가 적을수록 인터럽트가 발생한 시간이 많을수록 인터럽트가 발생한 시간이 더 적음을 의미합니다.

유휴 상태를 정의한 후에는 유휴 코드를 사용하고 유휴 상태에서 머무는 시간과 사용하지 않은 시간을 측정하기 만하면됩니다. 다른 모든 작업을 수행 한 상태에서 실험을하고 측정 막대기를 사용하여 다른 작업을 수행하지 않고 수행 할 수있는 작업이 무엇인지 확인하여 다른 작업이 실행 중일 때 10 % 또는 50 % 또는 그 이상이라고 말할 수 있습니다.

관련 문제