Czas pomiaru realizacji w rutynowych

T

tom12sg

Guest
Cześć,

Każdy pomysł, jak można zmierzyć czas wykonywania rutynowych napisany w języku C pod kompilator Keil?
W sekcji cel można określić częstotliwość zegara używany i konkretnych MCU być użyte.
Zgodnie z debugera widzę dis zmontowane kod, ale byłoby stratą czasu i bardzo opona do obliczenia linia po linii, a także niektóre mają inny cykl realizacji.I próbować analizator wydajności, ale nie dał mi taką czas trwania cyklu ...może ja nie rozumiem, jak z niego korzystać.Myślę, Keil powinna mieć jakiś sposób obliczania nie jest, proszę kogoś uczyć i doradztwo mnie.

Dzięki.

Pozdrowienia,
Tom

 
Może użyć timera?Nie wiem co chip, którego używasz, ale jeśli chodzi o C, myślę, że jest to prosta metoda.Lub skorzystaj z symulatora, jeśli Keil ma takiej rzeczy.Pamiętam, że Hi-Tech Hi-TIDE mogłyby być użyte do robienie tego z pics.

 
Tom12sg Hi,

Jeśli chcesz (może), należy użyć kodu PIN do mesure okres rutynowych / funkcji.

Wiwaty!

 
Myślę, że należy użyć analizatora wydajności.Daje max, min i średni czas egzekucji.

Innym rozwiązaniem (nie tak dobry) jest wykorzystanie pułapki, przed i po wywołaniu funkcji.Następnie należy anotate członkowskim i substration.

Pozdrowienia,

 
nex napisał:

Tom12sg Hi,Jeśli chcesz (może), należy użyć kodu PIN do mesure okres rutynowych / funkcji.Wiwaty!
 
Niektóre firmy montujące mają możliwość Ilość cykli.Być może twój nie zbyt.

Albo można znaleźć jeden i paszy segmentu kodu, który Cię interesuje

W przypadku niektórych rodzin mikroprocesorów (jak te z prefetches lub rurociągów) nie jest to dobry wskaźnik rzeczywisty czas realizacji.

Przerwania, DMA innych bus-mastering urządzeń (może nawet zintegrowany debug, musiałbym sprawdzić) może ukraść cykli w realizowaniu gdy urządzenia z regulacją zegary mogą mieć szalenie zróżnicowane okresy realizacji nawet bez cyklu kradzież.

 

Welcome to EDABoard.com

Sponsor

Back
Top